Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>glibmm: Glib::VariantContainerBase Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-extra.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">glibmm
   &#160;<span id="projectnumber">2.56.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceGlib.html">Glib</a></li><li class="navelem"><a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classGlib_1_1VariantContainerBase-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Glib::VariantContainerBase Class Reference<div class="ingroups"><a class="el" href="group__Variant.html">Variant Data Types</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>The base class for multiple-item Variants, such as Variants containing tuples or arrays, and also for maybe-typed (i.e.  
 <a href="classGlib_1_1VariantContainerBase.html#details">More...</a></p>

<p><code>#include &lt;glibmm/variant.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for Glib::VariantContainerBase:</div>
<div class="dyncontent">
<div class="center"><img src="classGlib_1_1VariantContainerBase__inherit__graph.png" border="0" usemap="#Glib_1_1VariantContainerBase_inherit__map" alt="Inheritance graph"/></div>
<map name="Glib_1_1VariantContainerBase_inherit__map" id="Glib_1_1VariantContainerBase_inherit__map">
<area shape="rect" id="node3" href="classGlib_1_1Variant_3_01std_1_1map_3_01K_00_01V_01_4_01_4.html" title="Specialization of Variant containing a dictionary (a map of (key, value) elements). " alt="" coords="470,5,607,47"/>
<area shape="rect" id="node4" href="classGlib_1_1Variant_3_01std_1_1tuple_3_01Types_8_8_8_01_4_01_4.html" title="Specialization of Variant containing a tuple. " alt="" coords="460,71,617,112"/>
<area shape="rect" id="node5" href="classGlib_1_1Variant_3_01std_1_1vector_3_01Glib_1_1DBusObjectPathString_01_4_01_4.html" title="Specialization of Variant containing an array of D&#45;Bus object paths. " alt="" coords="441,137,637,193"/>
<area shape="rect" id="node6" href="classGlib_1_1Variant_3_01std_1_1vector_3_01Glib_1_1ustring_01_4_01_4.html" title="Specialization of Variant containing an array of UTF&#45;8 capable strings. " alt="" coords="441,217,636,259"/>
<area shape="rect" id="node7" href="classGlib_1_1Variant_3_01std_1_1vector_3_01std_1_1string_01_4_01_4.html" title="Specialization of Variant containing an array of non&#45;UTF&#45;8 strings (byte string arrays). " alt="" coords="448,283,629,324"/>
<area shape="rect" id="node8" href="classGlib_1_1Variant_3_01std_1_1vector_3_01T_01_4_01_4.html" title="Specialization of Variant containing an array of items. " alt="" coords="470,348,607,389"/>
<area shape="rect" id="node9" href="classGlib_1_1Variant_3_01Variant_3_01T_01_4_01_4.html" title="Specialization of Variant containing a Variant&lt;T&gt;. " alt="" coords="457,413,620,455"/>
<area shape="rect" id="node10" href="classGlib_1_1Variant_3_01VariantBase_01_4.html" title="Specialization of Variant containing a VariantBase. " alt="" coords="433,479,644,506"/>
<area shape="rect" id="node2" href="classGlib_1_1VariantBase.html" title="This is the base class for all Variant types. " alt="" coords="5,258,140,285"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:af25ca06a5994ba5f39c92fd120187244"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#af25ca06a5994ba5f39c92fd120187244">CType</a> = GVariant*</td></tr>
<tr class="separator:af25ca06a5994ba5f39c92fd120187244"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac221ee3ce265cc70aaf5d4e077048f97"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#ac221ee3ce265cc70aaf5d4e077048f97">CppType</a> = <a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a></td></tr>
<tr class="separator:ac221ee3ce265cc70aaf5d4e077048f97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classGlib_1_1VariantBase"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classGlib_1_1VariantBase')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a></td></tr>
<tr class="memitem:ae46eeafcd6f827fabb1a61e53a0d401b inherit pub_types_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#ae46eeafcd6f827fabb1a61e53a0d401b">BoolExpr</a> = const void*</td></tr>
<tr class="memdesc:ae46eeafcd6f827fabb1a61e53a0d401b inherit pub_types_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">This typedef is just to make it more obvious that our operator const void* should be used like operator bool().  <a href="classGlib_1_1VariantBase.html#ae46eeafcd6f827fabb1a61e53a0d401b">More...</a><br /></td></tr>
<tr class="separator:ae46eeafcd6f827fabb1a61e53a0d401b inherit pub_types_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a47701d34a101027946e14fcc2d00d863"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#a47701d34a101027946e14fcc2d00d863">VariantContainerBase</a> ()</td></tr>
<tr class="memdesc:a47701d34a101027946e14fcc2d00d863"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="#a47701d34a101027946e14fcc2d00d863">More...</a><br /></td></tr>
<tr class="separator:a47701d34a101027946e14fcc2d00d863"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87220270495aa11312652234a7bb7803"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#a87220270495aa11312652234a7bb7803">VariantContainerBase</a> (GVariant* castitem, bool take_a_reference=false)</td></tr>
<tr class="memdesc:a87220270495aa11312652234a7bb7803"><td class="mdescLeft">&#160;</td><td class="mdescRight">GVariant constructor.  <a href="#a87220270495aa11312652234a7bb7803">More...</a><br /></td></tr>
<tr class="separator:a87220270495aa11312652234a7bb7803"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f5163ad6a44a4886874d8217037d360"><td class="memItemLeft" align="right" valign="top">gsize&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#a8f5163ad6a44a4886874d8217037d360">get_n_children</a> () const</td></tr>
<tr class="memdesc:a8f5163ad6a44a4886874d8217037d360"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the number of children in a container <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> instance.  <a href="#a8f5163ad6a44a4886874d8217037d360">More...</a><br /></td></tr>
<tr class="separator:a8f5163ad6a44a4886874d8217037d360"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15924df220d6bb818b900805d643ba65"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#a15924df220d6bb818b900805d643ba65">get_child</a> (<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; child, gsize index=0) const</td></tr>
<tr class="memdesc:a15924df220d6bb818b900805d643ba65"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a child item out of this instance.  <a href="#a15924df220d6bb818b900805d643ba65">More...</a><br /></td></tr>
<tr class="separator:a15924df220d6bb818b900805d643ba65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0a475e0b0b07ea03242c945a5db67e0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#ad0a475e0b0b07ea03242c945a5db67e0">get_child</a> (gsize index=0)</td></tr>
<tr class="memdesc:ad0a475e0b0b07ea03242c945a5db67e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a child item out of a container <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> instance.  <a href="#ad0a475e0b0b07ea03242c945a5db67e0">More...</a><br /></td></tr>
<tr class="separator:ad0a475e0b0b07ea03242c945a5db67e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b91c45407067ac96a4f70b1512293c6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#a8b91c45407067ac96a4f70b1512293c6">get_maybe</a> (<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; maybe) const</td></tr>
<tr class="memdesc:a8b91c45407067ac96a4f70b1512293c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">If this is a maybe-typed instance, try to extract its value.  <a href="#a8b91c45407067ac96a4f70b1512293c6">More...</a><br /></td></tr>
<tr class="separator:a8b91c45407067ac96a4f70b1512293c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classGlib_1_1VariantBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classGlib_1_1VariantBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a></td></tr>
<tr class="memitem:a74bb8db40a8cd10d2fed3d02c4cb413e inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a74bb8db40a8cd10d2fed3d02c4cb413e">VariantBase</a> ()</td></tr>
<tr class="memdesc:a74bb8db40a8cd10d2fed3d02c4cb413e inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an invalid object.  <a href="classGlib_1_1VariantBase.html#a74bb8db40a8cd10d2fed3d02c4cb413e">More...</a><br /></td></tr>
<tr class="separator:a74bb8db40a8cd10d2fed3d02c4cb413e inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afac0ab2bacb3ff7c1b8eea15ac75df9c inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#afac0ab2bacb3ff7c1b8eea15ac75df9c">VariantBase</a> (GVariant* castitem, bool make_a_copy=false)</td></tr>
<tr class="separator:afac0ab2bacb3ff7c1b8eea15ac75df9c inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6eb13ac35e3de8d16a866aa8822aea25 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a6eb13ac35e3de8d16a866aa8822aea25">VariantBase</a> (const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; src)</td></tr>
<tr class="separator:a6eb13ac35e3de8d16a866aa8822aea25 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f30d304c0343fa3e86d1f9df2726d7c inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a2f30d304c0343fa3e86d1f9df2726d7c">operator=</a> (const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; src)</td></tr>
<tr class="separator:a2f30d304c0343fa3e86d1f9df2726d7c inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afdd23a76dad128ee5e8c290a8a250ca4 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#afdd23a76dad128ee5e8c290a8a250ca4">VariantBase</a> (<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp;&amp; other) noexcept</td></tr>
<tr class="separator:afdd23a76dad128ee5e8c290a8a250ca4 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0325c35f55ea53e64146ad20661f6d8d inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a0325c35f55ea53e64146ad20661f6d8d">operator=</a> (<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp;&amp; other) noexcept</td></tr>
<tr class="separator:a0325c35f55ea53e64146ad20661f6d8d inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1853f1bd452866789479f9d5d48cadd9 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a1853f1bd452866789479f9d5d48cadd9">~VariantBase</a> () noexcept</td></tr>
<tr class="separator:a1853f1bd452866789479f9d5d48cadd9 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a336846c1fd9175e222e58d74aa5c9156 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a336846c1fd9175e222e58d74aa5c9156">swap</a> (<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; other) noexcept</td></tr>
<tr class="separator:a336846c1fd9175e222e58d74aa5c9156 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b980321e6b0d16401343129dfc439e8 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">GVariant*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a3b980321e6b0d16401343129dfc439e8">gobj</a> ()</td></tr>
<tr class="separator:a3b980321e6b0d16401343129dfc439e8 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a32c7b5743cf3e0ef1be6f4b52b7879 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">const GVariant*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a9a32c7b5743cf3e0ef1be6f4b52b7879">gobj</a> () const</td></tr>
<tr class="separator:a9a32c7b5743cf3e0ef1be6f4b52b7879 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae55e408724475fb231e514f03e62cc4e inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">GVariant*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#ae55e408724475fb231e514f03e62cc4e">gobj_copy</a> () const</td></tr>
<tr class="memdesc:ae55e408724475fb231e514f03e62cc4e inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.  <a href="classGlib_1_1VariantBase.html#ae55e408724475fb231e514f03e62cc4e">More...</a><br /></td></tr>
<tr class="separator:ae55e408724475fb231e514f03e62cc4e inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0c3a170109283c7c2e3aa2b621ebaa6 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#ab0c3a170109283c7c2e3aa2b621ebaa6">operator BoolExpr</a> () const</td></tr>
<tr class="memdesc:ab0c3a170109283c7c2e3aa2b621ebaa6 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test whether the <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> has an underlying instance.  <a href="classGlib_1_1VariantBase.html#ab0c3a170109283c7c2e3aa2b621ebaa6">More...</a><br /></td></tr>
<tr class="separator:ab0c3a170109283c7c2e3aa2b621ebaa6 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4ae01c904768ee5c7c222469795fa83 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#ab4ae01c904768ee5c7c222469795fa83">operator bool</a> () const</td></tr>
<tr class="memdesc:ab4ae01c904768ee5c7c222469795fa83 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test whether the <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> has an underlying instance.  <a href="classGlib_1_1VariantBase.html#ab4ae01c904768ee5c7c222469795fa83">More...</a><br /></td></tr>
<tr class="separator:ab4ae01c904768ee5c7c222469795fa83 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a980a39e735ac4e68dfc37fe004161018 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a980a39e735ac4e68dfc37fe004161018">init</a> (const GVariant* cobject, bool take_a_reference=false)</td></tr>
<tr class="memdesc:a980a39e735ac4e68dfc37fe004161018 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replace the underlying GVariant.  <a href="classGlib_1_1VariantBase.html#a980a39e735ac4e68dfc37fe004161018">More...</a><br /></td></tr>
<tr class="separator:a980a39e735ac4e68dfc37fe004161018 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad581febd10535aee8b71d2456f8351aa inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1VariantType.html">VariantType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#ad581febd10535aee8b71d2456f8351aa">get_type</a> () const</td></tr>
<tr class="memdesc:ad581febd10535aee8b71d2456f8351aa inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the type of <em>value</em>.  <a href="classGlib_1_1VariantBase.html#ad581febd10535aee8b71d2456f8351aa">More...</a><br /></td></tr>
<tr class="separator:ad581febd10535aee8b71d2456f8351aa inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d5b77ad3573f62589be6d29248d1181 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01681.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a1d5b77ad3573f62589be6d29248d1181">get_type_string</a> () const</td></tr>
<tr class="memdesc:a1d5b77ad3573f62589be6d29248d1181 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the type string of <em>value</em>.  <a href="classGlib_1_1VariantBase.html#a1d5b77ad3573f62589be6d29248d1181">More...</a><br /></td></tr>
<tr class="separator:a1d5b77ad3573f62589be6d29248d1181 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56934b85ab44853fc33fbc778b4ffd03 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a56934b85ab44853fc33fbc778b4ffd03">is_floating</a> () const</td></tr>
<tr class="memdesc:a56934b85ab44853fc33fbc778b4ffd03 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks whether <em>value</em> has a floating reference count.  <a href="classGlib_1_1VariantBase.html#a56934b85ab44853fc33fbc778b4ffd03">More...</a><br /></td></tr>
<tr class="separator:a56934b85ab44853fc33fbc778b4ffd03 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29f40905eddfb9c19bd1f2c143c08ce6 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a29f40905eddfb9c19bd1f2c143c08ce6">is_of_type</a> (const <a class="el" href="classGlib_1_1VariantType.html">VariantType</a>&amp; type) const</td></tr>
<tr class="memdesc:a29f40905eddfb9c19bd1f2c143c08ce6 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if a value has a type matching the provided type.  <a href="classGlib_1_1VariantBase.html#a29f40905eddfb9c19bd1f2c143c08ce6">More...</a><br /></td></tr>
<tr class="separator:a29f40905eddfb9c19bd1f2c143c08ce6 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa6e0512d03470f8bb89ab24ae005ee7 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#afa6e0512d03470f8bb89ab24ae005ee7">is_container</a> () const</td></tr>
<tr class="memdesc:afa6e0512d03470f8bb89ab24ae005ee7 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if <em>value</em> is a container.  <a href="classGlib_1_1VariantBase.html#afa6e0512d03470f8bb89ab24ae005ee7">More...</a><br /></td></tr>
<tr class="separator:afa6e0512d03470f8bb89ab24ae005ee7 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50cff41a3a339a2dba2102b45ba3278a inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">GVariantClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a50cff41a3a339a2dba2102b45ba3278a">classify</a> () const</td></tr>
<tr class="memdesc:a50cff41a3a339a2dba2102b45ba3278a inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Classifies <em>value</em> according to its top-level type.  <a href="classGlib_1_1VariantBase.html#a50cff41a3a339a2dba2102b45ba3278a">More...</a><br /></td></tr>
<tr class="separator:a50cff41a3a339a2dba2102b45ba3278a inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1c23c18e0a2c8ce4c259b2cc37df988 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">gsize&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#aa1c23c18e0a2c8ce4c259b2cc37df988">get_size</a> () const</td></tr>
<tr class="memdesc:aa1c23c18e0a2c8ce4c259b2cc37df988 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the number of bytes that would be required to store <em>value</em> with g_variant_store().  <a href="classGlib_1_1VariantBase.html#aa1c23c18e0a2c8ce4c259b2cc37df988">More...</a><br /></td></tr>
<tr class="separator:aa1c23c18e0a2c8ce4c259b2cc37df988 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a687306a73541b9b5e11e91d6d8f97831 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">gconstpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a687306a73541b9b5e11e91d6d8f97831">get_data</a> ()</td></tr>
<tr class="memdesc:a687306a73541b9b5e11e91d6d8f97831 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the serialised form of a <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> instance.  <a href="classGlib_1_1VariantBase.html#a687306a73541b9b5e11e91d6d8f97831">More...</a><br /></td></tr>
<tr class="separator:a687306a73541b9b5e11e91d6d8f97831 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bc558b0b75fe31716dfa8406428b506 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">gconstpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a3bc558b0b75fe31716dfa8406428b506">get_data</a> () const</td></tr>
<tr class="memdesc:a3bc558b0b75fe31716dfa8406428b506 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the serialised form of a <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> instance.  <a href="classGlib_1_1VariantBase.html#a3bc558b0b75fe31716dfa8406428b506">More...</a><br /></td></tr>
<tr class="separator:a3bc558b0b75fe31716dfa8406428b506 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2833b07dd7f5edf8542b6f2b5144cdb5 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; const <a class="el" href="classGlib_1_1Bytes.html">Glib::Bytes</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a2833b07dd7f5edf8542b6f2b5144cdb5">get_data_as_bytes</a> () const</td></tr>
<tr class="memdesc:a2833b07dd7f5edf8542b6f2b5144cdb5 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the serialised form of a <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> instance.  <a href="classGlib_1_1VariantBase.html#a2833b07dd7f5edf8542b6f2b5144cdb5">More...</a><br /></td></tr>
<tr class="separator:a2833b07dd7f5edf8542b6f2b5144cdb5 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a63b7476142963fa6b1d31ea2cb7e90 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a7a63b7476142963fa6b1d31ea2cb7e90">store</a> (gpointer data) const</td></tr>
<tr class="memdesc:a7a63b7476142963fa6b1d31ea2cb7e90 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores the serialised form of <em>value</em> at <em>data</em>.  <a href="classGlib_1_1VariantBase.html#a7a63b7476142963fa6b1d31ea2cb7e90">More...</a><br /></td></tr>
<tr class="separator:a7a63b7476142963fa6b1d31ea2cb7e90 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a451efed62c1123dd28bae39e9c25b5df inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a451efed62c1123dd28bae39e9c25b5df">print</a> (bool type_annotate=false) const</td></tr>
<tr class="memdesc:a451efed62c1123dd28bae39e9c25b5df inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pretty-prints <em>value</em> in the format understood by g_variant_parse().  <a href="classGlib_1_1VariantBase.html#a451efed62c1123dd28bae39e9c25b5df">More...</a><br /></td></tr>
<tr class="separator:a451efed62c1123dd28bae39e9c25b5df inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac02ca2fa168254a30e02cef26ad03cf6 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#ac02ca2fa168254a30e02cef26ad03cf6">hash</a> () const</td></tr>
<tr class="memdesc:ac02ca2fa168254a30e02cef26ad03cf6 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a hash value for a <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> instance.  <a href="classGlib_1_1VariantBase.html#ac02ca2fa168254a30e02cef26ad03cf6">More...</a><br /></td></tr>
<tr class="separator:ac02ca2fa168254a30e02cef26ad03cf6 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77f20ca2ae807e612f73e6a62e4313b3 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a77f20ca2ae807e612f73e6a62e4313b3">equal</a> (const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; other) const</td></tr>
<tr class="memdesc:a77f20ca2ae807e612f73e6a62e4313b3 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if <em>*this</em> and <em>other</em> have the same type and value.  <a href="classGlib_1_1VariantBase.html#a77f20ca2ae807e612f73e6a62e4313b3">More...</a><br /></td></tr>
<tr class="separator:a77f20ca2ae807e612f73e6a62e4313b3 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7650d73edb1465c61641b69182ba79e5 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a7650d73edb1465c61641b69182ba79e5">get_normal_form</a> (<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; result) const</td></tr>
<tr class="memdesc:a7650d73edb1465c61641b69182ba79e5 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a <a class="el" href="classGlib_1_1VariantBase.html" title="This is the base class for all Variant types. ">VariantBase</a> instance that has the same value as this variant and is trusted to be in normal form.  <a href="classGlib_1_1VariantBase.html#a7650d73edb1465c61641b69182ba79e5">More...</a><br /></td></tr>
<tr class="separator:a7650d73edb1465c61641b69182ba79e5 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afed03db642a06c630ffed4e51f8cdcd7 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#afed03db642a06c630ffed4e51f8cdcd7">is_normal_form</a> () const</td></tr>
<tr class="memdesc:afed03db642a06c630ffed4e51f8cdcd7 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if <em>value</em> is in normal form.  <a href="classGlib_1_1VariantBase.html#afed03db642a06c630ffed4e51f8cdcd7">More...</a><br /></td></tr>
<tr class="separator:afed03db642a06c630ffed4e51f8cdcd7 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d4fe3b45aaf70551ca8187b8b1dcb93 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a7d4fe3b45aaf70551ca8187b8b1dcb93">byteswap</a> (<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; result) const</td></tr>
<tr class="memdesc:a7d4fe3b45aaf70551ca8187b8b1dcb93 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a byteswapping operation on the contents of this variant.  <a href="classGlib_1_1VariantBase.html#a7d4fe3b45aaf70551ca8187b8b1dcb93">More...</a><br /></td></tr>
<tr class="separator:a7d4fe3b45aaf70551ca8187b8b1dcb93 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac428fb65c8699f2f2d92f6902f5db140 inherit pub_methods_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#ac428fb65c8699f2f2d92f6902f5db140">check_format_string</a> (const <a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01681.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>&amp; format_string, bool copy_only=false) const</td></tr>
<tr class="memdesc:ac428fb65c8699f2f2d92f6902f5db140 inherit pub_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if calling g_variant_get() with <em>format_string</em> on <em>value</em> would be valid from a type-compatibility standpoint.  <a href="classGlib_1_1VariantBase.html#ac428fb65c8699f2f2d92f6902f5db140">More...</a><br /></td></tr>
<tr class="separator:ac428fb65c8699f2f2d92f6902f5db140 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9564ae1398eb9015369b3842d50b67e8 inherit pub_methods_classGlib_1_1VariantBase"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a9564ae1398eb9015369b3842d50b67e8 inherit pub_methods_classGlib_1_1VariantBase"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a9564ae1398eb9015369b3842d50b67e8">cast_dynamic</a> (const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; v)</td></tr>
<tr class="separator:a9564ae1398eb9015369b3842d50b67e8 inherit pub_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a9153ad406feee6ad2de943cd1ed71601"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#a9153ad406feee6ad2de943cd1ed71601">create_tuple</a> (const <a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00965.html">std::vector</a>&lt; <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a> &gt;&amp; children)</td></tr>
<tr class="memdesc:a9153ad406feee6ad2de943cd1ed71601"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a tuple variant from a vector of its variant children.  <a href="#a9153ad406feee6ad2de943cd1ed71601">More...</a><br /></td></tr>
<tr class="separator:a9153ad406feee6ad2de943cd1ed71601"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2338b26250ab256da44ca656191ae187"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#a2338b26250ab256da44ca656191ae187">create_tuple</a> (const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; child)</td></tr>
<tr class="memdesc:a2338b26250ab256da44ca656191ae187"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a tuple variant with a single variant child.  <a href="#a2338b26250ab256da44ca656191ae187">More...</a><br /></td></tr>
<tr class="separator:a2338b26250ab256da44ca656191ae187"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e2ff2c8d2db762fa398901e8863cb8f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantContainerBase.html#a4e2ff2c8d2db762fa398901e8863cb8f">create_maybe</a> (const <a class="el" href="classGlib_1_1VariantType.html">VariantType</a>&amp; child_type, const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; child=<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>())</td></tr>
<tr class="memdesc:a4e2ff2c8d2db762fa398901e8863cb8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Depending on if <em>child</em> is <code>nullptr</code>, either wraps <em>child</em> inside of a maybe container or creates a Nothing instance for the given <em>type</em>.  <a href="#a4e2ff2c8d2db762fa398901e8863cb8f">More...</a><br /></td></tr>
<tr class="separator:a4e2ff2c8d2db762fa398901e8863cb8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_methods_classGlib_1_1VariantBase"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classGlib_1_1VariantBase')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a></td></tr>
<tr class="memitem:a1f65fc45c20886cd9a5351ed5fa81463 inherit pub_static_methods_classGlib_1_1VariantBase"><td class="memTemplParams" colspan="2">template&lt;class V_CastTo &gt; </td></tr>
<tr class="memitem:a1f65fc45c20886cd9a5351ed5fa81463 inherit pub_static_methods_classGlib_1_1VariantBase"><td class="memTemplItemLeft" align="right" valign="top">static V_CastTo&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#a1f65fc45c20886cd9a5351ed5fa81463">cast_dynamic</a> (const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; v)</td></tr>
<tr class="memdesc:a1f65fc45c20886cd9a5351ed5fa81463 inherit pub_static_methods_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cast to a specific variant type.  <a href="classGlib_1_1VariantBase.html#a1f65fc45c20886cd9a5351ed5fa81463">More...</a><br /></td></tr>
<tr class="separator:a1f65fc45c20886cd9a5351ed5fa81463 inherit pub_static_methods_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pro_attribs_classGlib_1_1VariantBase"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classGlib_1_1VariantBase')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a></td></tr>
<tr class="memitem:afb327758aeb118b06e9c9e6b0a796892 inherit pro_attribs_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">GVariant*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#afb327758aeb118b06e9c9e6b0a796892">gobject_</a></td></tr>
<tr class="separator:afb327758aeb118b06e9c9e6b0a796892 inherit pro_attribs_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header related_classGlib_1_1VariantBase"><td colspan="2" onclick="javascript:toggleInherit('related_classGlib_1_1VariantBase')"><img src="closed.png" alt="-"/>&#160;Related Functions inherited from <a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a></td></tr>
<tr class="memitem:ad70df57e9ee2e532a0c836923e7d0b2a inherit related_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#ad70df57e9ee2e532a0c836923e7d0b2a">swap</a> (<a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; lhs, <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp; rhs) noexcept</td></tr>
<tr class="separator:ad70df57e9ee2e532a0c836923e7d0b2a inherit related_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea2fee9e9505dfd38d7f086a335655b0 inherit related_classGlib_1_1VariantBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1VariantBase.html#aea2fee9e9505dfd38d7f086a335655b0">wrap</a> (GVariant* object, bool take_copy=false)</td></tr>
<tr class="memdesc:aea2fee9e9505dfd38d7f086a335655b0 inherit related_classGlib_1_1VariantBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object.  <a href="classGlib_1_1VariantBase.html#aea2fee9e9505dfd38d7f086a335655b0">More...</a><br /></td></tr>
<tr class="separator:aea2fee9e9505dfd38d7f086a335655b0 inherit related_classGlib_1_1VariantBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The base class for multiple-item Variants, such as Variants containing tuples or arrays, and also for maybe-typed (i.e. </p>
<p>nullable) <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> types.</p>
<dl class="since_2_28"><dt><b><a class="el" href="since_2_28.html#_since_2_28000014">Since glibmm 2.28:</a></b></dt><dd></dd></dl>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="ac221ee3ce265cc70aaf5d4e077048f97"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac221ee3ce265cc70aaf5d4e077048f97">&#9670;&#160;</a></span>CppType</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="classGlib_1_1VariantContainerBase.html#ac221ee3ce265cc70aaf5d4e077048f97">Glib::VariantContainerBase::CppType</a> =  <a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="af25ca06a5994ba5f39c92fd120187244"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af25ca06a5994ba5f39c92fd120187244">&#9670;&#160;</a></span>CType</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="classGlib_1_1VariantContainerBase.html#af25ca06a5994ba5f39c92fd120187244">Glib::VariantContainerBase::CType</a> =  GVariant*</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a47701d34a101027946e14fcc2d00d863"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47701d34a101027946e14fcc2d00d863">&#9670;&#160;</a></span>VariantContainerBase() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Glib::VariantContainerBase::VariantContainerBase </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Default constructor. </p>

</div>
</div>
<a id="a87220270495aa11312652234a7bb7803"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87220270495aa11312652234a7bb7803">&#9670;&#160;</a></span>VariantContainerBase() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Glib::VariantContainerBase::VariantContainerBase </td>
          <td>(</td>
          <td class="paramtype">GVariant *&#160;</td>
          <td class="paramname"><em>castitem</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>take_a_reference</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">explicit</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>GVariant constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">castitem</td><td>The GVariant to wrap. </td></tr>
    <tr><td class="paramname">take_a_reference</td><td>Whether to take an extra reference of the GVariant or not (not taking one could destroy the GVariant with the wrapper). </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a4e2ff2c8d2db762fa398901e8863cb8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e2ff2c8d2db762fa398901e8863cb8f">&#9670;&#160;</a></span>create_maybe()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a> Glib::VariantContainerBase::create_maybe </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1VariantType.html">VariantType</a>&amp;&#160;</td>
          <td class="paramname"><em>child_type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp;&#160;</td>
          <td class="paramname"><em>child</em> = <code><a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Depending on if <em>child</em> is <code>nullptr</code>, either wraps <em>child</em> inside of a maybe container or creates a Nothing instance for the given <em>type</em>. </p>
<p>At least one of <em>child_type</em> and <em>child</em> must be non-<code>nullptr</code>. If <em>child_type</em> is non-<code>nullptr</code> then it must be a definite type. If they are both non-<code>nullptr</code> then <em>child_type</em> must be the type of <em>child</em>.</p>
<p>If <em>child</em> is a floating reference (see g_variant_ref_sink()), the new instance takes ownership of <em>child</em>.</p>
<dl class="since_2_24"><dt><b><a class="el" href="since_2_24.html#_since_2_24000018">Since glibmm 2.24:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">child_type</td><td>The <a class="el" href="classGlib_1_1VariantType.html" title="VariantType - The VariantBase type system. ">VariantType</a> of the child, or <code>nullptr</code>. </td></tr>
    <tr><td class="paramname">child</td><td>The child value, or <code>nullptr</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A floating reference to a new <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> maybe instance. </dd></dl>

</div>
</div>
<a id="a9153ad406feee6ad2de943cd1ed71601"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9153ad406feee6ad2de943cd1ed71601">&#9670;&#160;</a></span>create_tuple() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a> Glib::VariantContainerBase::create_tuple </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00965.html">std::vector</a>&lt; <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a> &gt;&amp;&#160;</td>
          <td class="paramname"><em>children</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create a tuple variant from a vector of its variant children. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">children</td><td>The vector containing the children of the container. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The newly created tuple variant (as a <a class="el" href="classGlib_1_1VariantContainerBase.html" title="The base class for multiple-item Variants, such as Variants containing tuples or arrays, and also for maybe-typed (i.e. ">VariantContainerBase</a>). </dd></dl>

</div>
</div>
<a id="a2338b26250ab256da44ca656191ae187"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2338b26250ab256da44ca656191ae187">&#9670;&#160;</a></span>create_tuple() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classGlib_1_1VariantContainerBase.html">VariantContainerBase</a> Glib::VariantContainerBase::create_tuple </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp;&#160;</td>
          <td class="paramname"><em>child</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create a tuple variant with a single variant child. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">child</td><td>The child variant. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The newly created tuple variant (as a <a class="el" href="classGlib_1_1VariantContainerBase.html" title="The base class for multiple-item Variants, such as Variants containing tuples or arrays, and also for maybe-typed (i.e. ">VariantContainerBase</a>). </dd></dl>

</div>
</div>
<a id="a15924df220d6bb818b900805d643ba65"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15924df220d6bb818b900805d643ba65">&#9670;&#160;</a></span>get_child() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Glib::VariantContainerBase::get_child </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp;&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>index</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a child item out of this instance. </p>
<p>This method is valid for variants, maybes, arrays, tuples and dictionary entries.</p>
<p>It is an error if <em>index</em> is greater than the number of child items in the container. See <a class="el" href="classGlib_1_1VariantContainerBase.html#a8f5163ad6a44a4886874d8217037d360" title="Determines the number of children in a container Variant instance. ">get_n_children()</a>.</p>
<p>This function is O(1).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">index</td><td>The index of the child to fetch. </td></tr>
    <tr><td class="paramname">child</td><td>A location in which to store the child at the specified index. </td></tr>
  </table>
  </dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
  <table class="exception">
    <tr><td class="paramname"><a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00878.html">std::out_of_range</a></td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="since_2_28"><dt><b><a class="el" href="since_2_28.html#_since_2_28000026">Since glibmm 2.28:</a></b></dt><dd></dd></dl>

</div>
</div>
<a id="ad0a475e0b0b07ea03242c945a5db67e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0a475e0b0b07ea03242c945a5db67e0">&#9670;&#160;</a></span>get_child() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a> Glib::VariantContainerBase::get_child </td>
          <td>(</td>
          <td class="paramtype">gsize&#160;</td>
          <td class="paramname"><em>index</em> = <code>0</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a child item out of a container <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> instance. </p>
<p>This includes variants, maybes, arrays, tuples and dictionary entries. It is an error to call this function on any other type of <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a>.</p>
<p>It is an error if <em>index</em> is greater than the number of child items in the container. See g_variant_n_children().</p>
<p>The returned value is never floating. You should free it with g_variant_unref() when you're done with it.</p>
<p>This function is O(1).</p>
<dl class="since_2_24"><dt><b><a class="el" href="since_2_24.html#_since_2_24000020">Since glibmm 2.24:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">index</td><td>The index of the child to fetch. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The child at the specified index. </dd></dl>

</div>
</div>
<a id="a8b91c45407067ac96a4f70b1512293c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b91c45407067ac96a4f70b1512293c6">&#9670;&#160;</a></span>get_maybe()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Glib::VariantContainerBase::get_maybe </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGlib_1_1VariantBase.html">VariantBase</a>&amp;&#160;</td>
          <td class="paramname"><em>maybe</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>If this is a maybe-typed instance, try to extract its value. </p>
<p>If there is no value (the value is <code>nothing</code>), return <code>false</code>. Otherwise, the value is copied to the supplied <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> and <code>true</code> is returned.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">maybe</td><td>A place in which to return the value, if it isn’t <code>nothing</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="since_2_28"><dt><b><a class="el" href="since_2_28.html#_since_2_28000027">Since glibmm 2.28:</a></b></dt><dd></dd></dl>

</div>
</div>
<a id="a8f5163ad6a44a4886874d8217037d360"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f5163ad6a44a4886874d8217037d360">&#9670;&#160;</a></span>get_n_children()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gsize Glib::VariantContainerBase::get_n_children </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Determines the number of children in a container <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a> instance. </p>
<p>This includes variants, maybes, arrays, tuples and dictionary entries. It is an error to call this function on any other type of <a class="el" href="classGlib_1_1Variant.html" title="Template class used for the specialization of the Variant&lt;&gt; classes. ">Variant</a>.</p>
<p>For variants, the return value is always 1. For values with maybe types, it is always zero or one. For arrays, it is the length of the array. For tuples it is the number of tuple items (which depends only on the type). For dictionary entries, it is always 2</p>
<p>This function is O(1).</p>
<dl class="since_2_24"><dt><b><a class="el" href="since_2_24.html#_since_2_24000019">Since glibmm 2.24:</a></b></dt><dd></dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The number of children in the container. </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sat Mar 31 2018 09:12:11 for glibmm by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>