range_fwd.hpp File Reference

## Classes

struct | ranges::v3::_counted_iterator_::counted_iterator< I, typename >
struct | ranges::v3::action::action< Action >
struct | ranges::v3::adjacent_filter_view< Rng, Pred >
struct | ranges::v3::adjacent_remove_if_view< Rng, Pred >
struct | ranges::v3::basic_common_reference< T, U, TQual, UQual >
| Users can specialize this to hook the `CommonReference` concept. More...
struct | ranges::v3::basic_mixin< T >
struct | ranges::v3::basic_view< cardinality >
struct | ranges::v3::begin_tag
struct | ranges::v3::bind_element< T >
struct | ranges::v3::bounded_view< Rng >
struct | ranges::v3::closed_iota_view< From, To >
| An iota view in a closed range with non-random access iota value type. More...
struct | ranges::v3::common_reference< Ts >
| Users can specialize this to hook the `CommonReference` concept. More...
struct | ranges::v3::common_type< Ts >
| Users should specialize this to hook the `Common` concept until `std` gets a SFINAE-friendly `std::common_type` and there's some sane way to deal with cv and ref qualifiers. More...
struct | ranges::v3::composed< Second, First >
struct | ranges::v3::compressed_pair< First, Second >
struct | ranges::v3::concat_view< Rngs >
struct | ranges::v3::concepts::models< Concept, Ts >
struct | ranges::v3::const_view< Rng >
struct | ranges::v3::copy_tag
struct | ranges::v3::counted_view< I >
struct | ranges::v3::cycled_view< Rng >
struct | ranges::v3::dangling< I >
| A wrapper for an iterator or a sentinel into a range that may no longer be valid. More...
struct | ranges::v3::default_sentinel
struct | ranges::v3::difference_type< T >
struct | ranges::v3::disable_sized_range< T >
struct | ranges::v3::disable_sized_sentinel< S, I >
struct | ranges::v3::empty_view< T >
struct | ranges::v3::enable_view< T >
struct | ranges::v3::end_tag
struct | ranges::v3::filter_view< Rng, Pred >
struct | ranges::v3::group_by_view< Rng, Fun >
struct | ranges::v3::indirect_view< Rng >
struct | ranges::v3::iota_view< From, To >
struct | ranges::v3::is_reference_wrapper< T >
struct | ranges::v3::istream_range< Val >
struct | ranges::v3::iter_take_while_view< Rng, Pred >
struct | ranges::v3::iter_transform_view< Rng, Fun >
struct | ranges::v3::iter_zip_with_view< Fun, Rngs >
struct | ranges::v3::iterator_category< T >
struct | ranges::v3::iterator_range< I, S >
struct | ranges::v3::join_view< Rng, ValRng >
struct | ranges::v3::move_iterator< I >
struct | ranges::v3::move_tag
struct | ranges::v3::move_view< Rng >
struct | ranges::v3::overloaded< Fns >
struct | ranges::v3::partial_sum_view< Rng, Fun >
struct | ranges::v3::pipeable< Derived >
struct | ranges::v3::range_cardinality< Rng, Void >
struct | ranges::v3::reference_wrapper< T >
struct | ranges::v3::repeat_view< Val >
struct | ranges::v3::result_of< Sig, Enable >
struct | ranges::v3::reverse_view< Rng >
struct | ranges::v3::single_view< Val >
struct | ranges::v3::size_type< T >
struct | ranges::v3::sized_iterator_range< I, S >
struct | ranges::v3::slice_view< Rng >
struct | ranges::v3::split_view< Rng, Fun >
struct | ranges::v3::stride_view< Rng >
struct | ranges::v3::take_view< Rng >
struct | ranges::v3::take_while_view< Rng, Pred >
struct | ranges::v3::tokenize_view< Rng, Regex, SubMatchRange >
struct | ranges::v3::transform_view< Rng, Fun >
struct | ranges::v3::unbounded_view< I >
struct | ranges::v3::value_type< T >
struct | ranges::v3::variant<... >
struct | ranges::v3::view::view< View >
struct | ranges::v3::view_adaptor< Derived, BaseRng, Cardinality >
struct | ranges::v3::view_base
struct | ranges::v3::view_facade< Derived, Cardinality >
| A utility for constructing a view from a (derived) type that implements begin and end cursors. More...
struct | ranges::v3::view_interface< Derived, Cardinality >
struct | ranges::v3::zip_view< Rngs >
struct | ranges::v3::zip_with_view< Fun, Rngs >

## Typedefs

template<typename T >
using | ranges::v3::bind_element_t = meta::_t< bind_element< T > >
template<typename I , typename S >
using | ranges::v3::common_iterator_t = meta::if_< std::is_same< I, S >, I, common_iterator< I, S > >
template<typename ... Ts>
using | ranges::v3::common_reference_t = meta::_t< common_reference< Ts... > >
template<typename ... Ts>
using | ranges::v3::common_type_t = meta::_t< common_type< Ts... > >
template<typename Rng >
using | ranges::v3::is_finite = meta::bool_< range_cardinality< Rng >::value >=finite >
template<typename Rng >
using | ranges::v3::is_infinite = meta::bool_< range_cardinality< Rng >::value==infinite >
template<typename Rng >
using | ranges::v3::keys_range_view = transform_view< Rng, detail::get_first >
template<typename I >
using | ranges::v3::move_into_iterator = basic_iterator< detail::move_into_cursor< I > >
template<typename Rng , typename Pred , typename Val >
using | ranges::v3::replace_if_view = iter_transform_view< Rng, detail::replacer_if_fn< Pred, Val > >
template<typename Rng , typename Val1 , typename Val2 >
using | ranges::v3::replace_view = iter_transform_view< Rng, detail::replacer_fn< Val1, Val2 > >
template<typename Sig >
using | ranges::v3::result_of_t = meta::_t< result_of< Sig > >
template<typename I >
using | ranges::v3::reverse_iterator = basic_iterator< detail::reverse_cursor< I > >
template<typename Rng >
using | ranges::v3::take_exactly_view = detail::take_exactly_view_< Rng >
template<typename T >
using | ranges::v3::uncvref_t = meta::_t< std::remove_cv< meta::_t< std::remove_reference< T > >> >
template<typename Rng >
using | ranges::v3::unique_view = adjacent_filter_view< Rng, not_equal_to >
template<typename Rng >
using | ranges::v3::values_view = transform_view< Rng, detail::get_second >

## Enumerations

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

## Functions

template<typename T >
istream_range< T > | ranges::v3::istream (std::istream &sin)