GATE
gate::Optional< T > Class Template Reference
Inheritance diagram for gate::Optional< T >:
gate::SafeBoolBase< Optional< T > >

Public Types

typedef T value_t
 
typedef T * ptr_t
 
typedef T const * const_ptr_t
 
typedef T & ref_t
 
typedef T const & const_ref_t
 
typedef Optional< T > self_t
 
- Public Types inherited from gate::SafeBoolBase< Optional< T > >
typedef void(SafeBoolBase::* bool_type) () const
 

Public Member Functions

void reset () noexcept
 
self_tcreate ()
 
self_tcreate (const_ref_t src)
 
template<class A1 >
void emplace (A1 &a1)
 
template<class A1 , class A2 >
void emplace (A1 &a1, A2 &a2)
 
template<class A1 , class A2 , class A3 >
void emplace (A1 &a1, A2 &a2, A3 &a3)
 
template<class A1 , class A2 , class A3 , class A4 >
void emplace (A1 &a1, A2 &a2, A3 &a3, A4 &a4)
 
template<class A1 , class A2 , class A3 , class A4 , class A5 >
void emplace (A1 &a1, A2 &a2, A3 &a3, A4 &a4, A5 &a5)
 
template<class A1 , class A2 , class A3 , class A4 , class A5 , class A6 >
void emplace (A1 &a1, A2 &a2, A3 &a3, A4 &a4, A5 &a5, A6 &a6)
 
ptr_t get () const noexcept
 
bool_t empty () const noexcept
 
bool_t hasValue () const noexcept
 
ref_t value () noexcept
 
const_ref_t value () const noexcept
 
const_ref_t value (const_ref_t defaultValue) const
 
ptr_t operator-> () noexcept
 
const_ptr_t operator-> () const noexcept
 
ref_t operator* () noexcept
 
const_ref_t operator* () const noexcept
 
self_t const & andThen (Delegate1< value_t & > const &callback) const
 
self_t const & orElse (Delegate0 const &callback) const
 
self_t const & orThrow () const
 
bool_t operator! () const noexcept
 
 Optional (self_t const &src)
 
self_toperator= (self_t const &src)
 
- Public Member Functions inherited from gate::SafeBoolBase< Optional< T > >
 operator bool_type () const
 

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