Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::drop_view< Rng > Struct Template Reference
+ Inheritance diagram for ranges::drop_view< Rng >:

Public Member Functions

Rng base () const
 
iterator_t< Rng > begin ()
 
template<bool Const = true>
requires Const
&&random_access_range< meta::const_if_c< Const, Rng > > iterator_t< meta::const_if_c< Const, Rng > > begin () const
 
 drop_view (Rng rng, difference_type_ n)
 
sentinel_t< Rng > end ()
 
template<bool Const = true>
requires Const
&&random_access_range< meta::const_if_c< Const, Rng > > sentinel_t< meta::const_if_c< Const, Rng > > end () const
 
auto size ()
 
auto size () const
 
- Public Member Functions inherited from ranges::view_interface< drop_view< Rng >, is_finite< Rng >::value ? finite :range_cardinality< Rng >::value >
constexpr auto empty () const noexcept -> bool
 Test whether a range can be empty:
 
&&!detail ::has_fixed_size_< Cardinality > &&forward_range< D< True > const > constexpr bool empty () const noexcept(noexcept(bool(ranges::begin(std::declval< D< True > const & >())==ranges::end(std::declval< D< True > const & >()))))
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
&&Cardinality< 0) &&(Cardinality !=infinite) &&(!forward_range< D< True > >) &&sized_range< D< True > > constexpr bool empty() noexcept(noexcept(bool(ranges::size(std::declval< D< True > & >())==0))) { return ranges::size(derived())==0;} template< bool True=true > &&Cardinality< 0) &&(Cardinality !=infinite) &&(!forward_range< D< True > const >) &&sized_range< D< True > const > constexpr bool empty() const noexcept(noexcept(bool(ranges::size(std::declval< D< True > const & >())==0))) { return ranges::size(derived())==0;} template< bool True=true > &&!detail ::has_fixed_size_< Cardinality > &&forward_range< D< True > > constexpr bool empty () noexcept(noexcept(bool(ranges::begin(std::declval< D< True > & >())==ranges::end(std::declval< D< True > & >()))))
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
&&detail::can_empty_< D< True > const > constexpr operator bool () const noexcept(noexcept(ranges::empty(std::declval< D< True > const & >())))
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
&&detail::can_empty_< D< True > > constexpr operator bool () noexcept(noexcept(ranges::empty(std::declval< D< True > & >())))
 
view_interfaceoperator= (view_interface &&)=default
 
view_interfaceoperator= (view_interface const &)=default
 
 view_interface (view_interface &&)=default
 
 view_interface (view_interface const &)=default
 

Additional Inherited Members

- Protected Types inherited from ranges::view_interface< drop_view< Rng >, is_finite< Rng >::value ? finite :range_cardinality< Rng >::value >
using D = meta::invoke< detail::dependent_< B >, drop_view< Rng > >
 
- Protected Member Functions inherited from ranges::view_interface< drop_view< Rng >, is_finite< Rng >::value ? finite :range_cardinality< Rng >::value >
constexpr drop_view< Rng > const & derived () const noexcept
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
constexpr drop_view< Rng > & derived () noexcept