RESTinio
Classes | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
nonstd::optional_lite::detail::storage_t< T > Union Template Reference

C++03 constructed union to hold value. More...

#include <optional.hpp>

Classes

struct  aligned_storage_t
 

Private Types

typedef T value_type
 

Private Member Functions

 storage_t ()
 
 storage_t (value_type const &v)
 
void construct_value (value_type const &v)
 
void destruct_value ()
 
value_type constvalue_ptr () const
 
value_typevalue_ptr ()
 
value_type constvalue () const optional_ref_qual
 
value_typevalue () optional_ref_qual
 
typedef optional_ALIGN_AS (value_type) align_as_type
 
void * ptr () optional_noexcept
 
void constptr () const optional_noexcept
 
template<typename U >
U * as ()
 
template<typename U >
U constas () const
 

Private Attributes

aligned_storage_t data
 

Friends

class optional< T >
 

Detailed Description

template<typename T>
union nonstd::optional_lite::detail::storage_t< T >

C++03 constructed union to hold value.

Definition at line 508 of file optional.hpp.

Member Typedef Documentation

◆ value_type

template<typename T>
typedef T nonstd::optional_lite::detail::storage_t< T >::value_type
private

Definition at line 513 of file optional.hpp.

Constructor & Destructor Documentation

◆ storage_t() [1/2]

template<typename T>
nonstd::optional_lite::detail::storage_t< T >::storage_t ( )
inlineprivate

Definition at line 515 of file optional.hpp.

◆ storage_t() [2/2]

template<typename T>
nonstd::optional_lite::detail::storage_t< T >::storage_t ( value_type const v)
inlineprivate

Definition at line 517 of file optional.hpp.

Member Function Documentation

◆ as() [1/2]

template<typename T>
template<typename U >
U* nonstd::optional_lite::detail::storage_t< T >::as ( )
inlineprivate

Definition at line 625 of file optional.hpp.

◆ as() [2/2]

template<typename T>
template<typename U >
U const* nonstd::optional_lite::detail::storage_t< T >::as ( ) const
inlineprivate

Definition at line 631 of file optional.hpp.

◆ construct_value()

template<typename T>
void nonstd::optional_lite::detail::storage_t< T >::construct_value ( value_type const v)
inlineprivate

Definition at line 522 of file optional.hpp.

◆ destruct_value()

template<typename T>
void nonstd::optional_lite::detail::storage_t< T >::destruct_value ( )
inlineprivate

Definition at line 553 of file optional.hpp.

◆ optional_ALIGN_AS()

template<typename T>
typedef nonstd::optional_lite::detail::storage_t< T >::optional_ALIGN_AS ( value_type  )
private

◆ ptr() [1/2]

template<typename T>
void* nonstd::optional_lite::detail::storage_t< T >::ptr ( )
inlineprivate

Definition at line 614 of file optional.hpp.

◆ ptr() [2/2]

template<typename T>
void const* nonstd::optional_lite::detail::storage_t< T >::ptr ( ) const
inlineprivate

Definition at line 619 of file optional.hpp.

◆ value() [1/2]

template<typename T>
value_type const& nonstd::optional_lite::detail::storage_t< T >::value ( ) const
inlineprivate

Definition at line 568 of file optional.hpp.

◆ value() [2/2]

template<typename T>
value_type& nonstd::optional_lite::detail::storage_t< T >::value ( )
inlineprivate

Definition at line 573 of file optional.hpp.

◆ value_ptr() [1/2]

template<typename T>
value_type const* nonstd::optional_lite::detail::storage_t< T >::value_ptr ( ) const
inlineprivate

Definition at line 558 of file optional.hpp.

◆ value_ptr() [2/2]

template<typename T>
value_type* nonstd::optional_lite::detail::storage_t< T >::value_ptr ( )
inlineprivate

Definition at line 563 of file optional.hpp.

Friends And Related Function Documentation

◆ optional< T >

template<typename T>
friend class optional< T >
friend

Definition at line 511 of file optional.hpp.

Member Data Documentation

◆ data

template<typename T>
aligned_storage_t nonstd::optional_lite::detail::storage_t< T >::data
private

Definition at line 608 of file optional.hpp.


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