any.hpp File Reference
#include <cstddef>
#include <utility>
#include <cassert>
+ Include dependency graph for any.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  nonstd::any_lite::std11::add_const< T >
 
class  nonstd::any_lite::any
 
class  nonstd::any_lite::detail::enabler
 
struct  nonstd::detail::in_place_index_tag< K >
 
struct  nonstd::in_place_t
 
struct  nonstd::detail::in_place_type_tag< T >
 
struct  nonstd::any_lite::std11::remove_reference< T >
 
struct  nonstd::any_lite::std11::remove_reference< T & >
 

Namespaces

 nonstd
 
 nonstd::any_lite
 
 nonstd::any_lite::detail
 
 nonstd::any_lite::std11
 
 nonstd::detail
 

Macros

#define any_ANY_DEFAULT   0
 
#define any_ANY_NONSTD   1
 
#define any_ANY_STD   2
 
#define any_COMPILER_CLANG_VERSION   0
 
#define any_COMPILER_GNUC_VERSION   0
 
#define any_COMPILER_MSVC_VER   0
 
#define any_COMPILER_MSVC_VERSION   0
 
#define any_COMPILER_VERSION(major, minor, patch)   ( 10 * ( 10 * (major) + (minor) ) + (patch) )
 
#define any_CONFIG_NO_EXCEPTIONS   1
 
#define any_CONFIG_SELECT_ANY   ( any_HAVE_STD_ANY ? any_ANY_STD : any_ANY_NONSTD )
 
#define any_constexpr   /*constexpr*/
 
#define any_constexpr14   /*constexpr*/
 
#define any_CPLUSPLUS   __cplusplus
 
#define any_CPP11_100   (any_CPP11_OR_GREATER || any_COMPILER_MSVC_VER >= 1600)
 
#define any_CPP11_120   (any_CPP11_OR_GREATER || any_COMPILER_MSVC_VER >= 1800)
 
#define any_CPP11_140   (any_CPP11_OR_GREATER || any_COMPILER_MSVC_VER >= 1900)
 
#define any_CPP11_90   (any_CPP11_OR_GREATER || any_COMPILER_MSVC_VER >= 1500)
 
#define any_CPP11_OR_GREATER   ( any_CPLUSPLUS >= 201103L )
 
#define any_CPP14_000   (any_CPP14_OR_GREATER)
 
#define any_CPP14_OR_GREATER   ( any_CPLUSPLUS >= 201402L )
 
#define any_CPP17_000   (any_CPP17_OR_GREATER)
 
#define any_CPP17_OR_GREATER   ( any_CPLUSPLUS >= 201703L )
 
#define any_CPP20_OR_GREATER   ( any_CPLUSPLUS >= 202000L )
 
#define any_CPP98_OR_GREATER   ( any_CPLUSPLUS >= 199711L )
 
#define any_HAS_CPP0X   0
 
#define any_HAVE(feature)   ( any_HAVE_##feature )
 
#define any_HAVE_ADD_CONST   any_CPP11_90
 
#define any_HAVE_CONSTEXPR_11   any_CPP11_140
 
#define any_HAVE_CONSTEXPR_14   any_CPP14_000
 
#define any_HAVE_DEFAULT_FUNCTION_TEMPLATE_ARG   any_CPP11_120
 
#define any_HAVE_INITIALIZER_LIST   any_CPP11_120
 
#define any_HAVE_NODISCARD   any_CPP17_000
 
#define any_HAVE_NOEXCEPT   any_CPP11_140
 
#define any_HAVE_NULLPTR   any_CPP11_100
 
#define any_HAVE_REMOVE_REFERENCE   any_CPP11_90
 
#define any_HAVE_STATIC_ASSERT   any_CPP11_100
 
#define any_HAVE_STD_ANY   0
 
#define any_HAVE_TR1_ADD_CONST   (!! any_COMPILER_GNUC_VERSION )
 
#define any_HAVE_TR1_REMOVE_REFERENCE   (!! any_COMPILER_GNUC_VERSION )
 
#define any_HAVE_TR1_TYPE_TRAITS   (!! any_COMPILER_GNUC_VERSION )
 
#define any_HAVE_TYPE_TRAITS   any_CPP11_90
 
#define any_lite_MAJOR   0
 
#define any_lite_MINOR   1
 
#define any_lite_PATCH   0
 
#define any_lite_VERSION   any_STRINGIFY(any_lite_MAJOR) "." any_STRINGIFY(any_lite_MINOR) "." any_STRINGIFY(any_lite_PATCH)
 
#define any_nodiscard   /*[[nodiscard]]*/
 
#define any_noexcept   /*noexcept*/
 
#define any_nullptr   NULL
 
#define any_STRINGIFY(x)   any_STRINGIFY_( x )
 
#define any_STRINGIFY_(x)   #x
 
#define any_USES_STD_ANY   ( (any_CONFIG_SELECT_ANY == any_ANY_STD) || ((any_CONFIG_SELECT_ANY == any_ANY_DEFAULT) && any_HAVE_STD_ANY) )
 
#define NONSTD_ANY_LITE_HPP
 
#define nonstd_lite_HAVE_IN_PLACE_TYPES   1
 
#define nonstd_lite_in_place(T)   nonstd::in_place_type<T>
 
#define nonstd_lite_in_place_index(K)   nonstd::in_place_index<K>
 
#define nonstd_lite_in_place_index_t(K)   nonstd::in_place_t(&)( nonstd::detail::in_place_index_tag<K> )
 
#define nonstd_lite_in_place_t(T)   nonstd::in_place_t(&)( nonstd::detail::in_place_type_tag<T> )
 
#define nonstd_lite_in_place_type(T)   nonstd::in_place_type<T>
 
#define nonstd_lite_in_place_type_t(T)   nonstd::in_place_t(&)( nonstd::detail::in_place_type_tag<T> )
 

Functions

template<class ValueType >
ValueType nonstd::any_lite::any_cast (any const &operand)
 
template<class ValueType >
ValueType nonstd::any_lite::any_cast (any &operand)
 
template<class ValueType >
ValueType const * nonstd::any_lite::any_cast (any const *operand)
 
template<class ValueType >
ValueType * nonstd::any_lite::any_cast (any *operand)
 
template<class T >
in_place_t nonstd::in_place (detail::in_place_type_tag< T >=detail::in_place_type_tag< T >())
 
template<std::size_t K>
in_place_t nonstd::in_place (detail::in_place_index_tag< K >=detail::in_place_index_tag< K >())
 
template<std::size_t K>
in_place_t nonstd::in_place_index (detail::in_place_index_tag< K >=detail::in_place_index_tag< K >())
 
template<class T >
in_place_t nonstd::in_place_type (detail::in_place_type_tag< T >=detail::in_place_type_tag< T >())
 
void nonstd::any_lite::swap (any &x, any &y)
 

Macro Definition Documentation

#define any_ANY_DEFAULT   0

Definition at line 25 of file any.hpp.

#define any_ANY_NONSTD   1

Definition at line 26 of file any.hpp.

#define any_ANY_STD   2

Definition at line 27 of file any.hpp.

#define any_COMPILER_CLANG_VERSION   0

Definition at line 210 of file any.hpp.

#define any_COMPILER_GNUC_VERSION   0

Definition at line 216 of file any.hpp.

#define any_COMPILER_MSVC_VER   0

Definition at line 201 of file any.hpp.

#define any_COMPILER_MSVC_VERSION   0

Definition at line 202 of file any.hpp.

#define any_COMPILER_VERSION (   major,
  minor,
  patch 
)    ( 10 * ( 10 * (major) + (minor) ) + (patch) )

Definition at line 205 of file any.hpp.

#define any_CONFIG_NO_EXCEPTIONS   1

Definition at line 39 of file any.hpp.

#define any_CONFIG_SELECT_ANY   ( any_HAVE_STD_ANY ? any_ANY_STD : any_ANY_NONSTD )

Definition at line 30 of file any.hpp.

#define any_constexpr   /*constexpr*/

Definition at line 270 of file any.hpp.

#define any_constexpr14   /*constexpr*/

Definition at line 276 of file any.hpp.

#define any_CPLUSPLUS   __cplusplus

Definition at line 50 of file any.hpp.

#define any_CPP11_100   (any_CPP11_OR_GREATER || any_COMPILER_MSVC_VER >= 1600)

Definition at line 233 of file any.hpp.

#define any_CPP11_120   (any_CPP11_OR_GREATER || any_COMPILER_MSVC_VER >= 1800)

Definition at line 234 of file any.hpp.

#define any_CPP11_140   (any_CPP11_OR_GREATER || any_COMPILER_MSVC_VER >= 1900)

Definition at line 235 of file any.hpp.

#define any_CPP11_90   (any_CPP11_OR_GREATER || any_COMPILER_MSVC_VER >= 1500)

Definition at line 232 of file any.hpp.

#define any_CPP11_OR_GREATER   ( any_CPLUSPLUS >= 201103L )

Definition at line 55 of file any.hpp.

#define any_CPP14_000   (any_CPP14_OR_GREATER)

Definition at line 237 of file any.hpp.

#define any_CPP14_OR_GREATER   ( any_CPLUSPLUS >= 201402L )

Definition at line 56 of file any.hpp.

#define any_CPP17_000   (any_CPP17_OR_GREATER)

Definition at line 238 of file any.hpp.

#define any_CPP17_OR_GREATER   ( any_CPLUSPLUS >= 201703L )

Definition at line 57 of file any.hpp.

#define any_CPP20_OR_GREATER   ( any_CPLUSPLUS >= 202000L )

Definition at line 58 of file any.hpp.

#define any_CPP98_OR_GREATER   ( any_CPLUSPLUS >= 199711L )

Definition at line 54 of file any.hpp.

#define any_HAS_CPP0X   0

Definition at line 229 of file any.hpp.

#define any_HAVE (   feature)    ( any_HAVE_##feature )

Definition at line 224 of file any.hpp.

#define any_HAVE_ADD_CONST   any_CPP11_90

Definition at line 250 of file any.hpp.

#define any_HAVE_CONSTEXPR_11   any_CPP11_140

Definition at line 242 of file any.hpp.

#define any_HAVE_CONSTEXPR_14   any_CPP14_000

Definition at line 259 of file any.hpp.

#define any_HAVE_DEFAULT_FUNCTION_TEMPLATE_ARG   any_CPP11_120

Definition at line 243 of file any.hpp.

#define any_HAVE_INITIALIZER_LIST   any_CPP11_120

Definition at line 245 of file any.hpp.

#define any_HAVE_NODISCARD   any_CPP17_000

Definition at line 263 of file any.hpp.

#define any_HAVE_NOEXCEPT   any_CPP11_140

Definition at line 246 of file any.hpp.

#define any_HAVE_NULLPTR   any_CPP11_100

Definition at line 247 of file any.hpp.

#define any_HAVE_REMOVE_REFERENCE   any_CPP11_90

Definition at line 251 of file any.hpp.

#define any_HAVE_STATIC_ASSERT   any_CPP11_100

Definition at line 249 of file any.hpp.

#define any_HAVE_STD_ANY   0

Definition at line 69 of file any.hpp.

#define any_HAVE_TR1_ADD_CONST   (!! any_COMPILER_GNUC_VERSION )

Definition at line 253 of file any.hpp.

#define any_HAVE_TR1_REMOVE_REFERENCE   (!! any_COMPILER_GNUC_VERSION )

Definition at line 254 of file any.hpp.

#define any_HAVE_TR1_TYPE_TRAITS   (!! any_COMPILER_GNUC_VERSION )

Definition at line 255 of file any.hpp.

#define any_HAVE_TYPE_TRAITS   any_CPP11_90

Definition at line 248 of file any.hpp.

#define any_lite_MAJOR   0

Definition at line 14 of file any.hpp.

#define any_lite_MINOR   1

Definition at line 15 of file any.hpp.

#define any_lite_PATCH   0

Definition at line 16 of file any.hpp.

Definition at line 18 of file any.hpp.

#define any_nodiscard   /*[[nodiscard]]*/

Definition at line 294 of file any.hpp.

#define any_noexcept   /*noexcept*/

Definition at line 282 of file any.hpp.

#define any_nullptr   NULL

Definition at line 288 of file any.hpp.

#define any_STRINGIFY (   x)    any_STRINGIFY_( x )

Definition at line 20 of file any.hpp.

#define any_STRINGIFY_ (   x)    #x

Definition at line 21 of file any.hpp.

#define any_USES_STD_ANY   ( (any_CONFIG_SELECT_ANY == any_ANY_STD) || ((any_CONFIG_SELECT_ANY == any_ANY_DEFAULT) && any_HAVE_STD_ANY) )

Definition at line 72 of file any.hpp.

#define NONSTD_ANY_LITE_HPP

Definition at line 12 of file any.hpp.

#define nonstd_lite_HAVE_IN_PLACE_TYPES   1

Definition at line 79 of file any.hpp.

#define nonstd_lite_in_place (   T)    nonstd::in_place_type<T>

Definition at line 153 of file any.hpp.

#define nonstd_lite_in_place_index (   K)    nonstd::in_place_index<K>

Definition at line 155 of file any.hpp.

#define nonstd_lite_in_place_index_t (   K)    nonstd::in_place_t(&)( nonstd::detail::in_place_index_tag<K> )

Definition at line 151 of file any.hpp.

#define nonstd_lite_in_place_t (   T)    nonstd::in_place_t(&)( nonstd::detail::in_place_type_tag<T> )

Definition at line 149 of file any.hpp.

#define nonstd_lite_in_place_type (   T)    nonstd::in_place_type<T>

Definition at line 154 of file any.hpp.

#define nonstd_lite_in_place_type_t (   T)    nonstd::in_place_t(&)( nonstd::detail::in_place_type_tag<T> )

Definition at line 150 of file any.hpp.