Files
entt/structentt_1_1meta__data.html
2019-12-19 15:16:07 +01:00

693 lines
35 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::meta_data Struct 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.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">EnTT
&#160;<span id="projectnumber">3.2.2</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="structentt_1_1meta__data.html">meta_data</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="structentt_1_1meta__data-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">entt::meta_data Struct Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Opaque container for meta data.
<a href="structentt_1_1meta__data.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="meta_8hpp_source.html">meta.hpp</a>&gt;</code></p>
<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:a4fe5508ec458bdab269c129345269ff2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#a4fe5508ec458bdab269c129345269ff2">meta_data</a> (const internal::meta_data_node *curr=nullptr) ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a4fe5508ec458bdab269c129345269ff2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an instance from a given node. <a href="structentt_1_1meta__data.html#a4fe5508ec458bdab269c129345269ff2">More...</a><br /></td></tr>
<tr class="separator:a4fe5508ec458bdab269c129345269ff2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa35ccf3601fd184f57333adbb45ad304"><td class="memItemLeft" align="right" valign="top">ENTT_ID_TYPE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#aa35ccf3601fd184f57333adbb45ad304">identifier</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:aa35ccf3601fd184f57333adbb45ad304"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the identifier assigned to a given meta object. <a href="structentt_1_1meta__data.html#aa35ccf3601fd184f57333adbb45ad304">More...</a><br /></td></tr>
<tr class="separator:aa35ccf3601fd184f57333adbb45ad304"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af951f9f860512984d19c706ca3013fed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1meta__type.html">meta_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#af951f9f860512984d19c706ca3013fed">parent</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:af951f9f860512984d19c706ca3013fed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the meta type to which a meta object belongs. <a href="structentt_1_1meta__data.html#af951f9f860512984d19c706ca3013fed">More...</a><br /></td></tr>
<tr class="separator:af951f9f860512984d19c706ca3013fed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04acd97d1fe059a1dd3daaf508e10558"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#a04acd97d1fe059a1dd3daaf508e10558">is_const</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a04acd97d1fe059a1dd3daaf508e10558"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates whether a given meta data is constant or not. <a href="structentt_1_1meta__data.html#a04acd97d1fe059a1dd3daaf508e10558">More...</a><br /></td></tr>
<tr class="separator:a04acd97d1fe059a1dd3daaf508e10558"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94ae645e41c37e0da30a0353d391b9ad"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#a94ae645e41c37e0da30a0353d391b9ad">is_static</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a94ae645e41c37e0da30a0353d391b9ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates whether a given meta data is static or not. <a href="structentt_1_1meta__data.html#a94ae645e41c37e0da30a0353d391b9ad">More...</a><br /></td></tr>
<tr class="separator:a94ae645e41c37e0da30a0353d391b9ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d99cf1fb67d2bea840fa608dc95e64f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1meta__type.html">meta_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#a4d99cf1fb67d2bea840fa608dc95e64f">type</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a4d99cf1fb67d2bea840fa608dc95e64f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the meta type of the underlying object. <a href="structentt_1_1meta__data.html#a4d99cf1fb67d2bea840fa608dc95e64f">More...</a><br /></td></tr>
<tr class="separator:a4d99cf1fb67d2bea840fa608dc95e64f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a776f1d239c00cc96c683bbbd348119da"><td class="memTemplParams" colspan="2">template&lt;typename Type &gt; </td></tr>
<tr class="memitem:a776f1d239c00cc96c683bbbd348119da"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#a776f1d239c00cc96c683bbbd348119da">set</a> (<a class="el" href="classentt_1_1meta__handle.html">meta_handle</a> <a class="el" href="classentt_1_1handle.html">handle</a>, Type &amp;&amp;value) const</td></tr>
<tr class="memdesc:a776f1d239c00cc96c683bbbd348119da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the value of the variable enclosed by a given meta type. <a href="structentt_1_1meta__data.html#a776f1d239c00cc96c683bbbd348119da">More...</a><br /></td></tr>
<tr class="separator:a776f1d239c00cc96c683bbbd348119da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae0a9924efdaedd5bec4ed37efa5e0671"><td class="memTemplParams" colspan="2">template&lt;typename Type &gt; </td></tr>
<tr class="memitem:ae0a9924efdaedd5bec4ed37efa5e0671"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#ae0a9924efdaedd5bec4ed37efa5e0671">set</a> (<a class="el" href="classentt_1_1meta__handle.html">meta_handle</a> <a class="el" href="classentt_1_1handle.html">handle</a>, std::size_t index, Type &amp;&amp;value) const</td></tr>
<tr class="memdesc:ae0a9924efdaedd5bec4ed37efa5e0671"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the i-th element of an array enclosed by a given meta type. <a href="structentt_1_1meta__data.html#ae0a9924efdaedd5bec4ed37efa5e0671">More...</a><br /></td></tr>
<tr class="separator:ae0a9924efdaedd5bec4ed37efa5e0671"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d63885952dd5a7613bab37fc63c8ecd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1meta__any.html">meta_any</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#a3d63885952dd5a7613bab37fc63c8ecd">get</a> (<a class="el" href="classentt_1_1meta__handle.html">meta_handle</a> <a class="el" href="classentt_1_1handle.html">handle</a>) const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a3d63885952dd5a7613bab37fc63c8ecd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the value of the variable enclosed by a given meta type. <a href="structentt_1_1meta__data.html#a3d63885952dd5a7613bab37fc63c8ecd">More...</a><br /></td></tr>
<tr class="separator:a3d63885952dd5a7613bab37fc63c8ecd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98d5a4bd199049ba9ea553ec21fac583"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1meta__any.html">meta_any</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#a98d5a4bd199049ba9ea553ec21fac583">get</a> (<a class="el" href="classentt_1_1meta__handle.html">meta_handle</a> <a class="el" href="classentt_1_1handle.html">handle</a>, std::size_t index) const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a98d5a4bd199049ba9ea553ec21fac583"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the i-th element of an array enclosed by a given meta type. <a href="structentt_1_1meta__data.html#a98d5a4bd199049ba9ea553ec21fac583">More...</a><br /></td></tr>
<tr class="separator:a98d5a4bd199049ba9ea553ec21fac583"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abffe3a3870ba6d7f05c953b7cea50a68"><td class="memTemplParams" colspan="2">template&lt;typename Op &gt; </td></tr>
<tr class="memitem:abffe3a3870ba6d7f05c953b7cea50a68"><td class="memTemplItemLeft" align="right" valign="top">std::enable_if_t&lt; std::is_invocable_v&lt; Op, <a class="el" href="structentt_1_1meta__prop.html">meta_prop</a> &gt;, void &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#abffe3a3870ba6d7f05c953b7cea50a68">prop</a> (Op op) const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:abffe3a3870ba6d7f05c953b7cea50a68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterates all the properties assigned to a meta data. <a href="structentt_1_1meta__data.html#abffe3a3870ba6d7f05c953b7cea50a68">More...</a><br /></td></tr>
<tr class="separator:abffe3a3870ba6d7f05c953b7cea50a68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99b411ff9aba822bc52ebb8b5a43702a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structentt_1_1meta__prop.html">meta_prop</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#a99b411ff9aba822bc52ebb8b5a43702a">prop</a> (<a class="el" href="classentt_1_1meta__any.html">meta_any</a> key) const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:a99b411ff9aba822bc52ebb8b5a43702a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the property associated with a given key. <a href="structentt_1_1meta__data.html#a99b411ff9aba822bc52ebb8b5a43702a">More...</a><br /></td></tr>
<tr class="separator:a99b411ff9aba822bc52ebb8b5a43702a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebff3cb9edf609deb8577ed29225c508"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#aebff3cb9edf609deb8577ed29225c508">operator bool</a> () const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:aebff3cb9edf609deb8577ed29225c508"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if a meta object is valid, false otherwise. <a href="structentt_1_1meta__data.html#aebff3cb9edf609deb8577ed29225c508">More...</a><br /></td></tr>
<tr class="separator:aebff3cb9edf609deb8577ed29225c508"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac44372da54f317b93fec85570bb50cfc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1meta__data.html#ac44372da54f317b93fec85570bb50cfc">operator==</a> (const <a class="el" href="structentt_1_1meta__data.html">meta_data</a> &amp;other) const ENTT_NOEXCEPT</td></tr>
<tr class="memdesc:ac44372da54f317b93fec85570bb50cfc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if two meta objects refer to the same node. <a href="structentt_1_1meta__data.html#ac44372da54f317b93fec85570bb50cfc">More...</a><br /></td></tr>
<tr class="separator:ac44372da54f317b93fec85570bb50cfc"><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>Opaque container for meta data. </p>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01070">1070</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a4fe5508ec458bdab269c129345269ff2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4fe5508ec458bdab269c129345269ff2">&#9670;&nbsp;</a></span>meta_data()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">entt::meta_data::meta_data </td>
<td>(</td>
<td class="paramtype">const internal::meta_data_node *&#160;</td>
<td class="paramname"><em>curr</em> = <code>nullptr</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs an instance from a given node. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">curr</td><td>The underlying node with which to construct the instance. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01072">1072</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a3d63885952dd5a7613bab37fc63c8ecd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d63885952dd5a7613bab37fc63c8ecd">&#9670;&nbsp;</a></span>get() <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"><a class="el" href="classentt_1_1meta__any.html">meta_any</a> entt::meta_data::get </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1meta__handle.html">meta_handle</a>&#160;</td>
<td class="paramname"><em>handle</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the value of the variable enclosed by a given meta type. </p>
<p>It must be possible to cast the instance to the parent type of the meta data. Otherwise, invoking the getter results in an undefined behavior.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>An opaque pointer to an instance of the underlying type. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A meta any containing the value of the underlying variable. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01156">1156</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="a98d5a4bd199049ba9ea553ec21fac583"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98d5a4bd199049ba9ea553ec21fac583">&#9670;&nbsp;</a></span>get() <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"><a class="el" href="classentt_1_1meta__any.html">meta_any</a> entt::meta_data::get </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1meta__handle.html">meta_handle</a>&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>index</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the i-th element of an array enclosed by a given meta type. </p>
<p>It must be possible to cast the instance to the parent type of the meta data. Otherwise, invoking the getter results in an undefined behavior.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>An opaque pointer to an instance of the underlying type. </td></tr>
<tr><td class="paramname">index</td><td>Position of the underlying element to get. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A meta any containing the value of the underlying element. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01170">1170</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="aa35ccf3601fd184f57333adbb45ad304"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa35ccf3601fd184f57333adbb45ad304">&#9670;&nbsp;</a></span>identifier()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ENTT_ID_TYPE entt::meta_data::identifier </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the identifier assigned to a given meta object. </p>
<dl class="section return"><dt>Returns</dt><dd>The identifier assigned to the meta object. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01077">1077</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="a04acd97d1fe059a1dd3daaf508e10558"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04acd97d1fe059a1dd3daaf508e10558">&#9670;&nbsp;</a></span>is_const()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool entt::meta_data::is_const </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Indicates whether a given meta data is constant or not. </p>
<dl class="section return"><dt>Returns</dt><dd>True if the meta data is constant, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01088">1088</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="a94ae645e41c37e0da30a0353d391b9ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94ae645e41c37e0da30a0353d391b9ad">&#9670;&nbsp;</a></span>is_static()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool entt::meta_data::is_static </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Indicates whether a given meta data is static or not. </p>
<p>A static meta data is such that it can be accessed using a null pointer as an instance.</p>
<dl class="section return"><dt>Returns</dt><dd>True if the meta data is static, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01100">1100</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="aebff3cb9edf609deb8577ed29225c508"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebff3cb9edf609deb8577ed29225c508">&#9670;&nbsp;</a></span>operator bool()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">entt::meta_data::operator bool </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if a meta object is valid, false otherwise. </p>
<dl class="section return"><dt>Returns</dt><dd>True if the meta object is valid, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01201">1201</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="ac44372da54f317b93fec85570bb50cfc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac44372da54f317b93fec85570bb50cfc">&#9670;&nbsp;</a></span>operator==()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool entt::meta_data::operator== </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structentt_1_1meta__data.html">meta_data</a> &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if two meta objects refer to the same node. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The meta object with which to compare. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the two meta objects refer to the same node, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01206">1206</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="af951f9f860512984d19c706ca3013fed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af951f9f860512984d19c706ca3013fed">&#9670;&nbsp;</a></span>parent()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1meta__type.html">meta_type</a> entt::meta_data::parent </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the meta type to which a meta object belongs. </p>
<dl class="section return"><dt>Returns</dt><dd>The meta type to which the meta object belongs. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01825">1825</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="a99b411ff9aba822bc52ebb8b5a43702a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99b411ff9aba822bc52ebb8b5a43702a">&#9670;&nbsp;</a></span>prop() <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"><a class="el" href="structentt_1_1meta__prop.html">meta_prop</a> entt::meta_data::prop </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1meta__any.html">meta_any</a>&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the property associated with a given key. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>The key to use to search for a property. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The property associated with the given key, if any. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01191">1191</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="abffe3a3870ba6d7f05c953b7cea50a68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abffe3a3870ba6d7f05c953b7cea50a68">&#9670;&nbsp;</a></span>prop() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Op &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::enable_if_t&lt;std::is_invocable_v&lt;Op, <a class="el" href="structentt_1_1meta__prop.html">meta_prop</a>&gt;, void&gt; entt::meta_data::prop </td>
<td>(</td>
<td class="paramtype">Op&#160;</td>
<td class="paramname"><em>op</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Iterates all the properties assigned to a meta data. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Op</td><td>Type of the function object to invoke. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">op</td><td>A valid function object. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01182">1182</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="ae0a9924efdaedd5bec4ed37efa5e0671"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae0a9924efdaedd5bec4ed37efa5e0671">&#9670;&nbsp;</a></span>set() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool entt::meta_data::set </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1meta__handle.html">meta_handle</a>&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>index</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Type &amp;&amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the i-th element of an array enclosed by a given meta type. </p>
<p>It must be possible to cast the instance to the parent type of the meta data. Otherwise, invoking the setter results in an undefined behavior.<br />
The type of the value must coincide exactly with that of the array type enclosed by the meta data. Otherwise, invoking the setter does nothing.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Type of value to assign. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>An opaque pointer to an instance of the underlying type. </td></tr>
<tr><td class="paramname">index</td><td>Position of the underlying element to set. </td></tr>
<tr><td class="paramname">value</td><td>Parameter to use to set the underlying element. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True in case of success, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01142">1142</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="a776f1d239c00cc96c683bbbd348119da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a776f1d239c00cc96c683bbbd348119da">&#9670;&nbsp;</a></span>set() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool entt::meta_data::set </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1meta__handle.html">meta_handle</a>&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Type &amp;&amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the value of the variable enclosed by a given meta type. </p>
<p>It must be possible to cast the instance to the parent type of the meta data. Otherwise, invoking the setter results in an undefined behavior.<br />
The type of the value must coincide exactly with that of the variable enclosed by the meta data. Otherwise, invoking the setter does nothing.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Type of value to assign. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handle</td><td>An opaque pointer to an instance of the underlying type. </td></tr>
<tr><td class="paramname">value</td><td>Parameter to use to set the underlying variable. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True in case of success, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01122">1122</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<a id="a4d99cf1fb67d2bea840fa608dc95e64f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d99cf1fb67d2bea840fa608dc95e64f">&#9670;&nbsp;</a></span>type()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1meta__type.html">meta_type</a> entt::meta_data::type </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the meta type of the underlying object. </p>
<dl class="section return"><dt>Returns</dt><dd>The meta type of the underlying object, if any. </dd></dl>
<p class="definition">Definition at line <a class="el" href="meta_8hpp_source.html#l01830">1830</a> of file <a class="el" href="meta_8hpp_source.html">meta.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>src/entt/meta/<a class="el" href="meta_8hpp_source.html">meta.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.16
</small></address>
</body>
</html>