Open 3D Engine AzCore API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZStd::ranges::subrange< I, S, K, enable_if_t< conjunction_v< bool_constant< input_or_output_iterator< I > >, bool_constant< sentinel_for< S, I > >, bool_constant<(K==subrange_kind::sized||!sized_sentinel_for< S, I >)> > > > Class Template Reference

Inherits AZStd::ranges::view_interface< subrange< I, S, K > >.

Public Member Functions

template<class I2 , class = enable_if_t<Internal::convertible_to_non_slicing<I2, I> && !StoreSize>>
constexpr subrange (I2 i, S s)
 
template<class I2 , class = enable_if_t<Internal::convertible_to_non_slicing<I2, I> && K == subrange_kind::sized>>
constexpr subrange (I2 i, S s, make_unsigned_t< iter_difference_t< I > > n)
 
template<class R >
constexpr subrange (R &&r)
 
template<class R , class = enable_if_t<conjunction_v< bool_constant<borrowed_range<R>>, bool_constant<Internal::convertible_to_non_slicing<iterator_t<R>, I>>, bool_constant<convertible_to<sentinel_t<R>, S>>, bool_constant<(K == subrange_kind::sized)>> >>
constexpr subrange (R &&r, make_unsigned_t< iter_difference_t< I > > n)
 
template<class PairLike , class = enable_if_t<conjunction_v< bool_constant<Internal::different_from<PairLike, subrange>>, bool_constant<Internal::pair_like_convertible_from<PairLike, const I&, const S&>>> >>
constexpr operator PairLike () const
 
template<bool Enable = copyable<I>, class = enable_if_t<Enable>>
constexpr I begin () const
 
template<bool Enable = !copyable<I>, class = enable_if_t<Enable>>
constexpr I begin ()
 
constexpr S end () const
 
constexpr bool empty () const
 
template<bool Enable = (K == subrange_kind::sized), class = enable_if_t<Enable>>
constexpr make_unsigned_t< iter_difference_t< I > > size () const
 
template<bool Enable = forward_iterator<I>, class = enable_if_t<Enable>>
constexpr subrange next (iter_difference_t< I > n=1) const &
 
constexpr subrange next (iter_difference_t< I > n=1) &&
 
template<bool Enable = bidirectional_iterator<I>, class = enable_if_t<Enable>>
constexpr subrange prev (iter_difference_t< I > n=1) const
 
constexpr subrangeadvance (iter_difference_t< I > n)
 

The documentation for this class was generated from the following file: