Range-v3 Range algorithms, views, and actions for the Standard Library |

Classes | Functions | Variables
insert.hpp File Reference

## Classes
struct | ranges::insert_fn

## Functions
template<typename Cont , typename I , typename Rng >
auto | ranges::insert (Cont &&cont, I p, Rng &&rng) -> decltype(detail::insert_impl(static_cast< Cont && >(cont), std::move(p), static_cast< Rng && >(rng), meta::bool_< random_access_reservable< Cont > &&sized_range< Rng >>
template<typename Cont , typename P , typename I , typename S >
auto | ranges::insert (Cont &&cont, P p, I i, S j) -> decltype(detail::insert_impl(static_cast< Cont && >(cont), static_cast< P && >(p), static_cast< I && >(i), static_cast< S && >(j), meta::bool_< random_access_reservable< Cont > &&sized_sentinel_for< S, I >>

## Variables
constexpr adl_insert_detail::insert_fn | insert {}

## Function Documentation

## ◆ insert() [1/2]

template<typename Cont , typename I , typename Rng >

auto ranges::insert | ( | Cont && | cont,
|  | I | p,
|  | Rng && | rng
| ) |  | -> decltype(detail::insert_impl( static_cast<Cont &&>(cont), std::move(p), static_cast<Rng &&>(rng), meta::bool_<random_access_reservable<Cont> && sized_range<Rng>>

Precondition
  requires `lvalue_container_like<Cont> && input_iterator<I> && range<Rng>`

## ◆ insert() [2/2]

template<typename Cont , typename P , typename I , typename S >

auto ranges::insert | ( | Cont && | cont,
|  | P | p,
|  | I | i,
|  | S | j
| ) |  | -> decltype(detail::insert_impl( static_cast<Cont &&>(cont), static_cast<P &&>(p), static_cast<I &&>(i), static_cast<S &&>(j), meta::bool_<random_access_reservable<Cont> && sized_sentinel_for<S, I>>

Precondition
  requires `lvalue_container_like<Cont> && input_iterator<P> && sentinel_for<S, I> && (!range<S>)` //