std::experimental::ranges::identity (3) - Linux Manuals

std::experimental::ranges::identity: std::experimental::ranges::identity

NAME

std::experimental::ranges::identity - std::experimental::ranges::identity

Synopsis


Defined in header <experimental/ranges/functional>
struct identity; (ranges TS)


ranges::identity is a function object type whose operator() returns its argument unchanged. It is used as the default projection for all Ranges TS algorithms.

Member types


Member type Definition
is_transparent /* unspecified */

Member functions


           returns the argument unchanged
operator() (public member function)


 std::experimental::ranges::identity::operator()


template< class T>
constexpr T&& operator()( T&& t ) const noexcept;


Returns std::forward<T>(t).

Parameters


t - argument to return

Return value


std::forward<T>(t).

Notes


The member type is_transparent indicates to the caller that this function object is a transparent function object: it accepts arguments of arbitrary types and uses perfect forwarding, which avoids unnecessary copying and conversion when the function object is used in heterogeneous context, or with rvalue arguments. In particular, template functions such as std::set::find and std::set::lower_bound make use of this member type on their Compare types.

Example


 This section is incomplete
 Reason: no example