Quick Links:

bal | bbl | bdl | bsl

Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes

bslmf::MetaInt< 1 > Struct Template Reference

#include <bslmf_metaint.h>

Inheritance diagram for bslmf::MetaInt< 1 >:
bsl::integral_constant< t_TYPE, t_VAL > bdlat_ArrayFunctions::IsArray< bsl::vector< TYPE, ALLOC > >

List of all members.

Public Types

enum  { VALUE = 1 }
typedef MetaInt< 1 > Type
typedef bslmf::Tag< 1 > Tag
typedef t_TYPE value_type
typedef integral_constant type

Public Member Functions

 MetaInt ()
 MetaInt (bsl::true_type)
 MetaInt (const MetaInt &)
MetaIntoperator= (const MetaInt &)
 ~MetaInt ()
 operator bool () const
BSLS_KEYWORD_CONSTEXPR operator value_type () const BSLS_KEYWORD_NOEXCEPT

Static Public Member Functions

static Tagtag ()

Static Public Attributes

static
BSLS_KEYWORD_CONSTEXPR_MEMBER
t_TYPE 
value = t_VAL

Detailed Description

template<>
struct bslmf::MetaInt< 1 >

This specialization of MetaInt has a VAL of one and is convertible to and from bsl::true_type.

See Component bslmf_metaint


Member Typedef Documentation

typedef MetaInt<1> bslmf::MetaInt< 1 >::Type
typedef bslmf::Tag<1> bslmf::MetaInt< 1 >::Tag
template<class t_TYPE, t_TYPE t_VAL>
typedef t_TYPE bsl::integral_constant< t_TYPE, t_VAL >::value_type [inherited]
template<class t_TYPE, t_TYPE t_VAL>
typedef integral_constant bsl::integral_constant< t_TYPE, t_VAL >::type [inherited]

Member Enumeration Documentation

anonymous enum
Enumerator:
VALUE 

Constructor & Destructor Documentation

bslmf::MetaInt< 1 >::MetaInt (  ) 

Does nothing (MetaInt is stateless).

IMPLICIT: Convert from a bsl::true_type.

bslmf::MetaInt< 1 >::MetaInt ( const MetaInt< 1 > &   ) 
bslmf::MetaInt< 1 >::~MetaInt (  ) 

Member Function Documentation

MetaInt& bslmf::MetaInt< 1 >::operator= ( const MetaInt< 1 > &   ) 
static Tag& bslmf::MetaInt< 1 >::tag (  )  [static]

Declared but not defined. Meta-function use only. The tag can be used to recover meta-information from an expression. Example: sizeof(f(expr).tag()) returns a different compile-time value depending on the type of the result of calling the f function but does not actually call the f function or the tag method at run-time. Note that f(expr)VALUE or sizeof(f(expr)Type) would be ill-formed and that f(expr).value is not a compile-time expression.

bslmf::MetaInt< 1 >::operator bool (  )  const

Return true. (This operator is conversion operator to bool.)

template<class t_TYPE, t_TYPE t_VAL>
BSLS_KEYWORD_CONSTEXPR bsl::integral_constant< t_TYPE, t_VAL >::operator value_type (  )  const [inherited]

Return t_VAL.


Member Data Documentation

template<class t_TYPE, t_TYPE t_VAL>
BSLS_KEYWORD_CONSTEXPR_MEMBER t_TYPE bsl::integral_constant< t_TYPE, t_VAL >::value = t_VAL [static, inherited]

The documentation for this struct was generated from the following file: