|  | 
| 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 | 
|  |