#include <any.hpp>
Public Types | |
typedef Concept | _boost_type_erasure_concept_type |
INTERNAL ONLY. More... | |
Public Member Functions | |
any (const ::boost::type_erasure::detail::storage &data_arg, const table_type &table_arg) | |
INTERNAL ONLY. More... | |
template<class U > | |
any (U &&arg, typename::boost::disable_if< ::boost::mpl::or_< ::boost::is_reference< U >,::boost::is_const< U >,::boost::type_erasure::detail::is_any< U > > >::type *=0) | |
Constructs an any from a reference. More... | |
template<class U , class Map > | |
any (U &&arg, const static_binding< Map > &binding_arg) | |
Constructs an any from a reference. More... | |
any (any &&other) | |
Constructs an any from another rvalue reference. More... | |
any (const any &other) | |
any (any< Concept, T > &&other) | |
Constructs an any from another any. More... | |
template<class Concept2 , class Tag2 > | |
any (any< Concept2, Tag2 && > &&other, typename::boost::disable_if< ::boost::mpl::or_< ::boost::is_reference< Tag2 >,::boost::is_same< Concept, Concept2 >,::boost::is_const< Tag2 > > >::type *=0) | |
Constructs an any from another rvalue reference. More... | |
template<class Concept2 , class Tag2 > | |
any (any< Concept2, Tag2 > &&other, typename::boost::disable_if< ::boost::mpl::or_< ::boost::is_same< Concept, Concept2 >,::boost::is_const< typename::boost::remove_reference< Tag2 >::type > > >::type *=0) | |
Constructs an any from another any. More... | |
template<class Concept2 , class Tag2 , class Map > | |
any (const any< Concept2, Tag2 && > &other, const static_binding< Map > &binding_arg, typename::boost::disable_if< ::boost::is_const< Tag2 > >::type *=0) | |
Constructs an any from another reference. More... | |
template<class Concept2 , class Tag2 , class Map > | |
any (any< Concept2, Tag2 > &&other, const static_binding< Map > &binding_arg, typename::boost::disable_if< ::boost::is_const< typename::boost::remove_reference< Tag2 >::type > >::type *=0) | |
Constructs an any from another any. More... | |
template<class Concept2 , class Tag2 > | |
any (const any< Concept2, Tag2 && > &other, const binding< Concept > &binding_arg, typename::boost::disable_if< ::boost::is_const< Tag2 > >::type *=0) | |
Constructs an any from another rvalue reference. More... | |
template<class Concept2 , class Tag2 > | |
any (any< Concept2, Tag2 > &&other, const binding< Concept > &binding_arg, typename::boost::disable_if< ::boost::is_const< typename::boost::remove_reference< Tag2 >::type > >::type *=0) | |
Constructs an any from another any. More... | |
any & | operator= (const any &other) |
Assigns to an any. More... | |
template<class U > | |
any & | operator= (U &other) |
Assigns to an any. More... | |
template<class U > | |
any & | operator= (const U &other) |
Assigns to an any. More... | |
operator param< Concept, T && > () const | |
INTERNAL ONLY. More... | |
Friends | |
struct | ::boost::type_erasure::detail::access |
typedef Concept boost::type_erasure::any< Concept, T && >::_boost_type_erasure_concept_type |
INTERNAL ONLY.
|
inline |
INTERNAL ONLY.
|
inline |
Constructs an any from a reference.
arg | The object to bind the reference to. |
U
is a model of Concept
. Concept
must not refer to any non-deduced placeholder besides T
.Nothing. |
References boost::addressof(), and boost::proto::envns_::data.
|
inline |
Constructs an any from a reference.
arg | The object to bind the reference to. |
binding | Specifies the actual types that all the placeholders should bind to. |
U
is a model of Concept
. Map
is an MPL map with an entry for every non-deduced placeholder referred to by Concept
.Nothing. |
References boost::addressof(), BOOST_MPL_ASSERT, boost::proto::envns_::data, and boost::detail::type.
|
inline |
Constructs an any from another rvalue reference.
other | The reference to copy. |
Nothing. |
|
inline |
|
inline |
|
inline |
Constructs an any from another rvalue reference.
other | The reference to copy. |
Concept
must not refer to any non-deduced placeholder besides T
. T
for Tag2
, the requirements of Concept2
must be a superset of the requirements of Concept
.std::bad_alloc |
|
inline |
Constructs an any from another any.
other | The object to bind the reference to. |
Concept
must not refer to any non-deduced placeholder besides T
. T
for Tag2
, the requirements of Concept2
must be a superset of the requirements of Concept
.std::bad_alloc |
|
inline |
Constructs an any from another reference.
other | The reference to copy. |
binding | Specifies the mapping between the two concepts. |
Map
must be an MPL map with keys for all the non-deduced placeholders used by Concept
and values for the corresponding placeholders in Concept2
. Map
, the requirements of Concept2
must be a superset of the requirements of Concept
.std::bad_alloc |
|
inline |
Constructs an any from another any.
other | The object to bind the reference to. |
binding | Specifies the mapping between the two concepts. |
Map
must be an MPL map with keys for all the non-deduced placeholders used by Concept
and values for the corresponding placeholders in Concept2
. Map
, the requirements of Concept2
must be a superset of the requirements of Concept
.std::bad_alloc |
|
inline |
Constructs an any from another rvalue reference.
other | The reference to copy. |
binding | Specifies the bindings of placeholders to actual types. |
other
must match the type expected by binding
.binding
Nothing. |
|
inline |
|
inline |
INTERNAL ONLY.
References boost::proto::envns_::data.
|
inline |
Assigns to an any.
If an appropriate overload of assignable is not available and relaxed is in Concept
, falls back on constructing from other
.
Whatever | the assignment operator of the contained type throws. When falling back on construction, throws std::bad_alloc . In this case assignment provides the strong exception guarantee. When calling the assignment operator of the contained type, the exception guarantee is whatever the contained type provides. |
|
inline |
Assigns to an any.
If an appropriate overload of assignable is not available and relaxed is in Concept
, falls back on constructing from other
.
Whatever | the assignment operator of the contained type throws. When falling back on construction, throws std::bad_alloc . In this case assignment provides the strong exception guarantee. When calling the assignment operator of the contained type, the exception guarantee is whatever the contained type provides. |
|
inline |
Assigns to an any.
If an appropriate overload of assignable is not available and relaxed is in Concept
, falls back on constructing from other
.
Whatever | the assignment operator of the contained type throws. When falling back on construction, throws std::bad_alloc . In this case assignment provides the strong exception guarantee. When calling the assignment operator of the contained type, the exception guarantee is whatever the contained type provides. |
|
friend |