Range-v3
Range algorithms, views, and actions for the Standard Library
transform.hpp File Reference

Classes

struct  ranges::iter_transform2_view< Rng1, Rng2, Fun >
 
struct  ranges::iter_transform_view< Rng, Fun >
 
struct  ranges::transform2_view< Rng1, Rng2, Fun >
 
struct  ranges::transform_view< Rng, Fun >
 
struct  ranges::views::iter_transform_base_fn
 
struct  ranges::views::iter_transform_fn
 
struct  ranges::views::transform_base_fn
 
struct  ranges::views::transform_fn
 

Typedefs

template<typename Rng , typename F >
using ranges::cpp20::transform_view = ranges::transform_view< Rng, F >
 

Functions

template<typename Rng , typename Fun >
 ranges::transform_view (Rng &&, Fun) -> transform_view< views::all_t< Rng >, Fun >
 

Variables

template<typename Rng , typename Fun >
concept ranges::views::transformable_range
 
template<typename Rng , typename Fun >
concept ranges::views::transformable_range__concept_ = regular_invocable<Fun &, range_reference_t<Rng>> && (!std::is_void<indirect_result_t<Fun &, iterator_t<Rng>>>::value)
 
template<typename Rng1 , typename Rng2 , typename Fun >
concept ranges::views::transformable_ranges
 
template<typename Rng1 , typename Rng2 , typename Fun >
concept ranges::views::transformable_ranges__concept_ = regular_invocable<Fun &, range_reference_t<Rng1>, range_reference_t<Rng2>> && (!std::is_void< indirect_result_t<Fun &, iterator_t<Rng1>, iterator_t<Rng2>>>::value)
 

Typedef Documentation

◆ transform_view

template<typename Rng , typename F >
using ranges::cpp20::transform_view = typedef ranges::transform_view<Rng, F>
Precondition
requires input_range<Rng> && copy_constructible<F> && view_<Rng> && std::is_object<F>::value && regular_invocable<F &, iter_reference_t<iterator_t<Rng>>>

Variable Documentation

◆ transformable_range

template<typename Rng , typename Fun >
concept ranges::views::transformable_range
Initial value:
=
viewable_range<Rng> && input_range<Rng> &&
copy_constructible<Fun> &&
views::transformable_range__concept_<Rng, Fun>

◆ transformable_ranges

template<typename Rng1 , typename Rng2 , typename Fun >
concept ranges::views::transformable_ranges
Initial value:
=
viewable_range<Rng1> && input_range<Rng1> &&
viewable_range<Rng2> && input_range<Rng2> &&
copy_constructible<Fun> &&
views::transformable_ranges__concept_<Rng1, Rng2, Fun>