Back to Arangodb

Placeholder Expression

3rdParty/boost/1.78.0/libs/mpl/doc/src/refmanual/PlaceholderExpression.rst

3.12.9.11.3 KB
Original Source

.. Metafunctions/Concepts//Placeholder Expression |40

Placeholder Expression

Description

A |Placeholder Expression| is a type that is either a |placeholder| or a class template specialization with at least one argument that itself is a |Placeholder Expression|.

Expression requirements

If X is a class template, and a1,... an are arbitrary types, then X<a1,...,an> is a |Placeholder Expression| if and only if all of the following conditions hold:

  • At least one of the template arguments a1,... an is a |placeholder| or a |Placeholder Expression|.

  • All of X\ 's template parameters, including the default ones, are types.

  • The number of X\ 's template parameters, including the default ones, is less or equal to the value of BOOST_MPL_LIMIT_METAFUNCTION_ARITY configuration macro__.

__ Configuration_

Models

  • |_1|
  • plus<_, int_<2> >
  • if_< less<_1, int_<7> >, plus<_1,_2>, _1 >

See also

|Lambda Expression|, |Placeholders|, |Metafunctions|, |apply|, |lambda|

.. copyright:: 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)