Horizon
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Enumerations | Variables
range_fwd.hpp File Reference
#include <type_traits>
#include <utility>
#include <meta/meta.hpp>
#include <concepts/concepts.hpp>
#include <concepts/compare.hpp>
#include <range/v3/detail/config.hpp>
#include <range/v3/utility/static_const.hpp>
#include <range/v3/version.hpp>
#include <range/v3/detail/prologue.hpp>
#include <range/v3/detail/epilogue.hpp>

Go to the source code of this file.

Classes

struct  ranges::view_base
 
struct  ranges::begin_tag
 
struct  ranges::end_tag
 
struct  ranges::copy_tag
 
struct  ranges::move_tag
 
struct  ranges::basic_view< cardinality >
 

Namespaces

namespace  ranges::views
 

Typedefs

template<typename T >
using ranges::uncvref_t = meta::_t< std::remove_cv< meta::_t< std::remove_reference< T > > > >
 
template<typename Rng >
using ranges::is_finite = meta::bool_< range_cardinality< Rng >::value >=finite >
 
template<typename Rng >
using ranges::is_infinite = meta::bool_< range_cardinality< Rng >::value==infinite >
 
template<typename I >
using ranges::move_into_iterator = basic_iterator< detail::move_into_cursor< I > >
 
template<typename I >
using ranges::reverse_iterator = basic_iterator< detail::reverse_cursor< I > >
 
template<typename Rng >
using ranges::take_exactly_view = detail::take_exactly_view_< Rng >
 
template<typename Rng , typename Val1 , typename Val2 >
using ranges::replace_view = iter_transform_view< Rng, detail::replacer_fn< Val1, Val2 > >
 
template<typename Rng , typename Pred , typename Val >
using ranges::replace_if_view = iter_transform_view< Rng, detail::replacer_if_fn< Pred, Val > >
 
template<typename Rng >
using ranges::unique_view = adjacent_filter_view< Rng, logical_negate< equal_to > >
 
template<typename Rng >
using ranges::keys_range_view = transform_view< Rng, detail::get_first >
 
template<typename Rng >
using ranges::values_view = transform_view< Rng, detail::get_second >
 

Enumerations

enum  cardinality : std::ptrdiff_t { infinite = -3 , unknown = -2 , finite = -1 }
 

Variables

template<typename S , typename I >
RANGES_INLINE_VAR constexpr bool ranges::disable_sized_sentinel = false
 
template<typename R >
RANGES_INLINE_VAR constexpr bool ranges::enable_borrowed_range = false
 
template<typename R >
RANGES_INLINE_VAR constexpr bool ranges::detail::enable_safe_range = enable_borrowed_range<R>
 
template<typename Cur >
struct RANGES_EMPTY_BASES ranges::basic_iterator
 
template<typename I , typename S = I>
struct RANGES_EMPTY_BASES ranges::iterator_range
 
template<typename Rng , typename Pred >
struct RANGES_EMPTY_BASES ranges::adjacent_filter_view
 
template<typename Rng , typename Pred >
struct RANGES_EMPTY_BASES ranges::adjacent_remove_if_view
 
template<typename Rng , bool = (bool)is_infinite<Rng>()>
struct RANGES_EMPTY_BASES ranges::cycled_view
 
template<typename Rng >
struct RANGES_EMPTY_BASES ranges::reverse_view