Classes | Namespaces | Macros | Functions
expected.hpp File Reference
#include <cstddef>
#include <cassert>
#include <exception>
#include <functional>
#include <initializer_list>
#include <new>
#include <stdexcept>
#include <system_error>
#include <type_traits>
#include <utility>
Include dependency graph for expected.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  std::hash< nonstd::expected< T &, E > >
 
struct  std::hash< nonstd::expected< T, E > >
 
struct  std::hash< nonstd::expected< void, E > >
 
struct  nonstd::detail::in_place_index_tag< K >
 
struct  nonstd::in_place_t
 
struct  nonstd::detail::in_place_type_tag< T >
 

Namespaces

 nonstd
 
 nonstd::detail
 
 std
 

Macros

#define expected_lite_MAJOR   0
 
#define expected_lite_MINOR   2
 
#define expected_lite_PATCH   0
 
#define expected_lite_VERSION   expected_STRINGIFY(expected_lite_MAJOR) "." expected_STRINGIFY(expected_lite_MINOR) "." expected_STRINGIFY(expected_lite_PATCH)
 
#define expected_STRINGIFY(x)   expected_STRINGIFY_( x )
 
#define expected_STRINGIFY_(x)   #x
 
#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> )
 
#define nsel_COMPILER_CLANG_VERSION   0
 
#define nsel_COMPILER_GNUC_VERSION   0
 
#define nsel_COMPILER_MSVC_VER   0
 
#define nsel_COMPILER_MSVC_VERSION   0
 
#define nsel_COMPILER_VERSION(major, minor, patch)   ( 10 * ( 10 * (major) + (minor) ) + (patch) )
 
#define nsel_CONFIG_SELECT_EXPECTED   ( nsel_HAVE_STD_EXPECTED ? nsel_EXPECTED_STD : nsel_EXPECTED_NONSTD )
 
#define nsel_constexpr   /*constexpr*/
 
#define nsel_constexpr14   /*constexpr*/
 
#define nsel_CPLUSPLUS   __cplusplus
 
#define nsel_CPP11_OR_GREATER   ( nsel_CPLUSPLUS >= 201103L )
 
#define nsel_CPP14_OR_GREATER   ( nsel_CPLUSPLUS >= 201402L )
 
#define nsel_CPP17_OR_GREATER   ( nsel_CPLUSPLUS >= 201703L )
 
#define nsel_CPP20_OR_GREATER   ( nsel_CPLUSPLUS >= 202000L )
 
#define nsel_CPP98_OR_GREATER   ( nsel_CPLUSPLUS >= 199711L )
 
#define nsel_DISABLE_MSVC_WARNINGS(codes)
 
#define nsel_EXPECTED_DEFAULT   0
 
#define nsel_EXPECTED_NONSTD   1
 
#define nsel_EXPECTED_STD   2
 
#define nsel_HAS_CPP0X   0
 
#define nsel_HAVE_STD_EXPECTED   0
 
#define nsel_inline17   /*inline*/
 
#define nsel_P0323R   5
 
#define nsel_REQUIRES_0(...)   template< bool B = (__VA_ARGS__), typename std::enable_if<B, int>::type = 0 >
 
#define nsel_REQUIRES_A(...)   , typename std::enable_if<__VA_ARGS__, void*>::type = nullptr
 
#define nsel_REQUIRES_R(R, ...)   typename std::enable_if<__VA_ARGS__, R>::type
 
#define nsel_REQUIRES_T(...)   , typename = typename std::enable_if< (__VA_ARGS__), nonstd::expected_lite::detail::enabler >::type
 
#define nsel_RESTORE_WARNINGS()
 
#define nsel_USES_STD_EXPECTED   ( (nsel_CONFIG_SELECT_EXPECTED == nsel_EXPECTED_STD) || ((nsel_CONFIG_SELECT_EXPECTED == nsel_EXPECTED_DEFAULT) && nsel_HAVE_STD_EXPECTED) )
 

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<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 >())
 
 nsel_DISABLE_MSVC_WARNINGS (26409) namespace nonstd
 

Macro Definition Documentation

#define expected_lite_MAJOR   0

Definition at line 15 of file expected.hpp.

#define expected_lite_MINOR   2

Definition at line 16 of file expected.hpp.

#define expected_lite_PATCH   0

Definition at line 17 of file expected.hpp.

Definition at line 19 of file expected.hpp.

#define expected_STRINGIFY (   x)    expected_STRINGIFY_( x )

Definition at line 21 of file expected.hpp.

#define expected_STRINGIFY_ (   x)    #x

Definition at line 22 of file expected.hpp.

#define nonstd_lite_HAVE_IN_PLACE_TYPES   1

Definition at line 91 of file expected.hpp.

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

Definition at line 165 of file expected.hpp.

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

Definition at line 167 of file expected.hpp.

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

Definition at line 163 of file expected.hpp.

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

Definition at line 161 of file expected.hpp.

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

Definition at line 166 of file expected.hpp.

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

Definition at line 162 of file expected.hpp.

#define nsel_COMPILER_CLANG_VERSION   0

Definition at line 258 of file expected.hpp.

#define nsel_COMPILER_GNUC_VERSION   0

Definition at line 264 of file expected.hpp.

#define nsel_COMPILER_MSVC_VER   0

Definition at line 249 of file expected.hpp.

#define nsel_COMPILER_MSVC_VERSION   0

Definition at line 250 of file expected.hpp.

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

Definition at line 253 of file expected.hpp.

#define nsel_CONFIG_SELECT_EXPECTED   ( nsel_HAVE_STD_EXPECTED ? nsel_EXPECTED_STD : nsel_EXPECTED_NONSTD )

Definition at line 31 of file expected.hpp.

#define nsel_constexpr   /*constexpr*/

Definition at line 203 of file expected.hpp.

#define nsel_constexpr14   /*constexpr*/

Definition at line 209 of file expected.hpp.

#define nsel_CPLUSPLUS   __cplusplus

Definition at line 62 of file expected.hpp.

#define nsel_CPP11_OR_GREATER   ( nsel_CPLUSPLUS >= 201103L )

Definition at line 67 of file expected.hpp.

#define nsel_CPP14_OR_GREATER   ( nsel_CPLUSPLUS >= 201402L )

Definition at line 68 of file expected.hpp.

#define nsel_CPP17_OR_GREATER   ( nsel_CPLUSPLUS >= 201703L )

Definition at line 69 of file expected.hpp.

#define nsel_CPP20_OR_GREATER   ( nsel_CPLUSPLUS >= 202000L )

Definition at line 70 of file expected.hpp.

#define nsel_CPP98_OR_GREATER   ( nsel_CPLUSPLUS >= 199711L )

Definition at line 66 of file expected.hpp.

#define nsel_DISABLE_MSVC_WARNINGS (   codes)

Definition at line 292 of file expected.hpp.

#define nsel_EXPECTED_DEFAULT   0

Definition at line 26 of file expected.hpp.

#define nsel_EXPECTED_NONSTD   1

Definition at line 27 of file expected.hpp.

#define nsel_EXPECTED_STD   2

Definition at line 28 of file expected.hpp.

#define nsel_HAS_CPP0X   0

Definition at line 275 of file expected.hpp.

#define nsel_HAVE_STD_EXPECTED   0

Definition at line 81 of file expected.hpp.

#define nsel_inline17   /*inline*/

Definition at line 215 of file expected.hpp.

#define nsel_P0323R   5

Definition at line 52 of file expected.hpp.

#define nsel_REQUIRES_0 (   ...)    template< bool B = (__VA_ARGS__), typename std::enable_if<B, int>::type = 0 >

Definition at line 223 of file expected.hpp.

#define nsel_REQUIRES_A (   ...)    , typename std::enable_if<__VA_ARGS__, void*>::type = nullptr

Definition at line 220 of file expected.hpp.

#define nsel_REQUIRES_R (   R,
  ... 
)    typename std::enable_if<__VA_ARGS__, R>::type

Definition at line 226 of file expected.hpp.

#define nsel_REQUIRES_T (   ...)    , typename = typename std::enable_if< (__VA_ARGS__), nonstd::expected_lite::detail::enabler >::type

Definition at line 229 of file expected.hpp.

#define nsel_RESTORE_WARNINGS ( )

Definition at line 302 of file expected.hpp.

Definition at line 84 of file expected.hpp.

Function Documentation

nsel_DISABLE_MSVC_WARNINGS ( 26409  )

for nsel_REQUIRES_T

discriminated union to hold value or 'error'.

discriminated union to hold only 'error'.

// x.x.3 Unexpected object type; unexpected_type; C++17 and later can also use aliased type unexpected.

class unexpected_type, std::exception_ptr specialization (P0323R2)

x.x.4, Unexpected equality operators

unexpect tag, in_place_unexpected tag: construct an error

expected access error

class error_traits

class expected

class expected, void specialization

x.x.x Specialized algorithms

Definition at line 308 of file expected.hpp.



behaviortree_cpp
Author(s): Michele Colledanchise, Davide Faconti
autogenerated on Sat Jun 8 2019 18:04:05