Classes | Namespaces | Defines | 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

namespace  nonstd
namespace  nonstd::detail
namespace  std

Defines

#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

Define 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.

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.

Definition at line 167 of file expected.hpp.

Definition at line 163 of file expected.hpp.

Definition at line 161 of file expected.hpp.

Definition at line 166 of file expected.hpp.

Definition at line 162 of file expected.hpp.

Definition at line 258 of file expected.hpp.

Definition at line 264 of file expected.hpp.

#define nsel_COMPILER_MSVC_VER   0

Definition at line 249 of file expected.hpp.

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.

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

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 20:17:15