Back to Arangodb

unpack_args

3rdParty/boost/1.78.0/libs/mpl/doc/refmanual/unpack-args.html

3.12.9.12.5 KB
Original Source

| Prev Next | Back Along | Up Home | Full TOC | Front Page / Metafunctions / Invocation / unpack_args |

unpack_args

Synopsis

template<
      typename F
    >
struct[unpack\_args](./unpack-args.html){
    //_unspecified_//_..._};

Description

A higher-order primitive transforming an n-ary Lambda Expression F into an unary Metafunction Class g accepting a single sequence of n arguments.

#include <[boost/mpl/unpack\_args.hpp](../../../../boost/mpl/unpack_args.hpp)>

Model of

Metafunction Class

Parameters

ParameterRequirementDescription
FLambda ExpressionA lambda expression to adopt.

Expression semantics

For an arbitrary Lambda Expression f, and arbitrary types a1,... an:

typedef[unpack\_args](./unpack-args.html)<f> g;

| Return type: |

Metafunction Class.

| | Semantics: |

g is a unary Metafunction Class such that

[apply\_wrap](./apply-wrap.html)_n_< g,[vector](./vector.html)<a1,_..._a_n_> >::type

is identical to

[apply](./apply.html)<F,a1,_..._a_n_>::type

|

Example

[BOOST\_MPL\_ASSERT](./assert.html)(([apply](./apply.html)<[unpack\_args](./unpack-args.html)< is_same<[\_1](./placeholders.html),[\_2](./placeholders.html)> >
    ,[vector](./vector.html)<int,int>
    > ));

See also

Metafunctions, Lambda Expression, Metafunction Class, apply, apply_wrap, bind

| Prev Next | Back Along | Up Home | Full TOC |

Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |