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

Public Member Functions

template<typename Rng , typename T , requires = (Range<Rng>() && Constructible<range_value_t<Rng>, T &&>())>
auto operator() (Rng &&rng, T &&t) const -> decltype(insert(std::forward< Rng >(rng), std::forward< T >(t)))
 
template<typename Rng , typename Rng2 , requires = (Range<Rng>() && Range<Rng2>())>
auto operator() (Rng &&rng, Rng2 &&rng2) const -> decltype(insert(std::forward< Rng >(rng), std::forward< Rng2 >(rng2)))
 
template<typename Rng , typename T , requires = (Range<Rng>())>
auto operator() (Rng &&rng, std::initializer_list< T > rng2) const -> decltype(insert(std::forward< Rng >(rng), rng2))
 
template<typename Rng , typename I , typename S , requires = (Range<Rng>() && Sentinel<S, I>())>
auto operator() (Rng &&rng, I i, S j) const -> decltype(insert(std::forward< Rng >(rng), i, j))
 
template<typename Rng , typename I , typename T , requires = (Range<Rng>() && Iterator<I>() && Constructible<range_value_t<Rng>, T &&>())>
auto operator() (Rng &&rng, I p, T &&t) const -> decltype(insert(std::forward< Rng >(rng), p, std::forward< T >(t)))
 
template<typename Rng , typename I , typename Rng2 , requires = (Range<Rng>() && Iterator<I>() && Range<Rng2>())>
auto operator() (Rng &&rng, I p, Rng2 &&rng2) const -> decltype(insert(std::forward< Rng >(rng), p, std::forward< Rng2 >(rng2)))
 
template<typename Rng , typename I , typename T , requires = (Range<Rng>() && Iterator<I>())>
auto operator() (Rng &&rng, I p, std::initializer_list< T > rng2) const -> decltype(insert(std::forward< Rng >(rng), p, rng2))
 
template<typename Rng , typename I , typename N , typename T , requires = (Range<Rng>() && Iterator<I>() && Integral<N>() && Constructible<range_value_t<Rng>, T &&>())>
auto operator() (Rng &&rng, I p, N n, T &&t) const -> decltype(insert(std::forward< Rng >(rng), p, n, std::forward< T >(t)))
 
template<typename Rng , typename P , typename I , typename S , requires = (Range<Rng>() && Iterator<P>() && Sentinel<S, I>())>
auto operator() (Rng &&rng, P p, I i, S j) const -> decltype(insert(std::forward< Rng >(rng), p, i, j))