glibmm: Glib::Variant< std::vector< std::string > > Class Reference

glibmm 2.66.9

Public Types | Public Member Functions | Static Public Member Functions | List of all members
Glib::Variant< std::vector< std::string > > Class Reference
Variant Data Types

Specialization of Variant containing an array of non-UTF-8 strings (byte string arrays). More...

`#include <glibmm/variant.h>`

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

## Public Types
using | CppType = std::string
using | CppContainerType = std::vector<std::string>
Public Types inherited from Glib::VariantBase
using | BoolExpr = const void*
| This typedef is just to make it more obvious that our operator const void* should be used like operator bool().
Public Types inherited from Glib::VariantContainerBase
using | CType = GVariant*
using | CppType = VariantContainerBase

## Public Member Functions
| Variant ()
| Default constructor.
| Variant (GVariant * castitem, bool take_a_reference=false)
| GVariant constructor.
std::string | get_child (gsize index) const
| Gets a specific element of the string array.
std::vector< std::string > | get () const
| Gets the string vector of the Variant.
VariantIter | get_iter () const
| Gets a VariantIter of the Variant.
Public Member Functions inherited from Glib::VariantBase
| VariantBase ()
| Constructs an invalid object.
| VariantBase (GVariant * castitem, bool make_a_copy=false)
| VariantBase (const VariantBase & src)
VariantBase & | operator= (const VariantBase & src)
| VariantBase (VariantBase && other) noexcept
VariantBase & | operator= (VariantBase && other) noexcept
| ~VariantBase () noexcept
void | swap (VariantBase & other) noexcept
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.
| operator BoolExpr () const
| Test whether the Variant has an underlying instance.
| operator bool () const
| Test whether the Variant has an underlying instance.
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.
gconstpointer | get_data () const
| Returns a pointer to the serialised form of a Variant instance.
Glib::RefPtr< const Glib::Bytes > | get_data_as_bytes () const
| 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 *this and other 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.
bool | check_format_string (const std::string & format_string, bool copy_only=false) const
| Checks if calling g_variant_get() with format_string on value would be valid from a type-compatibility standpoint.
Public Member Functions inherited from Glib::VariantContainerBase
| VariantContainerBase ()
| Default constructor.
| VariantContainerBase (GVariant * castitem, bool take_a_reference=false)
| GVariant constructor.
gsize | get_n_children () const
| Determines the number of children in a container Variant instance.
void | get_child (VariantBase & child, gsize index=0) const
| Reads a child item out of this instance.
VariantBase | get_child (gsize index=0)
| Reads a child item out of a container Variant instance.
bool | get_maybe (VariantBase & maybe) const
| If this is a maybe-typed instance, try to extract its value.

## Static Public Member Functions
static const VariantType & | variant_type ()
| Gets the VariantType.
static Variant< std::vector< std::string > > | create (const std::vector< std::string > & data)
| Creates a new Variant from an array of strings.
static Variant< std::vector< std::string > > | create_from_object_paths (const std::vector< std::string > & paths)
| Creates a new Variant from an array of D-Bus object paths.
Static Public Member Functions inherited from Glib::VariantBase
template<class V_CastTo>
static V_CastTo | cast_dynamic (const VariantBase & v)
| Cast to a specific variant type.
template<>
VariantContainerBase | cast_dynamic (const VariantBase & v)
Static Public Member Functions inherited from Glib::VariantContainerBase
static VariantContainerBase | create_tuple (const std::vector< VariantBase > & children)
| Create a tuple variant from a vector of its variant children.
static VariantContainerBase | create_tuple (const VariantBase & child)
| Create a tuple variant with a single variant child.
static VariantContainerBase | create_maybe (const VariantType & child_type, const VariantBase & child=VariantBase())
| Depending on if child is nullptr, either wraps child inside of a maybe container or creates a Nothing instance for the given type.

## Additional Inherited Members
Protected Attributes inherited from Glib::VariantBase
GVariant * | gobject_
Related Symbols inherited from Glib::VariantBase
void | swap (VariantBase & lhs, VariantBase & rhs) noexcept
Glib::VariantBase | wrap (GVariant * object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

Specialization of Variant containing an array of non-UTF-8 strings (byte string arrays).

Since glibmm 2.28

## Member Typedef Documentation

## ◆ CppContainerType

using Glib::Variant< std::vector< std::string > >::CppContainerType = std::vector<std::string>

## ◆ CppType

using Glib::Variant< std::vector< std::string > >::CppType = std::string

## Constructor & Destructor Documentation

## ◆ Variant() [1/2]

Glib::Variant< std::vector< std::string > >::Variant | ( |  | ) |

Default constructor.

## ◆ Variant() [2/2]

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

GVariant constructor.

Parameters

  castitem | The GVariant to wrap.
  take_a_reference | Whether to take an extra reference of the GVariant or not (not taking one could destroy the GVariant with the wrapper).

## Member Function Documentation

## ◆ create()

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

Creates a new Variant from an array of strings.

Parameters

  data | The array to use for creation.

Returns
  The new Variant.

Since glibmm 2.28

## ◆ create_from_object_paths()

Variant< std::vector< std::string > > Glib::Variant< std::vector< std::string > >::create_from_object_paths | ( | const std::vector< std::string > & | paths | ) |
| static

Creates a new Variant from an array of D-Bus object paths.

Parameters

  paths | The array to use for creation.

Returns
  The new Variant.

Since glibmm 2.36

## ◆ get()

std::vector< std::string > Glib::Variant< std::vector< std::string > >::get | ( |  | ) | const

Gets the string vector of the Variant.

Returns
  The vector.

Since glibmm 2.28

## ◆ get_child()

std::string Glib::Variant< std::vector< std::string > >::get_child | ( | gsize | index | ) | const

Gets a specific element of the string array.

It is an error if index is greater than the number of child items in the container. See VariantContainerBase::get_n_children().

This function is O(1).

Parameters

  index | The index of the element.

Returns
  The element at index index.

Exceptions

  std::out_of_range |

Since glibmm 2.28

## ◆ get_iter()

VariantIter Glib::Variant< std::vector< std::string > >::get_iter | ( |  | ) | const

Gets a VariantIter of the Variant.

Returns
  the VariantIter.

Since glibmm 2.28

## ◆ variant_type()

const VariantType & Glib::Variant< std::vector< std::string > >::variant_type | ( |  | ) |
| static

Gets the VariantType.

Returns
  The VariantType.

Since glibmm 2.28