Actions

## Description

Eager, mutating, composable algorithms.

## Classes

struct | ranges::make_action_closure_fn
struct | ranges::push_back_fn

## Functions

template<typename T , std::size_t N>
constexpr auto | ranges::push_back_fn::operator() (T(&val)[N]) const
template<typename T >
constexpr auto | ranges::push_back_fn::operator() (T &&val) const
template<typename T >
constexpr auto | ranges::push_back_fn::operator() (std::initializer_list< T > val) const
template<typename Rng , typename T >
auto | ranges::push_back_fn::operator() (Rng &&rng, T &&t) const -> Rng requires input_range< Rng > &&can_push_back_< Rng, T > &&(range< T >||constructible_from< range_value_t< Rng >, T >)
template<typename Rng , typename T >
auto | ranges::push_back_fn::operator() (Rng &&rng, std::initializer_list< T > t) const -> Rng requires input_range< Rng > &&can_push_back_< Rng, std::initializer_list< T >> &&constructible_from< range_value_t< Rng >, T const &>

## Variables

constexpr adl_erase_detail::erase_fn | ranges::erase {}
constexpr adl_insert_detail::insert_fn | insert {}
template<typename ActionFn , typename Rng >
concept | ranges::invocable_action_closure
template<typename ActionFn , typename Rng >
concept | ranges::invocable_action_closure_ = !derived_from<invoke_result_t<ActionFn, Rng>, detail::action_closure_base_>
constexpr make_action_closure_fn | ranges::make_action_closure {}
constexpr adl_push_back_detail::push_back_fn | actions::push_back {}

## Variable Documentation

## invocable_action_closure

template<typename ActionFn , typename Rng >

concept ranges::invocable_action_closure

`#include <range/v3/action/action.hpp>`

Initial value:
=
invocable<ActionFn, Rng> &&
ranges::invocable_action_closure_ < ActionFn, Rng >

## make_action_closure

constexpr make_action_closure_fn ranges::make_action_closure {}

`#include <range/v3/action/action.hpp>`

See also
  make_action_closure_fn