glibmm  2.33.14
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Glib::Variant< std::string > Class Template Reference

Specialization of Variant containing a std::string, for variants of type bytestring, object path, or signature. More...

#include <glibmm/variant.h>

Inheritance diagram for Glib::Variant< std::string >:
Inheritance graph
[legend]

Public Types

typedef char* CType
 
typedef std::string CppType
 
- Public Types inherited from Glib::VariantStringBase
typedef GVariant* CType
 
typedef VariantStringBase CppType
 

Public Member Functions

 Variant ()
 Default constructor.
 
 Variant (GVariant* castitem, bool take_a_reference=false)
 GVariant constructor.
 
std::string get () const
 
- Public Member Functions inherited from Glib::VariantStringBase
 VariantStringBase ()
 Default constructor.
 
 VariantStringBase (GVariant* castitem, bool take_a_reference=false)
 GVariant constructor.
 
- Public Member Functions inherited from Glib::VariantBase
 VariantBase ()
 
 VariantBase (GVariant* castitem, bool make_a_copy=false)
 
 VariantBase (const VariantBase& src)
 
VariantBaseoperator= (const VariantBase& src)
 
 ~VariantBase ()
 
GVariant* gobj ()
 
const GVariant* gobj () const
 
GVariant* gobj_copy () const
 Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.
 
void init (const GVariant* cobject, bool take_a_reference=false)
 Replace the underlying GVariant.
 
VariantType get_type () const
 Determines the type of value.
 
std::string get_type_string () const
 Returns the type string of value.
 
bool is_floating () const
 Checks whether value has a floating reference count.
 
bool is_of_type (const VariantType& type) const
 Checks if a value has a type matching the provided type.
 
bool is_container () const
 Checks if value is a container.
 
GVariantClass classify () const
 Classifies value according to its top-level type.
 
gsize get_size () const
 Determines the number of bytes that would be required to store value with g_variant_store().
 
gconstpointer get_data ()
 Returns a pointer to the serialised form of a Variant instance.
 
void store (gpointer data) const
 Stores the serialised form of value at data.
 
Glib::ustring print (bool type_annotate=false) const
 Pretty-prints value in the format understood by g_variant_parse().
 
guint hash () const
 Generates a hash value for a Variant instance.
 
bool equal (const VariantBase& other) const
 Checks if one and two have the same type and value.
 
void get_normal_form (VariantBase& result) const
 Gets a VariantBase instance that has the same value as this variant and is trusted to be in normal form.
 
bool is_normal_form () const
 Checks if value is in normal form.
 
void byteswap (VariantBase& result) const
 Performs a byteswapping operation on the contents of this variant.
 

Static Public Member Functions

static const VariantTypevariant_type ()
 Gets the VariantType.
 
static Variant< std::stringcreate (const std::string& data)
 Creates a new Variant<std::string>.
 
- Static Public Member Functions inherited from Glib::VariantStringBase
static void create_object_path (VariantStringBase& output, const std::string& object_path)
 Creates a D-Bus object path variant with the contents of string.
 
static bool is_object_path (const std::string&string)
 Determines if a given string is a valid D-Bus object path.
 
static void create_signature (VariantStringBase& output, const std::string& object_path)
 Creates a D-Bus type signature variant with the contents of string.
 
static bool is_signature (const std::string&string)
 Determines if a given string is a valid D-Bus type signature.
 
- Static Public Member Functions inherited from Glib::VariantBase
template<class V_CastTo >
static V_CastTo cast_dynamic (const VariantBase& v) throw (std::bad_cast)
 Cast to a specific variant type.
 

Additional Inherited Members

- Protected Attributes inherited from Glib::VariantBase
GVariant* gobject_
 

Detailed Description

template<>
class Glib::Variant< std::string >

Specialization of Variant containing a std::string, for variants of type bytestring, object path, or signature.

See also Variant<Glib::ustring> for UTF-8 strings.

Since glibmm 2.28:

Member Typedef Documentation

typedef char* Glib::Variant< std::string >::CType

Constructor & Destructor Documentation

Default constructor.

Glib::Variant< std::string >::Variant ( GVariant< std::string > *  castitem,
bool  take_a_reference = false 
)
explicit

GVariant constructor.

Parameters
castitemThe GVariant to wrap.
take_a_referenceWhether to take an extra reference of the GVariant or not (not taking one could destroy the GVariant with the wrapper).

Member Function Documentation

static Variant<std::string> Glib::Variant< std::string >::create ( const std::string data)
static

Creates a new Variant<std::string>.

Parameters
dataThe value of the new Variant.
Returns
The new Variant.
Since glibmm 2.28:
static const VariantType& Glib::Variant< std::string >::variant_type ( )
static