Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::actions::slice_fn Struct Reference

Synopsis of methods

constexpr slice_fn slice {}
 

Public Member Functions

template<typename D >
constexpr auto operator() (D from, D to) const
 
template<typename D >
constexpr auto operator() (D from, detail::from_end_< D > to) const
 
template<typename D >
constexpr auto operator() (D from, end_fn const &to) const
 
template<typename D >
constexpr auto operator() (detail::from_end_< D > from, detail::from_end_< D > to) const
 
template<typename D >
constexpr auto operator() (detail::from_end_< D > from, end_fn const &to) const
 
template<typename Rng , typename I = iterator_t<Rng>>
Rng operator() (Rng &&rng, detail::from_end_< diff_t< Rng >> from, detail::from_end_< diff_t< Rng >> to) const
 
template<typename Rng , typename I = iterator_t<Rng>>
Rng operator() (Rng &&rng, detail::from_end_< diff_t< Rng >> from, end_fn const &) const
 
template<typename Rng , typename I = iterator_t<Rng>>
Rng operator() (Rng &&rng, diff_t< Rng > from, detail::from_end_< diff_t< Rng >> to) const
 
template<typename Rng , typename I = iterator_t<Rng>>
Rng operator() (Rng &&rng, diff_t< Rng > from, diff_t< Rng > to) const
 
template<typename Rng , typename I = iterator_t<Rng>>
Rng operator() (Rng &&rng, diff_t< Rng > from, end_fn const &) const
 

Member Function Documentation

◆ operator()() [1/10]

template<typename D >
constexpr auto ranges::actions::slice_fn::operator() ( from,
to 
) const
constexpr
Precondition
requires integral<D>

◆ operator()() [2/10]

template<typename D >
constexpr auto ranges::actions::slice_fn::operator() ( from,
detail::from_end_< D >  to 
) const
constexpr
Precondition
requires integral<D>

References ranges::make_action_closure, and ranges::to().

◆ operator()() [3/10]

template<typename D >
constexpr auto ranges::actions::slice_fn::operator() ( from,
end_fn const &  to 
) const
constexpr
Precondition
requires integral<D>

References ranges::make_action_closure, and ranges::to().

◆ operator()() [4/10]

template<typename D >
constexpr auto ranges::actions::slice_fn::operator() ( detail::from_end_< D >  from,
detail::from_end_< D >  to 
) const
constexpr
Precondition
requires integral<D>

References ranges::make_action_closure, and ranges::to().

◆ operator()() [5/10]

template<typename D >
constexpr auto ranges::actions::slice_fn::operator() ( detail::from_end_< D >  from,
end_fn const &  to 
) const
constexpr
Precondition
requires integral<D>

References ranges::make_action_closure, and ranges::to().

◆ operator()() [6/10]

template<typename Rng , typename I = iterator_t<Rng>>
Rng ranges::actions::slice_fn::operator() ( Rng &&  rng,
detail::from_end_< diff_t< Rng >>  from,
detail::from_end_< diff_t< Rng >>  to 
) const
Precondition
requires bidirectional_range<Rng> && erasable_range<Rng &, I, I>

◆ operator()() [7/10]

template<typename Rng , typename I = iterator_t<Rng>>
Rng ranges::actions::slice_fn::operator() ( Rng &&  rng,
detail::from_end_< diff_t< Rng >>  from,
end_fn const &   
) const
Precondition
requires bidirectional_range<Rng> && erasable_range<Rng &, I, I>

◆ operator()() [8/10]

template<typename Rng , typename I = iterator_t<Rng>>
Rng ranges::actions::slice_fn::operator() ( Rng &&  rng,
diff_t< Rng >  from,
detail::from_end_< diff_t< Rng >>  to 
) const
Precondition
requires bidirectional_range<Rng> && erasable_range<Rng &, I, I>

◆ operator()() [9/10]

template<typename Rng , typename I = iterator_t<Rng>>
Rng ranges::actions::slice_fn::operator() ( Rng &&  rng,
diff_t< Rng >  from,
diff_t< Rng >  to 
) const
Precondition
requires forward_range<Rng> && erasable_range<Rng &, I, I>

References ranges::make_action_closure, and ranges::to().

◆ operator()() [10/10]

template<typename Rng , typename I = iterator_t<Rng>>
Rng ranges::actions::slice_fn::operator() ( Rng &&  rng,
diff_t< Rng >  from,
end_fn const &   
) const
Precondition
requires forward_range<Rng> && erasable_range<Rng &, I, I>