MySQL 9.3.0
Source Code Documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
helper::VariantPointer Class Reference

#include <variant_pointer.h>

Public Types

enum  Type { kTypeNone , kTypeString , kTypeInteger , kTypeSeconds }
 
using seconds = std::chrono::seconds
 

Public Member Functions

 VariantPointer (std::string *output)
 
 VariantPointer (int *output)
 
 VariantPointer (std::chrono::seconds *output)
 
void operator= (const std::string &v)
 
VariantPointeroperator* ()
 
void set (const std::string &v)
 
template<typename Callback >
void dispatch_value (Callback &cb)
 

Private Attributes

Type type_ {kTypeNone}
 
union {
   seconds *   oseconds_
 
   std::string *   ostring_
 
   int *   ointeger_
 
}; 
 

Member Typedef Documentation

◆ seconds

using helper::VariantPointer::seconds = std::chrono::seconds

Member Enumeration Documentation

◆ Type

Enumerator
kTypeNone 
kTypeString 
kTypeInteger 
kTypeSeconds 

Constructor & Destructor Documentation

◆ VariantPointer() [1/3]

helper::VariantPointer::VariantPointer ( std::string *  output)
inline

◆ VariantPointer() [2/3]

helper::VariantPointer::VariantPointer ( int *  output)
inline

◆ VariantPointer() [3/3]

helper::VariantPointer::VariantPointer ( std::chrono::seconds output)
inline

Member Function Documentation

◆ dispatch_value()

template<typename Callback >
void helper::VariantPointer::dispatch_value ( Callback cb)
inline

◆ operator*()

VariantPointer & helper::VariantPointer::operator* ( )
inline

◆ operator=()

void helper::VariantPointer::operator= ( const std::string &  v)
inline

◆ set()

void helper::VariantPointer::set ( const std::string &  v)
inline

Member Data Documentation

◆ 

union { ... } helper::VariantPointer::@37

◆ ointeger_

int* helper::VariantPointer::ointeger_

◆ oseconds_

seconds* helper::VariantPointer::oseconds_

◆ ostring_

std::string* helper::VariantPointer::ostring_

◆ type_

Type helper::VariantPointer::type_ {kTypeNone}
private

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