Files
entt/structentt_1_1monostate.html
2023-06-15 11:47:04 +02:00

203 lines
9.7 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" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::monostate&lt; id_type &gt; Struct Template 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-awesome.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 id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.12.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @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:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</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_1monostate.html">monostate</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_1monostate-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::monostate&lt; id_type &gt; Struct Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Minimal implementation of the monostate pattern.
<a href="structentt_1_1monostate.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="monostate_8hpp_source.html">monostate.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ab44055ad9700c8e77b9b2bbb7f91f032"><td class="memTemplParams" colspan="2">template&lt;typename Type &gt; </td></tr>
<tr class="memitem:ab44055ad9700c8e77b9b2bbb7f91f032"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1monostate.html#ab44055ad9700c8e77b9b2bbb7f91f032">operator=</a> (Type val) const noexcept</td></tr>
<tr class="memdesc:ab44055ad9700c8e77b9b2bbb7f91f032"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assigns a value of a specific type to a given key. <br /></td></tr>
<tr class="separator:ab44055ad9700c8e77b9b2bbb7f91f032"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e5a76a9f1aba8a54cd1c8b4d7ded0d3"><td class="memTemplParams" colspan="2">template&lt;typename Type &gt; </td></tr>
<tr class="memitem:a9e5a76a9f1aba8a54cd1c8b4d7ded0d3"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structentt_1_1monostate.html#a9e5a76a9f1aba8a54cd1c8b4d7ded0d3">operator Type</a> () const noexcept</td></tr>
<tr class="memdesc:a9e5a76a9f1aba8a54cd1c8b4d7ded0d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a value of a specific type for a given key. <br /></td></tr>
<tr class="separator:a9e5a76a9f1aba8a54cd1c8b4d7ded0d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;<a class="el" href="namespaceentt.html#a13e040e7b38a8f86d1ab2f096f37b627">id_type</a>&gt;<br />
struct entt::monostate&lt; id_type &gt;</div><p>Minimal implementation of the monostate pattern. </p>
<p>A minimal, yet complete configuration system built on top of the monostate pattern. Thread safe by design, it works only with basic types like <code>int</code>s or <code>bool</code>s.<br />
Multiple types and therefore more than one value can be associated with a single key. Because of this, users must pay attention to use the same type both during an assignment and when they try to read back their data. Otherwise, they can incur in unexpected results. </p>
<p class="definition">Definition at line <a class="el" href="monostate_8hpp_source.html#l00021">21</a> of file <a class="el" href="monostate_8hpp_source.html">monostate.hpp</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a9e5a76a9f1aba8a54cd1c8b4d7ded0d3" name="a9e5a76a9f1aba8a54cd1c8b4d7ded0d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e5a76a9f1aba8a54cd1c8b4d7ded0d3">&#9670;&#160;</a></span>operator Type()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;<a class="el" href="namespaceentt.html#a13e040e7b38a8f86d1ab2f096f37b627">id_type</a> &gt; </div>
<div class="memtemplate">
template&lt;typename Type &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structentt_1_1monostate.html">entt::monostate</a>&lt; <a class="el" href="namespaceentt.html#a13e040e7b38a8f86d1ab2f096f37b627">id_type</a> &gt;::operator 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 class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets a value of a specific type for a given key. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Type of the value to get. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Stored value, if any. </dd></dl>
<p class="definition">Definition at line <a class="el" href="monostate_8hpp_source.html#l00038">38</a> of file <a class="el" href="monostate_8hpp_source.html">monostate.hpp</a>.</p>
</div>
</div>
<a id="ab44055ad9700c8e77b9b2bbb7f91f032" name="ab44055ad9700c8e77b9b2bbb7f91f032"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab44055ad9700c8e77b9b2bbb7f91f032">&#9670;&#160;</a></span>operator=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;<a class="el" href="namespaceentt.html#a13e040e7b38a8f86d1ab2f096f37b627">id_type</a> &gt; </div>
<div class="memtemplate">
template&lt;typename Type &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="structentt_1_1monostate.html">entt::monostate</a>&lt; <a class="el" href="namespaceentt.html#a13e040e7b38a8f86d1ab2f096f37b627">id_type</a> &gt;::operator= </td>
<td>(</td>
<td class="paramtype">Type&#160;</td>
<td class="paramname"><em>val</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Assigns a value of a specific type to a given key. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Type of the value to assign. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">val</td><td>User data to assign to the given key. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="monostate_8hpp_source.html#l00028">28</a> of file <a class="el" href="monostate_8hpp_source.html">monostate.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>src/entt/core/<a class="el" href="monostate_8hpp_source.html">monostate.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.6
</small></address>
</body>
</html>