|
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 Rng > |
using | ranges::keys_range_view = transform_view<Rng, detail::get_first> |
|
template<typename I > |
using | ranges::move_into_iterator = basic_iterator<detail::move_into_cursor<I>> |
|
template<typename T > |
using | ranges::readable_traits = indirectly_readable_traits<T> |
|
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 , typename Val1 , typename Val2 > |
using | ranges::replace_view = iter_transform_view<Rng, detail::replacer_fn<Val1, Val2>> |
|
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 T > |
using | ranges::uncvref_t = meta::_t<std::remove_cv<meta::_t<std::remove_reference<T>>>> |
|
template<typename Rng > |
using | ranges::unique_view = adjacent_filter_view<Rng, logical_negate<equal_to>> |
|
template<typename Rng > |
using | ranges::values_view = transform_view<Rng, detail::get_second> |
|