Horizon
Typedefs | Functions | Variables
ranges::cpp20 Namespace Reference

Typedefs

template<typename T , typename Char = char, typename Traits = std::char_traits<Char>>
using ostream_iterator = ranges::ostream_iterator< T, Char, Traits >
 
template<typename T >
using incrementable_traits = ranges::incrementable_traits< T >
 
template<typename T >
using indirectly_readable_traits = ranges::indirectly_readable_traits< T >
 
using instead = borrowed_iterator_t< Rng >
 
using drop_while_view = ranges::drop_while_view< Rng, Pred >
 
using filter_view = ranges::filter_view< V, Pred >
 
template<typename Val >
using basic_istream_view = ::ranges::istream_view< Val >
 
using take_while_view = ranges::take_while_view< Rng, Pred >
 

Functions

 template (typename Rng)(requires view_< Rng > &&(!common_range< Rng >)) using common_view
 
 template (typename Rng)(requires view_< Rng >) using drop_view = ranges::join_view<Rng>
 
 template (typename Rng, typename Pred)(requires viewable_range< Rng > AND input_range< Rng > AND indirect_unary_predicate< Pred
 
 template (typename V, typename Pred)(requires input_range< V > AND indirect_unary_predicate< Pred
 
 template (typename Rng, typename Pattern)(requires input_range< Rng > AND forward_range< Pattern > AND view_< Rng > AND view_< Pattern > AND indirectly_comparable< iterator_t< Rng >
 
 template (typename I, typename S=I, subrange_kind K=static_cast< subrange_kind >(detail::is_sized_sentinel_< S, I >()))(requires input_or_output_iterator< I > AND sentinel_for< S
 
AND (K==subrange_kind::sized||!sized_sentinel_for< S, I >)) using subrange
 
 template (typename Rng, typename Pred)(requires viewable_range< Rng > AND input_range< Rng > AND predicate< Pred &
 

Variables

 iterator_t< Pattern >
 
ranges::equal_to AND (forward_range< Rng >||ranges::detail::tiny_range< Pattern >)) using split_view
 

Detailed Description

See also
not_fn_fn
inserter_fn
move_into_fn
distance_compare_fn
Returns
For a given expression E of type T, ranges::size(E) is equivalent to:
  • +extent_v<T> if T is an array type.
  • Otherwise, +E.size() if it is a valid expression and its type I models integral and disable_sized_range<std::remove_cvref_t<T>> is false.
  • Otherwise, +size(E) if it is a valid expression and its type I models integral with overload resolution performed in a context that includes the declaration:
    template<class T> void size(T&&) = delete;
    meta::size_t< L::size()> size
    An integral constant wrapper that is the size of the meta::list L.
    Definition: meta.hpp:1696
    and does not include a declaration of ranges::size, and disable_sized_range<std::remove_cvref_t<T>> is false.
  • Otherwise, static_cast<U>(ranges::end(E) - ranges::begin(E)) where U is std::make_unsigned_t<iter_difference_t<iterator_t<T>>> if iter_difference_t<iterator_t<T>> satisfies integral and iter_difference_t<iterator_t<T>> otherwise; except that E is evaluated once, if it is a valid expression and the types I and S of ranges::begin(E) and ranges::end(E) model sized_sentinel_for<S, I> and forward_iterator<I>.
  • Otherwise, ranges::size(E) is ill-formed.
Parameters
r
Returns
The result of calling ranges::data with a const-qualified (lvalue or rvalue) reference to r.
true if and only if range contains no elements.

Variable Documentation

◆ AND

ranges::equal_to ranges::cpp20::AND(forward_range< Rng >||ranges::detail::tiny_range< Pattern >)) using split_view ( forward_range< Rng >||ranges::detail::tiny_range< Pattern >  )
Initial value: