iceberg-cpp
Loading...
Searching...
No Matches
Public Member Functions | List of all members
iceberg::expected_detail::copy_assign_base< T, E, Enabled, Trivially > Struct Template Reference
Inheritance diagram for iceberg::expected_detail::copy_assign_base< T, E, Enabled, Trivially >:
iceberg::expected_detail::move_ctor_base< T, E, Enabled, Trivially > iceberg::expected_detail::copy_ctor_base< T, E, Enabled, Trivially > iceberg::expected_detail::operations_base< T, E > iceberg::expected_detail::storage_base< T, E, bool > iceberg::expected_detail::move_assign_base< void, E > iceberg::expected_detail::move_assign_base< T, E, Enabled, Trivially > iceberg::expected_detail::move_assign_base< T, E, false, false > iceberg::expected_detail::move_assign_base< T, E, true, false > iceberg::expected< void, E > iceberg::expected< T > iceberg::expected< T, E >

Public Member Functions

 copy_assign_base (const copy_assign_base &rhs)=default
 
 copy_assign_base (copy_assign_base &&rhs)=default
 
copy_assign_base & operator= (const copy_assign_base &rhs)=default
 
copy_assign_base & operator= (copy_assign_base &&rhs)=default
 
- Public Member Functions inherited from iceberg::expected_detail::operations_base< T, E >
constexpr T & get () &noexcept
 
constexpr const T & get () const &noexcept
 
constexpr T && get () &&noexcept(std::is_nothrow_move_constructible_v< T >)
 
constexpr const T && get () const &&noexcept(std::is_nothrow_move_constructible_v< T >)
 
constexpr E & geterr () &noexcept
 
constexpr const E & geterr () const &noexcept
 
constexpr E && geterr () &&noexcept(std::is_nothrow_move_constructible_v< E >)
 
constexpr const E && geterr () const &&noexcept(std::is_nothrow_move_constructible_v< E >)
 
- Public Member Functions inherited from iceberg::expected_detail::storage_base< T, E, bool >
 storage_base (storage_base const &)=default
 
 storage_base (storage_base &&)=default
 
storage_base & operator= (storage_base const &)=default
 
storage_base & operator= (storage_base &&)=default
 
template<class Rhs >
constexpr storage_base (construct_from_expected_t, Rhs &&rhs) noexcept(std::is_nothrow_constructible_v< T, decltype(expected_detail::expected_source_value(std::declval< Rhs >()))> &&std::is_nothrow_constructible_v< E, decltype(expected_detail::expected_source_error(std::declval< Rhs >()))>)
 
template<class... Args, std::enable_if_t< std::is_constructible_v< T, Args &&... > > * = nullptr>
constexpr storage_base (std::in_place_t, Args &&... args) noexcept(noexcept(T(std::forward< Args >(args)...)))
 
template<class U , class... Args, std::enable_if_t< std::is_constructible_v< T, std::initializer_list< U > &, Args &&... > > * = nullptr>
constexpr storage_base (std::in_place_t, std::initializer_list< U > il, Args &&... args) noexcept(noexcept(T(il, std::forward< Args >(args)...)))
 
template<class... Args, std::enable_if_t< std::is_constructible_v< E, Args &&... > > * = nullptr>
constexpr storage_base (unexpect_t, Args &&... args) noexcept(noexcept(E(std::forward< Args >(args)...)))
 
template<class U , class... Args, std::enable_if_t< std::is_constructible_v< E, std::initializer_list< U > &, Args &&... > > * = nullptr>
constexpr storage_base (unexpect_t, std::initializer_list< U > il, Args &&... args) noexcept(noexcept(E(il, std::forward< Args >(args)...)))
 
template<class Fn , class... Args>
constexpr storage_base (construct_with_invoke_result_t, Fn &&func, Args &&... args) noexcept(noexcept(static_cast< T >(std::invoke(std::forward< Fn >(func), std::forward< Args >(args)...))))
 
template<class Fn , class... Args>
constexpr storage_base (construct_with_invoke_result_t, unexpect_t, Fn &&func, Args &&... args) noexcept(noexcept(static_cast< E >(std::invoke(std::forward< Fn >(func), std::forward< Args >(args)...))))
 

Additional Inherited Members

- Public Attributes inherited from iceberg::expected_detail::storage_base< T, E, bool >
union { 
 
   T   m_val 
 
   E   m_unexpect 
 
   char   m_dummy 
 
};  
 
bool m_has_val
 

The documentation for this struct was generated from the following file: