NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
optional-lite.hpp File Reference
#include <cstddef>
#include <cassert>
#include <utility>
Include dependency graph for optional-lite.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  nonstd::detail::in_place_type_tag< T >
 
struct  nonstd::detail::in_place_index_tag< K >
 
struct  nonstd::in_place_t
 
struct  nonstd::optional_lite::std11::integral_constant< T, v >
 
struct  nonstd::optional_lite::std11::bool_constant< B >
 
struct  nonstd::optional_lite::std11::conditional< B, T, F >
 
struct  nonstd::optional_lite::std11::conditional< false, T, F >
 
struct  nonstd::optional_lite::std11::is_assignable< T, U >
 
struct  nonstd::optional_lite::std11::is_move_constructible< T >
 
struct  nonstd::optional_lite::std11::is_nothrow_move_assignable< T >
 
struct  nonstd::optional_lite::std11::is_nothrow_move_constructible< T >
 
struct  nonstd::optional_lite::std11::is_trivially_copy_constructible< T >
 
struct  nonstd::optional_lite::std11::is_trivially_move_constructible< T >
 
class  nonstd::optional_lite::optional< T >
 class optional More...
 
struct  nonstd::optional_lite::detail::nulltype
 
struct  nonstd::optional_lite::detail::typelist< Head, Tail >
 
struct  nonstd::optional_lite::detail::alignment_of< T >
 
struct  nonstd::optional_lite::detail::alignment_of_hack< T >
 
struct  nonstd::optional_lite::detail::alignment_logic< A, S >
 
struct  nonstd::optional_lite::detail::alignment_of< T >
 
struct  nonstd::optional_lite::detail::type_of_size< List, N >
 
struct  nonstd::optional_lite::detail::type_of_size< nulltype, N >
 
struct  nonstd::optional_lite::detail::struct_t< T >
 
union  nonstd::optional_lite::detail::storage_t< T >
 C++03 constructed union to hold value. More...
 
struct  nonstd::optional_lite::detail::storage_t< T >::aligned_storage_t
 
struct  nonstd::optional_lite::nullopt_t
 disengaged state tag More...
 
struct  nonstd::optional_lite::nullopt_t::init
 
class  nonstd::optional_lite::optional< T >
 class optional More...
 

Namespaces

 nonstd
 
 nonstd::detail
 
 nonstd::optional_lite
 
 nonstd::optional_lite::std11
 
 nonstd::optional_lite::detail
 

Macros

#define NONSTD_OPTIONAL_LITE_HPP
 
#define optional_lite_MAJOR   3
 
#define optional_lite_MINOR   5
 
#define optional_lite_PATCH   0
 
#define optional_lite_VERSION   optional_STRINGIFY(optional_lite_MAJOR) "." optional_STRINGIFY(optional_lite_MINOR) "." optional_STRINGIFY(optional_lite_PATCH)
 
#define optional_STRINGIFY( x)   optional_STRINGIFY_( x )
 
#define optional_STRINGIFY_(x)   #x
 
#define optional_OPTIONAL_DEFAULT   0
 
#define optional_OPTIONAL_NONSTD   1
 
#define optional_OPTIONAL_STD   2
 
#define optional_HAVE_TWEAK_HEADER   0
 
#define optional_CONFIG_SELECT_OPTIONAL   ( optional_HAVE_STD_OPTIONAL ? optional_OPTIONAL_STD : optional_OPTIONAL_NONSTD )
 
#define optional_CONFIG_NO_EXCEPTIONS   1
 
#define optional_CPLUSPLUS   __cplusplus
 
#define optional_CPP98_OR_GREATER   ( optional_CPLUSPLUS >= 199711L )
 
#define optional_CPP11_OR_GREATER   ( optional_CPLUSPLUS >= 201103L )
 
#define optional_CPP11_OR_GREATER_   ( optional_CPLUSPLUS >= 201103L )
 
#define optional_CPP14_OR_GREATER   ( optional_CPLUSPLUS >= 201402L )
 
#define optional_CPP17_OR_GREATER   ( optional_CPLUSPLUS >= 201703L )
 
#define optional_CPP20_OR_GREATER   ( optional_CPLUSPLUS >= 202000L )
 
#define optional_CPLUSPLUS_V   ( optional_CPLUSPLUS / 100 - (optional_CPLUSPLUS > 200000 ? 2000 : 1994) )
 
#define optional_HAVE_STD_OPTIONAL   0
 
#define optional_USES_STD_OPTIONAL   ( (optional_CONFIG_SELECT_OPTIONAL == optional_OPTIONAL_STD) || ((optional_CONFIG_SELECT_OPTIONAL == optional_OPTIONAL_DEFAULT) && optional_HAVE_STD_OPTIONAL) )
 
#define nonstd_lite_HAVE_IN_PLACE_TYPES   1
 
#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(T)   nonstd::in_place_t(&)( nonstd::detail::in_place_type_tag<T> )
 
#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)   nonstd::in_place_type<T>
 
#define nonstd_lite_in_place_type(T)   nonstd::in_place_type<T>
 
#define nonstd_lite_in_place_index(K)   nonstd::in_place_index<K>
 
#define optional_CONFIG_MAX_ALIGN_HACK   0
 
#define optional_CONFIG_ALIGN_AS_FALLBACK   double
 
#define optional_BETWEEN(v, lo, hi)   ( (lo) <= (v) && (v) < (hi) )
 
#define optional_COMPILER_MSVC_VER   0
 
#define optional_COMPILER_MSVC_VERSION   0
 
#define optional_COMPILER_VERSION(major, minor, patch)   ( 10 * (10 * (major) + (minor) ) + (patch) )
 
#define optional_COMPILER_GNUC_VERSION   0
 
#define optional_COMPILER_CLANG_VERSION   0
 
#define optional_HAVE(FEATURE)   ( optional_HAVE_##FEATURE )
 
#define optional_HAS_CPP0X   0
 
#define optional_CPP11_90   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1500)
 
#define optional_CPP11_100   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1600)
 
#define optional_CPP11_110   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1700)
 
#define optional_CPP11_120   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1800)
 
#define optional_CPP11_140   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1900)
 
#define optional_CPP11_141   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1910)
 
#define optional_CPP14_000   (optional_CPP14_OR_GREATER)
 
#define optional_CPP17_000   (optional_CPP17_OR_GREATER)
 
#define optional_CPP11_140_C290_G490   ((optional_CPP11_OR_GREATER_ && (optional_COMPILER_CLANG_VERSION >= 290 || optional_COMPILER_GNUC_VERSION >= 490)) || (optional_COMPILER_MSVC_VER >= 1900))
 
#define optional_CPP11_110_C350   ( optional_CPP11_110 && !optional_BETWEEN( optional_COMPILER_CLANG_VERSION, 1, 350 ) )
 
#define optional_CPP11_110_C350_G500
 
#define optional_HAVE_CONSTEXPR_11   optional_CPP11_140
 
#define optional_HAVE_IS_DEFAULT   optional_CPP11_140
 
#define optional_HAVE_NOEXCEPT   optional_CPP11_140
 
#define optional_HAVE_NULLPTR   optional_CPP11_100
 
#define optional_HAVE_REF_QUALIFIER   optional_CPP11_140_C290_G490
 
#define optional_HAVE_STATIC_ASSERT   optional_CPP11_110
 
#define optional_HAVE_INITIALIZER_LIST   optional_CPP11_140
 
#define optional_HAVE_CONSTEXPR_14   optional_CPP14_000
 
#define optional_HAVE_NODISCARD   optional_CPP17_000
 
#define optional_HAVE_CONDITIONAL   optional_CPP11_120
 
#define optional_HAVE_REMOVE_CV   optional_CPP11_120
 
#define optional_HAVE_TYPE_TRAITS   optional_CPP11_90
 
#define optional_HAVE_TR1_TYPE_TRAITS   (!! optional_COMPILER_GNUC_VERSION )
 
#define optional_HAVE_TR1_ADD_POINTER   (!! optional_COMPILER_GNUC_VERSION )
 
#define optional_HAVE_IS_ASSIGNABLE   optional_CPP11_110_C350
 
#define optional_HAVE_IS_MOVE_CONSTRUCTIBLE   optional_CPP11_110_C350
 
#define optional_HAVE_IS_NOTHROW_MOVE_ASSIGNABLE   optional_CPP11_110_C350
 
#define optional_HAVE_IS_NOTHROW_MOVE_CONSTRUCTIBLE   optional_CPP11_110_C350
 
#define optional_HAVE_IS_TRIVIALLY_COPY_CONSTRUCTIBLE   optional_CPP11_110_C350_G500
 
#define optional_HAVE_IS_TRIVIALLY_MOVE_CONSTRUCTIBLE   optional_CPP11_110_C350_G500
 
#define optional_constexpr   /*constexpr*/
 
#define optional_is_default   {}
 
#define optional_constexpr14   /*constexpr*/
 
#define optional_nodiscard   /*[[nodiscard]]*/
 
#define optional_noexcept   /*noexcept*/
 
#define optional_nullptr   NULL
 
#define optional_ref_qual   /*&*/
 
#define optional_refref_qual   /*&&*/
 
#define optional_static_assert(expr, text)   /*static_assert(expr, text);*/
 
#define optional_ALIGN_AS(to_align)   typename type_of_size< alignment_types, alignment_of< to_align >::value >::type
 
#define optional_ALIGN_TYPE(type)   typelist< type , typelist< struct_t< type >
 

Typedefs

typedef bool_constant< true > nonstd::optional_lite::std11::true_type
 
typedef bool_constant< false > nonstd::optional_lite::std11::false_type
 
typedef nulltype nonstd::optional_lite::detail::alignment_types
 

Functions

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<class T >
in_place_t nonstd::in_place_type (detail::in_place_type_tag< T >=detail::in_place_type_tag< T >())
 
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<typename T >
T & nonstd::optional_lite::std11::move (T &t)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (char)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (short)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (int)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (long)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (float)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (double)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (char *)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (short *)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (int *)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (long *)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (float *)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (double *)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (long double *)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (Unknown(*)(Unknown))
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (Unknown *Unknown::*)
 
typedef nonstd::optional_lite::detail::optional_ALIGN_TYPE (Unknown(Unknown::*)(Unknown))
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator== (optional< T > const &x, optional< U > const &y)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator!= (optional< T > const &x, optional< U > const &y)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator< (optional< T > const &x, optional< U > const &y)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator> (optional< T > const &x, optional< U > const &y)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator<= (optional< T > const &x, optional< U > const &y)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator>= (optional< T > const &x, optional< U > const &y)
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator== (optional< T > const &x, nullopt_t) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator== (nullopt_t, optional< T > const &x) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator!= (optional< T > const &x, nullopt_t) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator!= (nullopt_t, optional< T > const &x) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator< (optional< T > const &, nullopt_t) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator< (nullopt_t, optional< T > const &x) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator<= (optional< T > const &x, nullopt_t) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator<= (nullopt_t, optional< T > const &) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator> (optional< T > const &x, nullopt_t) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator> (nullopt_t, optional< T > const &) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator>= (optional< T > const &, nullopt_t) optional_noexcept
 
template<typename T >
optional_constexpr bool nonstd::optional_lite::operator>= (nullopt_t, optional< T > const &x) optional_noexcept
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator== (optional< T > const &x, U const &v)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator== (U const &v, optional< T > const &x)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator!= (optional< T > const &x, U const &v)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator!= (U const &v, optional< T > const &x)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator< (optional< T > const &x, U const &v)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator< (U const &v, optional< T > const &x)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator<= (optional< T > const &x, U const &v)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator<= (U const &v, optional< T > const &x)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator> (optional< T > const &x, U const &v)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator> (U const &v, optional< T > const &x)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator>= (optional< T > const &x, U const &v)
 
template<typename T , typename U >
optional_constexpr bool nonstd::optional_lite::operator>= (U const &v, optional< T > const &x)
 
template<typename T >
void nonstd::optional_lite::swap (optional< T > &x, optional< T > &y)
 
template<typename T >
optional< T > nonstd::optional_lite::make_optional (T const &value)
 

Variables

const nullopt_t nonstd::optional_lite::nullopt ((nullopt_t::init()))
 

Macro Definition Documentation

◆ NONSTD_OPTIONAL_LITE_HPP

#define NONSTD_OPTIONAL_LITE_HPP

Definition at line 12 of file optional-lite.hpp.

◆ optional_lite_MAJOR

#define optional_lite_MAJOR   3

Definition at line 14 of file optional-lite.hpp.

◆ optional_lite_MINOR

#define optional_lite_MINOR   5

Definition at line 15 of file optional-lite.hpp.

◆ optional_lite_PATCH

#define optional_lite_PATCH   0

Definition at line 16 of file optional-lite.hpp.

◆ optional_lite_VERSION

◆ optional_STRINGIFY

#define optional_STRINGIFY (   x)    optional_STRINGIFY_( x )

Definition at line 20 of file optional-lite.hpp.

◆ optional_STRINGIFY_

#define optional_STRINGIFY_ (   x)    #x

Definition at line 21 of file optional-lite.hpp.

◆ optional_OPTIONAL_DEFAULT

#define optional_OPTIONAL_DEFAULT   0

Definition at line 25 of file optional-lite.hpp.

◆ optional_OPTIONAL_NONSTD

#define optional_OPTIONAL_NONSTD   1

Definition at line 26 of file optional-lite.hpp.

◆ optional_OPTIONAL_STD

#define optional_OPTIONAL_STD   2

Definition at line 27 of file optional-lite.hpp.

◆ optional_HAVE_TWEAK_HEADER

#define optional_HAVE_TWEAK_HEADER   0

Definition at line 37 of file optional-lite.hpp.

◆ optional_CONFIG_SELECT_OPTIONAL

#define optional_CONFIG_SELECT_OPTIONAL   ( optional_HAVE_STD_OPTIONAL ? optional_OPTIONAL_STD : optional_OPTIONAL_NONSTD )

Definition at line 44 of file optional-lite.hpp.

◆ optional_CONFIG_NO_EXCEPTIONS

#define optional_CONFIG_NO_EXCEPTIONS   1

Definition at line 56 of file optional-lite.hpp.

◆ optional_CPLUSPLUS

#define optional_CPLUSPLUS   __cplusplus

Definition at line 67 of file optional-lite.hpp.

◆ optional_CPP98_OR_GREATER

#define optional_CPP98_OR_GREATER   ( optional_CPLUSPLUS >= 199711L )

Definition at line 71 of file optional-lite.hpp.

◆ optional_CPP11_OR_GREATER

#define optional_CPP11_OR_GREATER   ( optional_CPLUSPLUS >= 201103L )

Definition at line 72 of file optional-lite.hpp.

◆ optional_CPP11_OR_GREATER_

#define optional_CPP11_OR_GREATER_   ( optional_CPLUSPLUS >= 201103L )

Definition at line 73 of file optional-lite.hpp.

◆ optional_CPP14_OR_GREATER

#define optional_CPP14_OR_GREATER   ( optional_CPLUSPLUS >= 201402L )

Definition at line 74 of file optional-lite.hpp.

◆ optional_CPP17_OR_GREATER

#define optional_CPP17_OR_GREATER   ( optional_CPLUSPLUS >= 201703L )

Definition at line 75 of file optional-lite.hpp.

◆ optional_CPP20_OR_GREATER

#define optional_CPP20_OR_GREATER   ( optional_CPLUSPLUS >= 202000L )

Definition at line 76 of file optional-lite.hpp.

◆ optional_CPLUSPLUS_V

#define optional_CPLUSPLUS_V   ( optional_CPLUSPLUS / 100 - (optional_CPLUSPLUS > 200000 ? 2000 : 1994) )

Definition at line 80 of file optional-lite.hpp.

◆ optional_HAVE_STD_OPTIONAL

#define optional_HAVE_STD_OPTIONAL   0

Definition at line 91 of file optional-lite.hpp.

◆ optional_USES_STD_OPTIONAL

◆ nonstd_lite_HAVE_IN_PLACE_TYPES

#define nonstd_lite_HAVE_IN_PLACE_TYPES   1

Definition at line 101 of file optional-lite.hpp.

◆ nonstd_lite_in_place_t

◆ nonstd_lite_in_place_type_t

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

Definition at line 172 of file optional-lite.hpp.

◆ nonstd_lite_in_place_index_t

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

Definition at line 173 of file optional-lite.hpp.

◆ nonstd_lite_in_place

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

◆ nonstd_lite_in_place_type

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

Definition at line 176 of file optional-lite.hpp.

◆ nonstd_lite_in_place_index

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

Definition at line 177 of file optional-lite.hpp.

◆ optional_CONFIG_MAX_ALIGN_HACK

#define optional_CONFIG_MAX_ALIGN_HACK   0

Definition at line 219 of file optional-lite.hpp.

◆ optional_CONFIG_ALIGN_AS_FALLBACK

#define optional_CONFIG_ALIGN_AS_FALLBACK   double

Definition at line 227 of file optional-lite.hpp.

◆ optional_BETWEEN

#define optional_BETWEEN (   v,
  lo,
  hi 
)    ( (lo) <= (v) && (v) < (hi) )

Definition at line 243 of file optional-lite.hpp.

◆ optional_COMPILER_MSVC_VER

#define optional_COMPILER_MSVC_VER   0

Definition at line 263 of file optional-lite.hpp.

◆ optional_COMPILER_MSVC_VERSION

#define optional_COMPILER_MSVC_VERSION   0

Definition at line 264 of file optional-lite.hpp.

◆ optional_COMPILER_VERSION

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

Definition at line 267 of file optional-lite.hpp.

◆ optional_COMPILER_GNUC_VERSION

#define optional_COMPILER_GNUC_VERSION   0

Definition at line 272 of file optional-lite.hpp.

◆ optional_COMPILER_CLANG_VERSION

#define optional_COMPILER_CLANG_VERSION   0

Definition at line 278 of file optional-lite.hpp.

◆ optional_HAVE

#define optional_HAVE (   FEATURE)    ( optional_HAVE_##FEATURE )

Definition at line 291 of file optional-lite.hpp.

◆ optional_HAS_CPP0X

#define optional_HAS_CPP0X   0

Definition at line 296 of file optional-lite.hpp.

◆ optional_CPP11_90

#define optional_CPP11_90   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1500)

Definition at line 306 of file optional-lite.hpp.

◆ optional_CPP11_100

#define optional_CPP11_100   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1600)

Definition at line 307 of file optional-lite.hpp.

◆ optional_CPP11_110

#define optional_CPP11_110   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1700)

Definition at line 308 of file optional-lite.hpp.

◆ optional_CPP11_120

#define optional_CPP11_120   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1800)

Definition at line 309 of file optional-lite.hpp.

◆ optional_CPP11_140

#define optional_CPP11_140   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1900)

Definition at line 310 of file optional-lite.hpp.

◆ optional_CPP11_141

#define optional_CPP11_141   (optional_CPP11_OR_GREATER_ || optional_COMPILER_MSVC_VER >= 1910)

Definition at line 311 of file optional-lite.hpp.

◆ optional_CPP14_000

#define optional_CPP14_000   (optional_CPP14_OR_GREATER)

Definition at line 313 of file optional-lite.hpp.

◆ optional_CPP17_000

#define optional_CPP17_000   (optional_CPP17_OR_GREATER)

Definition at line 314 of file optional-lite.hpp.

◆ optional_CPP11_140_C290_G490

#define optional_CPP11_140_C290_G490   ((optional_CPP11_OR_GREATER_ && (optional_COMPILER_CLANG_VERSION >= 290 || optional_COMPILER_GNUC_VERSION >= 490)) || (optional_COMPILER_MSVC_VER >= 1900))

Definition at line 317 of file optional-lite.hpp.

◆ optional_CPP11_110_C350

#define optional_CPP11_110_C350   ( optional_CPP11_110 && !optional_BETWEEN( optional_COMPILER_CLANG_VERSION, 1, 350 ) )

Definition at line 320 of file optional-lite.hpp.

◆ optional_CPP11_110_C350_G500

#define optional_CPP11_110_C350_G500
Value:
#define optional_BETWEEN(v, lo, hi)
#define optional_COMPILER_CLANG_VERSION
#define optional_COMPILER_GNUC_VERSION
#define optional_CPP11_110

Definition at line 323 of file optional-lite.hpp.

◆ optional_HAVE_CONSTEXPR_11

#define optional_HAVE_CONSTEXPR_11   optional_CPP11_140

Definition at line 330 of file optional-lite.hpp.

◆ optional_HAVE_IS_DEFAULT

#define optional_HAVE_IS_DEFAULT   optional_CPP11_140

Definition at line 331 of file optional-lite.hpp.

◆ optional_HAVE_NOEXCEPT

#define optional_HAVE_NOEXCEPT   optional_CPP11_140

Definition at line 332 of file optional-lite.hpp.

◆ optional_HAVE_NULLPTR

#define optional_HAVE_NULLPTR   optional_CPP11_100

Definition at line 333 of file optional-lite.hpp.

◆ optional_HAVE_REF_QUALIFIER

#define optional_HAVE_REF_QUALIFIER   optional_CPP11_140_C290_G490

Definition at line 334 of file optional-lite.hpp.

◆ optional_HAVE_STATIC_ASSERT

#define optional_HAVE_STATIC_ASSERT   optional_CPP11_110

Definition at line 335 of file optional-lite.hpp.

◆ optional_HAVE_INITIALIZER_LIST

#define optional_HAVE_INITIALIZER_LIST   optional_CPP11_140

Definition at line 336 of file optional-lite.hpp.

◆ optional_HAVE_CONSTEXPR_14

#define optional_HAVE_CONSTEXPR_14   optional_CPP14_000

Definition at line 340 of file optional-lite.hpp.

◆ optional_HAVE_NODISCARD

#define optional_HAVE_NODISCARD   optional_CPP17_000

Definition at line 344 of file optional-lite.hpp.

◆ optional_HAVE_CONDITIONAL

#define optional_HAVE_CONDITIONAL   optional_CPP11_120

Definition at line 348 of file optional-lite.hpp.

◆ optional_HAVE_REMOVE_CV

#define optional_HAVE_REMOVE_CV   optional_CPP11_120

Definition at line 349 of file optional-lite.hpp.

◆ optional_HAVE_TYPE_TRAITS

#define optional_HAVE_TYPE_TRAITS   optional_CPP11_90

Definition at line 350 of file optional-lite.hpp.

◆ optional_HAVE_TR1_TYPE_TRAITS

#define optional_HAVE_TR1_TYPE_TRAITS   (!! optional_COMPILER_GNUC_VERSION )

Definition at line 352 of file optional-lite.hpp.

◆ optional_HAVE_TR1_ADD_POINTER

#define optional_HAVE_TR1_ADD_POINTER   (!! optional_COMPILER_GNUC_VERSION )

Definition at line 353 of file optional-lite.hpp.

◆ optional_HAVE_IS_ASSIGNABLE

#define optional_HAVE_IS_ASSIGNABLE   optional_CPP11_110_C350

Definition at line 355 of file optional-lite.hpp.

◆ optional_HAVE_IS_MOVE_CONSTRUCTIBLE

#define optional_HAVE_IS_MOVE_CONSTRUCTIBLE   optional_CPP11_110_C350

Definition at line 356 of file optional-lite.hpp.

◆ optional_HAVE_IS_NOTHROW_MOVE_ASSIGNABLE

#define optional_HAVE_IS_NOTHROW_MOVE_ASSIGNABLE   optional_CPP11_110_C350

Definition at line 357 of file optional-lite.hpp.

◆ optional_HAVE_IS_NOTHROW_MOVE_CONSTRUCTIBLE

#define optional_HAVE_IS_NOTHROW_MOVE_CONSTRUCTIBLE   optional_CPP11_110_C350

Definition at line 358 of file optional-lite.hpp.

◆ optional_HAVE_IS_TRIVIALLY_COPY_CONSTRUCTIBLE

#define optional_HAVE_IS_TRIVIALLY_COPY_CONSTRUCTIBLE   optional_CPP11_110_C350_G500

Definition at line 359 of file optional-lite.hpp.

◆ optional_HAVE_IS_TRIVIALLY_MOVE_CONSTRUCTIBLE

#define optional_HAVE_IS_TRIVIALLY_MOVE_CONSTRUCTIBLE   optional_CPP11_110_C350_G500

Definition at line 360 of file optional-lite.hpp.

◆ optional_constexpr

◆ optional_is_default

#define optional_is_default   {}

Definition at line 373 of file optional-lite.hpp.

◆ optional_constexpr14

◆ optional_nodiscard

#define optional_nodiscard   /*[[nodiscard]]*/

◆ optional_noexcept

#define optional_noexcept   /*noexcept*/

◆ optional_nullptr

#define optional_nullptr   NULL

Definition at line 397 of file optional-lite.hpp.

◆ optional_ref_qual

#define optional_ref_qual   /*&*/

Definition at line 405 of file optional-lite.hpp.

Referenced by nonstd::optional_lite::optional< T >::value().

◆ optional_refref_qual

◆ optional_static_assert

#define optional_static_assert (   expr,
  text 
)    /*static_assert(expr, text);*/

Definition at line 412 of file optional-lite.hpp.

Referenced by nonstd::optional_lite::nullopt_t::nullopt_t().

◆ optional_ALIGN_AS

#define optional_ALIGN_AS (   to_align)    typename type_of_size< alignment_types, alignment_of< to_align >::value >::type

◆ optional_ALIGN_TYPE

#define optional_ALIGN_TYPE (   type)    typelist< type , typelist< struct_t< type >

Definition at line 718 of file optional-lite.hpp.