M5Utility 0.0.2 git rev:5c1a751
Loading...
Searching...
No Matches
m5::stl::detail::expected_storage_base< T, E, bool, bool > Struct Template Reference
Inheritance diagram for m5::stl::detail::expected_storage_base< T, E, bool, bool >:
m5::stl::detail::expected_operations_base< T, E > m5::stl::detail::expected_copy_base< T, E, bool > m5::stl::detail::expected_copy_base< T, E, false > m5::stl::detail::expected_move_base< T, E, bool > m5::stl::detail::expected_move_base< T, E, false > m5::stl::detail::expected_copy_assign_base< T, E, bool > m5::stl::detail::expected_copy_assign_base< T, E, false > m5::stl::detail::expected_move_assign_base< T, E, bool > m5::stl::detail::expected_move_assign_base< T, E, false > m5::stl::expected< T, E >

Public Member Functions

constexpr expected_storage_base (no_init_t)
 
template<class... Args, detail::enable_if_t< std::is_constructible< T, Args &&... >::value > * = nullptr>
constexpr expected_storage_base (in_place_t, Args &&...args)
 
template<class U , class... Args, detail::enable_if_t< std::is_constructible< T, std::initializer_list< U > &, Args &&... >::value > * = nullptr>
constexpr expected_storage_base (in_place_t, std::initializer_list< U > il, Args &&...args)
 
template<class... Args, detail::enable_if_t< std::is_constructible< E, Args &&... >::value > * = nullptr>
constexpr expected_storage_base (unexpect_t, Args &&...args)
 
template<class U , class... Args, detail::enable_if_t< std::is_constructible< E, std::initializer_list< U > &, Args &&... >::value > * = nullptr>
constexpr expected_storage_base (unexpect_t, std::initializer_list< U > il, Args &&...args)
 

Public Attributes

union { 
 
   T   m_val 
 
   unexpected< E >   m_unexpect 
 
   char   m_no_init 
 
};  
 
bool m_has_val