Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-release > by-pkgid > d8d30ad953f2dbe7e871721325480315 > files > 364

librttr-devel-0.9.6-1.mga7.armv7hl.rpm

<!-- HTML header for doxygen 1.8.8-->
<!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="X-UA-Compatible" content="IE=edge">
        <!-- For Mobile Devices -->
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
        <meta name="generator" content="Doxygen 1.8.15"/>
        <script type="text/javascript" src="jquery.min.js"></script>
        <title>rttr: registration.h File Reference</title>
        <!--<link href="tabs.css" rel="stylesheet" type="text/css"/>-->
        <script type="text/javascript" src="dynsections.js"></script>
        <link rel = "shortcut icon" type = "image/x-icon" href = "favicon.ico">
        <link rel = "stylesheet" href = "fonts/ptsans_regular_macroman/stylesheet.css">
        <link rel = "stylesheet" href = "fonts/source_code_pro_regular/stylesheet.css">
        <link href="doxygen.css" rel="stylesheet" type="text/css" />
        <link href="custom-doxygen.css" rel="stylesheet" type="text/css"/>
        <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
        <link rel="stylesheet" href="custom-bootstrap.css">
        <script src="bootstrap/js/bootstrap.min.js"></script>
        <script type="text/javascript" src="doxy-boot.js"></script>
    </head>
    <body>
     <!--
        <nav class="navbar navbar-default" role="navigation">
            <div class="container">
                <div class="navbar-header">
                    <a class="navbar-brand">rttr 0.9.6</a>
                </div>
            </div>
        </nav>
        -->
        <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
            <div class="content" id="content">
                <div class="container">
                    <div class="row">
                        <div class="col-sm-12 panel panel-default" style="padding-bottom: 15px;">
                            <div style="margin-bottom: 15px;">
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<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('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">registration.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;rttr/detail/base/core_prerequisites.h&quot;</code><br />
<code>#include &quot;<a class="el" href="policy_8h_source.html">rttr/policy.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="access__levels_8h_source.html">rttr/access_levels.h</a>&quot;</code><br />
<code>#include &quot;rttr/detail/registration/bind_types.h&quot;</code><br />
<code>#include &quot;rttr/detail/registration/registration_executer.h&quot;</code><br />
<code>#include &quot;rttr/detail/default_arguments/default_arguments.h&quot;</code><br />
<code>#include &quot;rttr/detail/parameter_info/parameter_names.h&quot;</code><br />
<code>#include &quot;<a class="el" href="variant_8h_source.html">rttr/variant.h</a>&quot;</code><br />
<code>#include &quot;rttr/detail/registration/registration_impl.h&quot;</code><br />
</div>
<p><a href="registration_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classrttr_1_1registration_1_1bind.html">rttr::registration::bind&lt; T &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="classrttr_1_1registration_1_1bind.html">bind</a> class is used to chain registration calls.  <a href="classrttr_1_1registration_1_1bind.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classrttr_1_1registration_1_1bind.html">rttr::registration::bind&lt; T &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="classrttr_1_1registration_1_1bind.html">bind</a> class is used to chain registration calls.  <a href="classrttr_1_1registration_1_1bind.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classrttr_1_1registration_1_1class__.html">rttr::registration::class_&lt; Class_Type &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="classrttr_1_1registration_1_1class__.html">class_</a> is used to register classes to RTTR.  <a href="classrttr_1_1registration_1_1class__.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classrttr_1_1registration.html">rttr::registration</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="classrttr_1_1registration.html">registration</a> class is the entry point for the manual registration of reflection information to the type system.  <a href="classrttr_1_1registration.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacerttr"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacerttr.html">rttr</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:acd4d632edb955a7664489ae6d90aa8bd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="registration_8h.html#acd4d632edb955a7664489ae6d90aa8bd">RTTR_PLUGIN_REGISTRATION</a></td></tr>
<tr class="memdesc:acd4d632edb955a7664489ae6d90aa8bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use this macro to automatically register your reflection information inside a plugin to RTTR.  <a href="#acd4d632edb955a7664489ae6d90aa8bd">More...</a><br /></td></tr>
<tr class="separator:acd4d632edb955a7664489ae6d90aa8bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6326400f16225ee15b52eabcaae8130"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="registration_8h.html#ac6326400f16225ee15b52eabcaae8130">RTTR_REGISTRATION</a></td></tr>
<tr class="memdesc:ac6326400f16225ee15b52eabcaae8130"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use this macro to automatically register your reflection information to RTTR before <code>main</code> is called.  <a href="#ac6326400f16225ee15b52eabcaae8130">More...</a><br /></td></tr>
<tr class="separator:ac6326400f16225ee15b52eabcaae8130"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a307051b21da56e1ec8a63f0aa943797e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="registration_8h.html#a307051b21da56e1ec8a63f0aa943797e">RTTR_REGISTRATION_FRIEND</a></td></tr>
<tr class="memdesc:a307051b21da56e1ec8a63f0aa943797e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Place this macro inside a class, when you need to reflect properties, methods or constructors which are declared in <code>protected</code> or <code>private</code> scope of the class.  <a href="#a307051b21da56e1ec8a63f0aa943797e">More...</a><br /></td></tr>
<tr class="separator:a307051b21da56e1ec8a63f0aa943797e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:afdaed4515c436b34b8e24af714a09c64"><td class="memTemplParams" colspan="2">template&lt;typename... TArgs&gt; </td></tr>
<tr class="memitem:afdaed4515c436b34b8e24af714a09c64"><td class="memTemplItemLeft" align="right" valign="top">detail::default_args&lt; TArgs... &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#afdaed4515c436b34b8e24af714a09c64">rttr::default_arguments</a> (TArgs &amp;&amp;...args)</td></tr>
<tr class="memdesc:afdaed4515c436b34b8e24af714a09c64"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="namespacerttr.html#afdaed4515c436b34b8e24af714a09c64">default_arguments</a> function should be used add default arguments, for <a class="el" href="classrttr_1_1constructor.html">constructors</a> or a <a class="el" href="classrttr_1_1method.html">methods</a> during the registration process of reflection information.  <a href="namespacerttr.html#afdaed4515c436b34b8e24af714a09c64">More...</a><br /></td></tr>
<tr class="separator:afdaed4515c436b34b8e24af714a09c64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cd2b848b4d218241a8b6e8f7cdbeb93"><td class="memItemLeft" align="right" valign="top">detail::metadata&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacerttr.html#a2cd2b848b4d218241a8b6e8f7cdbeb93">rttr::metadata</a> (variant key, variant value)</td></tr>
<tr class="memdesc:a2cd2b848b4d218241a8b6e8f7cdbeb93"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="namespacerttr.html#a2cd2b848b4d218241a8b6e8f7cdbeb93">metadata</a> function can be used to add additional meta data information during the registration process of reflection information.  <a href="namespacerttr.html#a2cd2b848b4d218241a8b6e8f7cdbeb93">More...</a><br /></td></tr>
<tr class="separator:a2cd2b848b4d218241a8b6e8f7cdbeb93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab708b3893cbd5a10e8782f3825052ea6"><td class="memTemplParams" colspan="2">template&lt;typename... TArgs&gt; </td></tr>
<tr class="memitem:ab708b3893cbd5a10e8782f3825052ea6"><td class="memTemplItemLeft" align="right" valign="top">detail::parameter_names&lt; detail::decay_t&lt; TArgs &gt;... &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#ab708b3893cbd5a10e8782f3825052ea6">rttr::parameter_names</a> (TArgs &amp;&amp;...args)</td></tr>
<tr class="memdesc:ab708b3893cbd5a10e8782f3825052ea6"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="namespacerttr.html#ab708b3893cbd5a10e8782f3825052ea6">parameter_names</a> function should be used add human-readable names of the parameters, for <a class="el" href="classrttr_1_1constructor.html">constructors</a> or a <a class="el" href="classrttr_1_1method.html">methods</a> during the registration process of reflection information.  <a href="namespacerttr.html#ab708b3893cbd5a10e8782f3825052ea6">More...</a><br /></td></tr>
<tr class="separator:ab708b3893cbd5a10e8782f3825052ea6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5ab25763f38e207fba4461aeb307e4b"><td class="memTemplParams" colspan="2">template&lt;typename ClassType , typename ReturnType , typename... Args&gt; </td></tr>
<tr class="memitem:ab5ab25763f38e207fba4461aeb307e4b"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#ab5ab25763f38e207fba4461aeb307e4b">rttr::select_const</a> (ReturnType(ClassType::*func)(Args...) const) -&gt; decltype(func)</td></tr>
<tr class="memdesc:ab5ab25763f38e207fba4461aeb307e4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is a helper function to register overloaded const member functions.  <a href="namespacerttr.html#ab5ab25763f38e207fba4461aeb307e4b">More...</a><br /></td></tr>
<tr class="separator:ab5ab25763f38e207fba4461aeb307e4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f3f8702a5c01a032921b5400dcf3a36"><td class="memTemplParams" colspan="2">template&lt;typename ClassType , typename ReturnType , typename... Args&gt; </td></tr>
<tr class="memitem:a8f3f8702a5c01a032921b5400dcf3a36"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#a8f3f8702a5c01a032921b5400dcf3a36">rttr::select_const</a> (ReturnType(ClassType::*func)(Args...) const noexcept) -&gt; decltype(func)</td></tr>
<tr class="memdesc:a8f3f8702a5c01a032921b5400dcf3a36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overload with <code>noexcept</code> function type.  <a href="namespacerttr.html#a8f3f8702a5c01a032921b5400dcf3a36">More...</a><br /></td></tr>
<tr class="separator:a8f3f8702a5c01a032921b5400dcf3a36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2fe0add56b55e3ef993783060346d97"><td class="memTemplParams" colspan="2">template&lt;typename ClassType , typename ReturnType , typename... Args&gt; </td></tr>
<tr class="memitem:ac2fe0add56b55e3ef993783060346d97"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#ac2fe0add56b55e3ef993783060346d97">rttr::select_non_const</a> (ReturnType(ClassType::*func)(Args...)) -&gt; decltype(func)</td></tr>
<tr class="memdesc:ac2fe0add56b55e3ef993783060346d97"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is a helper function to register overloaded const member functions.  <a href="namespacerttr.html#ac2fe0add56b55e3ef993783060346d97">More...</a><br /></td></tr>
<tr class="separator:ac2fe0add56b55e3ef993783060346d97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a824f220ed51f07da6f29d5ab9a121f04"><td class="memTemplParams" colspan="2">template&lt;typename ClassType , typename ReturnType , typename... Args&gt; </td></tr>
<tr class="memitem:a824f220ed51f07da6f29d5ab9a121f04"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#a824f220ed51f07da6f29d5ab9a121f04">rttr::select_non_const</a> (ReturnType(ClassType::*func)(Args...) noexcept) -&gt; decltype(func)</td></tr>
<tr class="memdesc:a824f220ed51f07da6f29d5ab9a121f04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overload with <code>noexcept</code> function type.  <a href="namespacerttr.html#a824f220ed51f07da6f29d5ab9a121f04">More...</a><br /></td></tr>
<tr class="separator:a824f220ed51f07da6f29d5ab9a121f04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1582d7d5b803f7dd5498a4a0166d382d"><td class="memTemplParams" colspan="2">template&lt;typename Signature &gt; </td></tr>
<tr class="memitem:a1582d7d5b803f7dd5498a4a0166d382d"><td class="memTemplItemLeft" align="right" valign="top">Signature *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#a1582d7d5b803f7dd5498a4a0166d382d">rttr::select_overload</a> (Signature *func)</td></tr>
<tr class="memdesc:a1582d7d5b803f7dd5498a4a0166d382d"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is a helper function to register overloaded functions.  <a href="namespacerttr.html#a1582d7d5b803f7dd5498a4a0166d382d">More...</a><br /></td></tr>
<tr class="separator:a1582d7d5b803f7dd5498a4a0166d382d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a798f2d741400e53a74df3c80c4c0c887"><td class="memTemplParams" colspan="2">template&lt;typename Signature , typename ClassType &gt; </td></tr>
<tr class="memitem:a798f2d741400e53a74df3c80c4c0c887"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#a798f2d741400e53a74df3c80c4c0c887">rttr::select_overload</a> (Signature(ClassType::*func)) -&gt; decltype(func)</td></tr>
<tr class="memdesc:a798f2d741400e53a74df3c80c4c0c887"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is a helper function to register overloaded member functions.  <a href="namespacerttr.html#a798f2d741400e53a74df3c80c4c0c887">More...</a><br /></td></tr>
<tr class="separator:a798f2d741400e53a74df3c80c4c0c887"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54ecd8bad715cbc451e7aa8491667d4a"><td class="memTemplParams" colspan="2">template&lt;typename Enum_Type &gt; </td></tr>
<tr class="memitem:a54ecd8bad715cbc451e7aa8491667d4a"><td class="memTemplItemLeft" align="right" valign="top">detail::enum_data&lt; Enum_Type &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerttr.html#a54ecd8bad715cbc451e7aa8491667d4a">rttr::value</a> (string_view, Enum_Type value)</td></tr>
<tr class="memdesc:a54ecd8bad715cbc451e7aa8491667d4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="namespacerttr.html#a54ecd8bad715cbc451e7aa8491667d4a">value</a> function should be used to add a mapping from enum <code>name</code> to <code>value</code> during the registration process of reflection information.  <a href="namespacerttr.html#a54ecd8bad715cbc451e7aa8491667d4a">More...</a><br /></td></tr>
<tr class="separator:a54ecd8bad715cbc451e7aa8491667d4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="acd4d632edb955a7664489ae6d90aa8bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd4d632edb955a7664489ae6d90aa8bd">&#9670;&nbsp;</a></span>RTTR_PLUGIN_REGISTRATION</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RTTR_PLUGIN_REGISTRATION</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Use this macro to automatically register your reflection information inside a plugin to RTTR. </p>
<p>Use it in following way: </p><div class="fragment"><div class="line"><span class="keywordtype">int</span> some_method() { <span class="keywordflow">return</span> 42; }</div><div class="line"></div><div class="line"><a class="code" href="registration_8h.html#acd4d632edb955a7664489ae6d90aa8bd">RTTR_PLUGIN_REGISTRATION</a></div><div class="line">{</div><div class="line">    <a class="code" href="classrttr_1_1registration.html#a5da1c6eb947d700681faa7fec0bf23b7">rttr::registration::method</a>(<span class="stringliteral">&quot;some_method&quot;</span>, &amp;some_method);</div><div class="line">}</div></div><!-- fragment --><p>Just place the macro in global scope in a cpp file.</p>
<dl class="section remark"><dt>Remarks</dt><dd>It is not possible to place the macro multiple times in one cpp file. When you compile your plugin with the <code>gcc</code> toolchain, make sure you use the compiler option: <code>-fno-gnu-unique</code>. otherwise the unregistration will not work properly.</dd></dl>
<dl class="section see"><dt>See also</dt><dd>library </dd></dl>

</div>
</div>
<a id="ac6326400f16225ee15b52eabcaae8130"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac6326400f16225ee15b52eabcaae8130">&#9670;&nbsp;</a></span>RTTR_REGISTRATION</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RTTR_REGISTRATION</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Use this macro to automatically register your reflection information to RTTR before <code>main</code> is called. </p>
<p>Use it in following way: </p><div class="fragment"><div class="line"><a class="code" href="registration_8h.html#ac6326400f16225ee15b52eabcaae8130">RTTR_REGISTRATION</a></div><div class="line">{</div><div class="line">     <a class="code" href="classrttr_1_1registration.html#a5da1c6eb947d700681faa7fec0bf23b7">rttr::registration::method</a>(<span class="stringliteral">&quot;foo&quot;</span>, &amp;foo);</div><div class="line">}</div></div><!-- fragment --><p>Just place the macro in global scope in a cpp file.</p>
<dl class="section remark"><dt>Remarks</dt><dd>It is not possible to place the macro multiple times in one cpp file. </dd></dl>

</div>
</div>
<a id="a307051b21da56e1ec8a63f0aa943797e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a307051b21da56e1ec8a63f0aa943797e">&#9670;&nbsp;</a></span>RTTR_REGISTRATION_FRIEND</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define RTTR_REGISTRATION_FRIEND</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Place this macro inside a class, when you need to reflect properties, methods or constructors which are declared in <code>protected</code> or <code>private</code> scope of the class. </p>
<div class="fragment"><div class="line"><span class="keyword">class </span>Foo</div><div class="line">{</div><div class="line">    <span class="keyword">private</span>:</div><div class="line">        <span class="keywordtype">int</span> m_value;</div><div class="line"></div><div class="line">    <a class="code" href="registration_8h.html#a307051b21da56e1ec8a63f0aa943797e">RTTR_REGISTRATION_FRIEND</a></div><div class="line">};</div></div><!-- fragment --><div class="fragment"><div class="line"><a class="code" href="registration_8h.html#ac6326400f16225ee15b52eabcaae8130">RTTR_REGISTRATION</a></div><div class="line">{</div><div class="line">    <a class="code" href="classrttr_1_1registration_1_1class__.html">rttr::registration::class_&lt;Foo&gt;</a>()</div><div class="line">        .<a class="code" href="classrttr_1_1registration_1_1class__.html#a005a60417fb6d183af475cb4059dc0a0">property</a>(<span class="stringliteral">&quot;value&quot;</span>, &amp;Foo::m_value);</div><div class="line">}</div></div><!-- fragment --> 
</div>
</div>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.8.9.1-->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
<small>
Generated on Thu Apr 11 2019 20:05:57 for rttr - 0.9.6 by 
<a href="http://www.doxygen.org/index.html">doxygen</a>.
</small>
</address>
</body>
</html>