Class Variant

Inheritance Relationships

Derived Type

Class Documentation

class Variant

Class that can hold either a bool, double, (u)int(34|64) or a string.

Subclassed by nix::Cell

Public Functions

inline Variant()
inline explicit Variant(char *value)
inline explicit Variant(const char *value)
template<typename T>
inline explicit Variant(const T &value)
template<size_t N>
inline explicit Variant(const char (&value)[N])
inline Variant(const Variant &other)
inline  Variant (Variant &&other) NOEXCEPT
inline Variant &operator=(Variant other)
inline virtual ~Variant()
void set(none_t)
void set(bool value)
void set(int32_t value)
void set(uint32_t value)
void set(int64_t value)
void set(uint64_t value)
void set(double value)
void set(const char *value, const size_t len)
void set(const char *value)
void set(const std::string &value)
template<typename T>
inline T get() const
void get(none_t &tag) const
void get(bool &out) const
void get(int32_t &value) const
void get(uint32_t &value) const
void get(int64_t &value) const
void get(uint64_t &value) const
void get(double &value) const
void get(std::string &value) const
inline DataType type() const
void swap(Variant &other)
template<>
inline const char *get() const
template<>
inline none_t get() const

Public Members

bool v_bool
double v_double
uint32_t v_uint32
int32_t v_int32
uint64_t v_uint64
int64_t v_int64
char *v_string

Public Static Functions

static bool supports_type(DataType dtype)