Agora C++ API Reference for All Platforms
agora::internal::OptionalStorageBase< T > Struct Template Reference

#include <AgoraOptional.h>

Inherited by agora::internal::OptionalStorage< T >.

Public Member Functions

CONSTEXPR OptionalStorageBase ()
 
template<class... Args>
CONSTEXPR OptionalStorageBase (in_place_t, Args &&... args)
 
CONSTEXPR OptionalStorageBase (in_place_t, const T &_value)
 
 ~OptionalStorageBase ()
 
template<class... Args>
void Init (Args &&... args)
 
void Init (const T &_value)
 

Public Attributes

bool is_populated_
 
union {
   char   empty_
 
   T   value_
 
}; 
 

Constructor & Destructor Documentation

◆ OptionalStorageBase() [1/3]

template<typename T >
CONSTEXPR agora::internal::OptionalStorageBase< T >::OptionalStorageBase ( )
inline

◆ OptionalStorageBase() [2/3]

template<typename T >
template<class... Args>
CONSTEXPR agora::internal::OptionalStorageBase< T >::OptionalStorageBase ( in_place_t  ,
Args &&...  args 
)
inlineexplicit

◆ OptionalStorageBase() [3/3]

template<typename T >
CONSTEXPR agora::internal::OptionalStorageBase< T >::OptionalStorageBase ( in_place_t  ,
const T &  _value 
)
inlineexplicit

◆ ~OptionalStorageBase()

template<typename T >
agora::internal::OptionalStorageBase< T >::~OptionalStorageBase ( )
inline

Member Function Documentation

◆ Init() [1/2]

template<typename T >
template<class... Args>
void agora::internal::OptionalStorageBase< T >::Init ( Args &&...  args)
inline

◆ Init() [2/2]

template<typename T >
void agora::internal::OptionalStorageBase< T >::Init ( const T &  _value)
inline

Member Data Documentation

◆ is_populated_

template<typename T >
bool agora::internal::OptionalStorageBase< T >::is_populated_

◆ empty_

template<typename T >
char agora::internal::OptionalStorageBase< T >::empty_

◆ value_

template<typename T >
T agora::internal::OptionalStorageBase< T >::value_

◆ 

union { ... } agora::internal::OptionalStorageBase< T >::@1