LIEF: Library to Instrument Executable Formats Version 1.0.0
Loading...
Searching...
No Matches
tl::detail::expected_operations_base< T, E > Struct Template Reference

#include <expected.hpp>

Inheritance diagram for tl::detail::expected_operations_base< T, E >:
Collaboration diagram for tl::detail::expected_operations_base< T, E >:

Public Member Functions

template<class... Args>
void construct (Args &&...args) noexcept
template<class Rhs>
void construct_with (Rhs &&rhs) noexcept
template<class... Args>
void construct_error (Args &&...args) noexcept
void assign (const expected_operations_base &rhs) noexcept
void assign (expected_operations_base &&rhs) noexcept
template<class Rhs>
void assign_common (Rhs &&rhs)
bool has_value () const
constexpr T & get () &
constexpr const T & get () const &
constexpr T && get () &&
constexpr const T && get () const &&
constexpr unexpected< E > & geterr () &
constexpr const unexpected< E > & geterr () const &
constexpr unexpected< E > && geterr () &&
constexpr const unexpected< E > && geterr () const &&
constexpr void destroy_val ()
Public Member Functions inherited from tl::detail::expected_storage_base< T, E, bool, bool >
constexpr expected_storage_base ()
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)
 ~expected_storage_base ()

Additional Inherited Members

Public Attributes inherited from tl::detail::expected_storage_base< T, E, bool, bool >
union { 
   T   m_val 
   unexpected< E >   m_unexpect 
   char   m_no_init 
}; 
bool m_has_val

Member Function Documentation

◆ assign() [1/2]

◆ assign() [2/2]

template<class T, class E>
void tl::detail::expected_operations_base< T, E >::assign ( expected_operations_base< T, E > && rhs)
inlinenoexcept

◆ assign_common()

template<class T, class E>
template<class Rhs>
void tl::detail::expected_operations_base< T, E >::assign_common ( Rhs && rhs)
inline

◆ construct()

◆ construct_error()

template<class T, class E>
template<class... Args>
void tl::detail::expected_operations_base< T, E >::construct_error ( Args &&... args)
inlinenoexcept

◆ construct_with()

template<class T, class E>
template<class Rhs>
void tl::detail::expected_operations_base< T, E >::construct_with ( Rhs && rhs)
inlinenoexcept

◆ destroy_val()

template<class T, class E>
void tl::detail::expected_operations_base< T, E >::destroy_val ( )
inlineconstexpr

◆ get() [1/4]

◆ get() [2/4]

template<class T, class E>
T && tl::detail::expected_operations_base< T, E >::get ( ) &&
inlineconstexpr

◆ get() [3/4]

template<class T, class E>
const T & tl::detail::expected_operations_base< T, E >::get ( ) const &
inlineconstexpr

◆ get() [4/4]

template<class T, class E>
const T && tl::detail::expected_operations_base< T, E >::get ( ) const &&
inlineconstexpr

◆ geterr() [1/4]

◆ geterr() [2/4]

template<class T, class E>
unexpected< E > && tl::detail::expected_operations_base< T, E >::geterr ( ) &&
inlineconstexpr

◆ geterr() [3/4]

template<class T, class E>
const unexpected< E > & tl::detail::expected_operations_base< T, E >::geterr ( ) const &
inlineconstexpr

◆ geterr() [4/4]

template<class T, class E>
const unexpected< E > && tl::detail::expected_operations_base< T, E >::geterr ( ) const &&
inlineconstexpr

◆ has_value()


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