Horizon
Loading...
Searching...
No Matches
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

Macros

#define ranges::RANGES_DEPRECATED(MSG)

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
 ranges::T
template<typename R>
RANGES_INLINE_VAR constexpr bool ranges::enable_safe_range