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

Public Member Functions

template<typename D >
requires integral<D>
constexpr auto operator() (D from, D to) const
 
template<typename D >
requires integral<D>
constexpr auto operator() (D from, detail::from_end_< D > to) const
 
template<typename D >
requires integral<D>
constexpr auto operator() (D from, end_fn const &to) const
 
template<typename D >
requires integral<D>
constexpr auto operator() (detail::from_end_< D > from, detail::from_end_< D > to) const
 
template<typename D >
requires integral<D>
constexpr auto operator() (detail::from_end_< D > from, end_fn const &to) const
 
template<typename Rng , typename I = iterator_t<Rng>>
requires bidirectional_range<Rng> && erasable_range<Rng &, I, I>
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>>
requires bidirectional_range<Rng> && erasable_range<Rng &, I, I>
Rng operator() (Rng &&rng, detail::from_end_< diff_t< Rng > > from, end_fn const &) const
 
template<typename Rng , typename I = iterator_t<Rng>>
requires bidirectional_range<Rng> && erasable_range<Rng &, I, I>
Rng operator() (Rng &&rng, diff_t< Rng > from, detail::from_end_< diff_t< Rng > > to) const
 
template<typename Rng , typename I = iterator_t<Rng>>
requires forward_range<Rng> && erasable_range<Rng &, I, I>
Rng operator() (Rng &&rng, diff_t< Rng > from, diff_t< Rng > to) const
 
template<typename Rng , typename I = iterator_t<Rng>>
requires forward_range<Rng> && erasable_range<Rng &, I, I>
Rng operator() (Rng &&rng, diff_t< Rng > from, end_fn const &) const
 

Related Functions

(Note that these are not member functions.)

constexpr slice_fn slice {}