carb::variant
- 
namespace variant
- Namespace for carb.variant.plugin and related utilities. 
Classes
- carb::variant::Registrar: Lifetime management wrapper for IVariant::registerType() . 
- carb::variant::Variant: A wrapper class for managing the lifetime of VariantData and converting the contained value to C++ types. 
- carb::variant::VariantArray: An array-of-variants type that can itself be contained in a Variant . 
- carb::variant::VariantMap: An associative array (i.e. 
Functions
- carb::variant::translate: A helper function to translate a typed value into a VariantData via a Translator . 
Structs
- carb::variant::IVariant: Interface for carb.variant.plugin 
- carb::variant::KeyValuePair: A representation of a key value pair, similar to - std::pair<const Variant, Variant>.
- carb::variant::Translator: Default implementation of a Translator type. 
- carb::variant::VTable: A v-table definition for a variant type. Each registered type has a unique v-table pointer that is retrievable via IVariant::getVTable() . Each entry in the v-table is a function with a default behavior if - nullptr.
- carb::variant::VariantData: A standard-layout. 
- carb::variant::traits: A structure containing functions for performing the prescribed actions on a VariantData . The functions handle the default behavior if the v-table or v-table function are - nullptr.
Typedefs
- carb::variant::VariantArrayPtr: Helper definition. 
- carb::variant::VariantMapPtr: Helper definition. 
Variables
- carb::variant::eBool: Represents - bool.
- carb::variant::eCharPtr: Represents - char*or- const char*
- carb::variant::eDictionary: Represents - dictionary::Item.
- carb::variant::eDouble: Represents - double.
- carb::variant::eFloat: Represents - float.
- carb::variant::eInt16: Represents - int16_tor- short
- carb::variant::eInt32: Represents - int32_tor- int
- carb::variant::eInt64: Represents - int64_tor- long long
- carb::variant::eInt8: Represents - int8_tor- signed char
- carb::variant::eNull: Represents - nullptr.
- carb::variant::eRString: Represents - RString.
- carb::variant::eRStringKey: Represents - RStringKey.
- carb::variant::eRStringU: Represents - RStringU.
- carb::variant::eRStringUKey: Represents - RStringUKey.
- carb::variant::eString: Represents - omni::string.
- carb::variant::eUInt16: Represents - uint16_tor- unsigned short
- carb::variant::eUInt32: Represents - uint32_tor- unsigned int
- carb::variant::eUInt64: Represents - uint64_tor- unsigned long long
- carb::variant::eUInt8: Represents - uint8_tor- unsigned char
- carb::variant::eVariantArray: Represents - VariantArray*.
- carb::variant::eVariantMap: Represents - VariantMap*.
- carb::variant::eVariantPair: Represents - std::pair<Variant, Variant>