Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

The MPL Reference Manual: not_
Front Page / Metafunctions / Logical Operations / not_

not_

Synopsis

template<
      typename F
    >
struct not_
{
    typedef unspecified type;
};

Description

Returns the result of logical not (!) operation on its argument.

Parameters

Parameter Requirement Description
F Nullary Metafunction Operation's argument.

Expression semantics

For arbitrary nullary Metafunction f:

typedef not_<f>::type r;
Return type:

Integral Constant.

Semantics:

Equivalent to

typedef bool_< (!f::type::value) > r;
typedef not_<f> r;
Return type:

Integral Constant.

Semantics:

Equivalent to

struct r : not_<f>::type {};