|
glibmm 2.84.0
|
Specialization of Variant containing an array of items. More...
#include <glibmm/variant.h>

Public Types | |
| using | CppType = T |
| using | CppContainerType = std::vector<T> |
| using | CppType |
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. | |
| T | get_child (gsize index) const |
| Gets a specific element of the array. | |
| std::vector< T > | get () const |
| Gets the 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 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 () const |
| Returns a pointer to the serialized form of a Variant instance. | |
| Glib::RefPtr< const Glib::Bytes > | get_data_as_bytes () const |
| Returns a pointer to the serialized form of a Variant instance. | |
| void | store (gpointer data) const |
| Stores the serialized 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. | |
| bool | operator== (const VariantBase & other) const |
| Checks if *this and other have the same type and value. | |
| bool | operator!= (const VariantBase & other) const |
| Checks if *this and other have the same type and value. | |
| bool | operator< (const VariantBase & other) const =delete |
| Ordering relational operators. | |
| bool | operator<= (const VariantBase & other) const =delete |
| See operator<(). | |
| bool | operator> (const VariantBase & other) const =delete |
| See operator<(). | |
| bool | operator>= (const VariantBase & other) const =delete |
| See operator<(). | |
| 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. | |
| template<typename ValueType> | |
| ValueType | get_dynamic () const |
| Cast to a specific variant type and get the value. | |
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. | |
| VariantBase | get_child (gsize index=0) const |
| 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< T > > | create (const std::vector< T > &data) |
| Creates a new Variant from an array of numeric types. | |
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={}) |
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 | |
| template<typename T> | |
| Variant< T > | create_variant (const T &data) |
| Creates a Glib::Variant instance. | |
| void | swap (VariantBase & lhs, VariantBase & rhs) noexcept |
| Glib::VariantBase | wrap (GVariant * object, bool take_copy=false) |
| A Glib::wrap() method for this object. | |
Specialization of Variant containing an array of items.
| using Glib::Variant< std::vector< T > >::CppContainerType = std::vector<T> |
| using Glib::Variant< T >::CppType |
| using Glib::Variant< std::vector< T > >::CppType = T |
|
inline |
Default constructor.
|
inlineexplicit |
GVariant constructor.
| 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). |
|
static |
| std::vector< T > Glib::Variant< std::vector< T > >::get | ( | ) | const |
| T Glib::Variant< std::vector< T > >::get_child | ( | gsize | index | ) | const |
Gets a specific element of the 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).
| index | The index of the element. |
| std::out_of_range |
| VariantIter Glib::Variant< std::vector< T > >::get_iter | ( | ) | const |
|
static |