libstdc++
std::experimental::fundamentals_v1::any Class Reference

Public Member Functions

 any () noexcept
 
 any (const any &__other)
 
 any (any &&__other) noexcept
 
template<typename _ValueType , typename _Tp = _Decay<_ValueType>, typename _Mgr = _Manager<_Tp>, typename enable_if< is_constructible< _Tp, _ValueType && >::value, bool >::type = true>
 any (_ValueType &&__value)
 
template<typename _ValueType , typename _Tp = _Decay<_ValueType>, typename _Mgr = _Manager<_Tp>, typename enable_if<!is_constructible< _Tp, _ValueType && >::value, bool >::type = false>
 any (_ValueType &&__value)
 
 ~any ()
 
void clear () noexcept
 
bool empty () const noexcept
 
anyoperator= (const any &__rhs)
 
anyoperator= (any &&__rhs) noexcept
 
template<typename _ValueType >
enable_if_t<!is_same< any,
decay_t< _ValueType > >::value,
any & > 
operator= (_ValueType &&__rhs)
 
void swap (any &__rhs) noexcept
 
const type_infotype () const noexcept
 

Static Public Member Functions

template<typename _Tp >
static constexpr bool __is_valid_cast ()
 

Friends

template<typename _Tp >
void * __any_caster (const any *__any)
 

Detailed Description

A type-safe container of any type.

An any object's state is either empty or it stores a contained object of CopyConstructible type.

Definition at line 88 of file any.

Constructor & Destructor Documentation

std::experimental::fundamentals_v1::any::any ( )
inlinenoexcept

Default constructor, creates an empty object.

Definition at line 127 of file any.

Referenced by operator=().

std::experimental::fundamentals_v1::any::any ( const any __other)
inline

Copy constructor, copies the state of __other.

Definition at line 130 of file any.

References empty().

std::experimental::fundamentals_v1::any::any ( any &&  __other)
inlinenoexcept

Move constructor, transfer the state from __other.

Postcondition
__other.empty() (this postcondition is a GNU extension)

Definition at line 147 of file any.

template<typename _ValueType , typename _Tp = _Decay<_ValueType>, typename _Mgr = _Manager<_Tp>, typename enable_if< is_constructible< _Tp, _ValueType && >::value, bool >::type = true>
std::experimental::fundamentals_v1::any::any ( _ValueType &&  __value)
inline

Construct with a copy of __value as the contained object.

Definition at line 164 of file any.

template<typename _ValueType , typename _Tp = _Decay<_ValueType>, typename _Mgr = _Manager<_Tp>, typename enable_if<!is_constructible< _Tp, _ValueType && >::value, bool >::type = false>
std::experimental::fundamentals_v1::any::any ( _ValueType &&  __value)
inline

Construct with a copy of __value as the contained object.

Definition at line 177 of file any.

std::experimental::fundamentals_v1::any::~any ( )
inline

Destructor, calls clear()

Definition at line 186 of file any.

References clear().

Member Function Documentation

void std::experimental::fundamentals_v1::any::clear ( )
inlinenoexcept

If not empty, destroy the contained object.

Definition at line 238 of file any.

References empty().

Referenced by operator=(), and ~any().

bool std::experimental::fundamentals_v1::any::empty ( ) const
inlinenoexcept

Reports whether there is a contained object or not.

Definition at line 280 of file any.

Referenced by any(), clear(), operator=(), swap(), and type().

any& std::experimental::fundamentals_v1::any::operator= ( const any __rhs)
inline

Copy the state of another object.

Definition at line 191 of file any.

References clear(), and empty().

any& std::experimental::fundamentals_v1::any::operator= ( any &&  __rhs)
inlinenoexcept

Move assignment operator.

Postcondition
__rhs.empty() (not guaranteed for other implementations)

Definition at line 211 of file any.

References clear(), and empty().

template<typename _ValueType >
enable_if_t<!is_same<any, decay_t<_ValueType> >::value, any&> std::experimental::fundamentals_v1::any::operator= ( _ValueType &&  __rhs)
inline

Store a copy of __rhs as the contained object.

Definition at line 229 of file any.

References any().

void std::experimental::fundamentals_v1::any::swap ( any __rhs)
inlinenoexcept

Exchange state with another object.

Definition at line 248 of file any.

References empty().

const type_info& std::experimental::fundamentals_v1::any::type ( ) const
inlinenoexcept

The typeid of the contained object, or typeid(void) if empty.

Definition at line 284 of file any.

References empty().


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