Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET Apache Qpid Documentation
Public Types | Public Member Functions | Static Public Member Functions | List of all members
qpid::types::Variant Class Reference

Represents a value of variable type. More...

#include <qpid/types/Variant.h>

Public Types

typedef std::map< std::string, VariantMap
 
typedef std::list< VariantList
 

Public Member Functions

QPID_TYPES_EXTERN Variant ()
 
QPID_TYPES_EXTERN Variant (bool)
 
QPID_TYPES_EXTERN Variant (uint8_t)
 
QPID_TYPES_EXTERN Variant (uint16_t)
 
QPID_TYPES_EXTERN Variant (uint32_t)
 
QPID_TYPES_EXTERN Variant (uint64_t)
 
QPID_TYPES_EXTERN Variant (int8_t)
 
QPID_TYPES_EXTERN Variant (int16_t)
 
QPID_TYPES_EXTERN Variant (int32_t)
 
QPID_TYPES_EXTERN Variant (int64_t)
 
QPID_TYPES_EXTERN Variant (float)
 
QPID_TYPES_EXTERN Variant (double)
 
QPID_TYPES_EXTERN Variant (const std::string &)
 
QPID_TYPES_EXTERN Variant (const std::string &value, const std::string &encoding)
 
QPID_TYPES_EXTERN Variant (const char *)
 
QPID_TYPES_EXTERN Variant (const char *value, const char *encoding)
 
QPID_TYPES_EXTERN Variant (const Map &)
 
QPID_TYPES_EXTERN Variant (const List &)
 
QPID_TYPES_EXTERN Variant (const Variant &)
 
QPID_TYPES_EXTERN Variant (const Uuid &)
 
QPID_TYPES_EXTERN ~Variant ()
 
QPID_TYPES_EXTERN VariantType getType () const
 
QPID_TYPES_EXTERN bool isVoid () const
 
QPID_TYPES_EXTERN Variantoperator= (bool)
 
QPID_TYPES_EXTERN Variantoperator= (uint8_t)
 
QPID_TYPES_EXTERN Variantoperator= (uint16_t)
 
QPID_TYPES_EXTERN Variantoperator= (uint32_t)
 
QPID_TYPES_EXTERN Variantoperator= (uint64_t)
 
QPID_TYPES_EXTERN Variantoperator= (int8_t)
 
QPID_TYPES_EXTERN Variantoperator= (int16_t)
 
QPID_TYPES_EXTERN Variantoperator= (int32_t)
 
QPID_TYPES_EXTERN Variantoperator= (int64_t)
 
QPID_TYPES_EXTERN Variantoperator= (float)
 
QPID_TYPES_EXTERN Variantoperator= (double)
 
QPID_TYPES_EXTERN Variantoperator= (const std::string &)
 
QPID_TYPES_EXTERN Variantoperator= (const char *)
 
QPID_TYPES_EXTERN Variantoperator= (const Map &)
 
QPID_TYPES_EXTERN Variantoperator= (const List &)
 
QPID_TYPES_EXTERN Variantoperator= (const Variant &)
 
QPID_TYPES_EXTERN Variantoperator= (const Uuid &)
 
QPID_TYPES_EXTERN Variantparse (const std::string &)
 Parses the argument and assigns itself the appropriate value. More...
 
QPID_TYPES_EXTERN bool asBool () const
 
QPID_TYPES_EXTERN uint8_t asUint8 () const
 
QPID_TYPES_EXTERN uint16_t asUint16 () const
 
QPID_TYPES_EXTERN uint32_t asUint32 () const
 
QPID_TYPES_EXTERN uint64_t asUint64 () const
 
QPID_TYPES_EXTERN int8_t asInt8 () const
 
QPID_TYPES_EXTERN int16_t asInt16 () const
 
QPID_TYPES_EXTERN int32_t asInt32 () const
 
QPID_TYPES_EXTERN int64_t asInt64 () const
 
QPID_TYPES_EXTERN float asFloat () const
 
QPID_TYPES_EXTERN double asDouble () const
 
QPID_TYPES_EXTERN std::string asString () const
 
QPID_TYPES_EXTERN Uuid asUuid () const
 
QPID_TYPES_EXTERN operator bool () const
 
QPID_TYPES_EXTERN operator uint8_t () const
 
QPID_TYPES_EXTERN operator uint16_t () const
 
QPID_TYPES_EXTERN operator uint32_t () const
 
QPID_TYPES_EXTERN operator uint64_t () const
 
QPID_TYPES_EXTERN operator int8_t () const
 
QPID_TYPES_EXTERN operator int16_t () const
 
QPID_TYPES_EXTERN operator int32_t () const
 
QPID_TYPES_EXTERN operator int64_t () const
 
QPID_TYPES_EXTERN operator float () const
 
QPID_TYPES_EXTERN operator double () const
 
QPID_TYPES_EXTERN operator std::string () const
 
QPID_TYPES_EXTERN operator Uuid () const
 
QPID_TYPES_EXTERN const MapasMap () const
 
QPID_TYPES_EXTERN MapasMap ()
 
QPID_TYPES_EXTERN const ListasList () const
 
QPID_TYPES_EXTERN ListasList ()
 
QPID_TYPES_EXTERN const std::string & getString () const
 Unlike asString(), getString() will not do any conversions. More...
 
QPID_TYPES_EXTERN std::string & getString ()
 
QPID_TYPES_EXTERN void setEncoding (const std::string &)
 
QPID_TYPES_EXTERN const std::string & getEncoding () const
 
QPID_TYPES_EXTERN bool isEqualTo (const Variant &a) const
 
QPID_TYPES_EXTERN void reset ()
 Reset value to VOID, does not reset the descriptors. More...
 
QPID_TYPES_EXTERN bool isDescribed () const
 True if there is at least one descriptor associated with this variant. More...
 
QPID_TYPES_EXTERN Variant getDescriptor () const
 Get the first descriptor associated with this variant. More...
 
QPID_TYPES_EXTERN void setDescriptor (const Variant &descriptor)
 Set a single descriptor for this Variant. More...
 
QPID_TYPES_EXTERN ListgetDescriptors ()
 Return a modifiable list of descriptors for this Variant. More...
 
QPID_TYPES_EXTERN const ListgetDescriptors () const
 Return the list of descriptors for this Variant. More...
 

Static Public Member Functions

static QPID_TYPES_EXTERN Variant described (const Variant &descriptor, const Variant &value)
 Create a described value. More...
 
static QPID_TYPES_EXTERN Variant described (const Variant &descriptor, const List &value)
 Create a described list, a common special case. More...
 

Detailed Description

Represents a value of variable type.

Definition at line 73 of file Variant.h.

Member Typedef Documentation

◆ List

typedef std::list<Variant> qpid::types::Variant::List

Definition at line 77 of file Variant.h.

◆ Map

typedef std::map<std::string, Variant> qpid::types::Variant::Map

Definition at line 76 of file Variant.h.

Constructor & Destructor Documentation

◆ Variant() [1/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( )

◆ Variant() [2/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( bool  )

◆ Variant() [3/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( uint8_t  )

◆ Variant() [4/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( uint16_t  )

◆ Variant() [5/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( uint32_t  )

◆ Variant() [6/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( uint64_t  )

◆ Variant() [7/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( int8_t  )

◆ Variant() [8/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( int16_t  )

◆ Variant() [9/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( int32_t  )

◆ Variant() [10/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( int64_t  )

◆ Variant() [11/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( float  )

◆ Variant() [12/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( double  )

◆ Variant() [13/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( const std::string &  )

◆ Variant() [14/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( const std::string &  value,
const std::string &  encoding 
)

◆ Variant() [15/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( const char *  )

◆ Variant() [16/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( const char *  value,
const char *  encoding 
)

◆ Variant() [17/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( const Map )

◆ Variant() [18/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( const List )

◆ Variant() [19/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( const Variant )

◆ Variant() [20/20]

QPID_TYPES_EXTERN qpid::types::Variant::Variant ( const Uuid )

◆ ~Variant()

QPID_TYPES_EXTERN qpid::types::Variant::~Variant ( )

Member Function Documentation

◆ asBool()

QPID_TYPES_EXTERN bool qpid::types::Variant::asBool ( ) const

◆ asDouble()

QPID_TYPES_EXTERN double qpid::types::Variant::asDouble ( ) const

◆ asFloat()

QPID_TYPES_EXTERN float qpid::types::Variant::asFloat ( ) const

◆ asInt16()

QPID_TYPES_EXTERN int16_t qpid::types::Variant::asInt16 ( ) const

◆ asInt32()

QPID_TYPES_EXTERN int32_t qpid::types::Variant::asInt32 ( ) const

◆ asInt64()

QPID_TYPES_EXTERN int64_t qpid::types::Variant::asInt64 ( ) const

◆ asInt8()

QPID_TYPES_EXTERN int8_t qpid::types::Variant::asInt8 ( ) const

◆ asList() [1/2]

QPID_TYPES_EXTERN const List& qpid::types::Variant::asList ( ) const

◆ asList() [2/2]

QPID_TYPES_EXTERN List& qpid::types::Variant::asList ( )

◆ asMap() [1/2]

QPID_TYPES_EXTERN const Map& qpid::types::Variant::asMap ( ) const

◆ asMap() [2/2]

QPID_TYPES_EXTERN Map& qpid::types::Variant::asMap ( )

◆ asString()

QPID_TYPES_EXTERN std::string qpid::types::Variant::asString ( ) const

◆ asUint16()

QPID_TYPES_EXTERN uint16_t qpid::types::Variant::asUint16 ( ) const

◆ asUint32()

QPID_TYPES_EXTERN uint32_t qpid::types::Variant::asUint32 ( ) const

◆ asUint64()

QPID_TYPES_EXTERN uint64_t qpid::types::Variant::asUint64 ( ) const

◆ asUint8()

QPID_TYPES_EXTERN uint8_t qpid::types::Variant::asUint8 ( ) const

◆ asUuid()

QPID_TYPES_EXTERN Uuid qpid::types::Variant::asUuid ( ) const

◆ described() [1/2]

static QPID_TYPES_EXTERN Variant qpid::types::Variant::described ( const Variant descriptor,
const Variant value 
)
static

Create a described value.

◆ described() [2/2]

static QPID_TYPES_EXTERN Variant qpid::types::Variant::described ( const Variant descriptor,
const List value 
)
static

Create a described list, a common special case.

◆ getDescriptor()

QPID_TYPES_EXTERN Variant qpid::types::Variant::getDescriptor ( ) const

Get the first descriptor associated with this variant.

Normally there is at most one descriptor, when there are multiple descriptors use getDescriptors()

Returns
The first descriptor or VOID if there is no descriptor.
See also
isDescribed, getDescriptors

◆ getDescriptors() [1/2]

QPID_TYPES_EXTERN List& qpid::types::Variant::getDescriptors ( )

Return a modifiable list of descriptors for this Variant.

Used in case where there are multiple descriptors, for a single descriptor use getDescriptor and setDescriptor.

◆ getDescriptors() [2/2]

QPID_TYPES_EXTERN const List& qpid::types::Variant::getDescriptors ( ) const

Return the list of descriptors for this Variant.

Used in case where there are multiple descriptors, for a single descriptor use getDescriptor and setDescriptor.

◆ getEncoding()

QPID_TYPES_EXTERN const std::string& qpid::types::Variant::getEncoding ( ) const

◆ getString() [1/2]

QPID_TYPES_EXTERN const std::string& qpid::types::Variant::getString ( ) const

Unlike asString(), getString() will not do any conversions.

Exceptions
InvalidConversionif the type is not STRING.

◆ getString() [2/2]

QPID_TYPES_EXTERN std::string& qpid::types::Variant::getString ( )

◆ getType()

QPID_TYPES_EXTERN VariantType qpid::types::Variant::getType ( ) const

◆ isDescribed()

QPID_TYPES_EXTERN bool qpid::types::Variant::isDescribed ( ) const

True if there is at least one descriptor associated with this variant.

◆ isEqualTo()

QPID_TYPES_EXTERN bool qpid::types::Variant::isEqualTo ( const Variant a) const

◆ isVoid()

QPID_TYPES_EXTERN bool qpid::types::Variant::isVoid ( ) const

◆ operator bool()

QPID_TYPES_EXTERN qpid::types::Variant::operator bool ( ) const

◆ operator double()

QPID_TYPES_EXTERN qpid::types::Variant::operator double ( ) const

◆ operator float()

QPID_TYPES_EXTERN qpid::types::Variant::operator float ( ) const

◆ operator int16_t()

QPID_TYPES_EXTERN qpid::types::Variant::operator int16_t ( ) const

◆ operator int32_t()

QPID_TYPES_EXTERN qpid::types::Variant::operator int32_t ( ) const

◆ operator int64_t()

QPID_TYPES_EXTERN qpid::types::Variant::operator int64_t ( ) const

◆ operator int8_t()

QPID_TYPES_EXTERN qpid::types::Variant::operator int8_t ( ) const

◆ operator std::string()

QPID_TYPES_EXTERN qpid::types::Variant::operator std::string ( ) const

◆ operator uint16_t()

QPID_TYPES_EXTERN qpid::types::Variant::operator uint16_t ( ) const

◆ operator uint32_t()

QPID_TYPES_EXTERN qpid::types::Variant::operator uint32_t ( ) const

◆ operator uint64_t()

QPID_TYPES_EXTERN qpid::types::Variant::operator uint64_t ( ) const

◆ operator uint8_t()

QPID_TYPES_EXTERN qpid::types::Variant::operator uint8_t ( ) const

◆ operator Uuid()

QPID_TYPES_EXTERN qpid::types::Variant::operator Uuid ( ) const

◆ operator=() [1/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( bool  )

◆ operator=() [2/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( uint8_t  )

◆ operator=() [3/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( uint16_t  )

◆ operator=() [4/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( uint32_t  )

◆ operator=() [5/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( uint64_t  )

◆ operator=() [6/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( int8_t  )

◆ operator=() [7/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( int16_t  )

◆ operator=() [8/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( int32_t  )

◆ operator=() [9/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( int64_t  )

◆ operator=() [10/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( float  )

◆ operator=() [11/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( double  )

◆ operator=() [12/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( const std::string &  )

◆ operator=() [13/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( const char *  )

◆ operator=() [14/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( const Map )

◆ operator=() [15/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( const List )

◆ operator=() [16/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( const Variant )

◆ operator=() [17/17]

QPID_TYPES_EXTERN Variant& qpid::types::Variant::operator= ( const Uuid )

◆ parse()

QPID_TYPES_EXTERN Variant& qpid::types::Variant::parse ( const std::string &  )

Parses the argument and assigns itself the appropriate value.

Recognises integers, doubles and booleans.

◆ reset()

QPID_TYPES_EXTERN void qpid::types::Variant::reset ( )

Reset value to VOID, does not reset the descriptors.

◆ setDescriptor()

QPID_TYPES_EXTERN void qpid::types::Variant::setDescriptor ( const Variant descriptor)

Set a single descriptor for this Variant.

The descriptor must be a string or integer.

◆ setEncoding()

QPID_TYPES_EXTERN void qpid::types::Variant::setEncoding ( const std::string &  )

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

Qpid C++ API Reference
Generated on Sat Oct 20 2018 for Qpid C++ Client API by doxygen 1.8.13