<!-- 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: type.h Source File</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&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="headertitle"> <div class="title">type.h</div> </div> </div><!--header--> <div class="contents"> <a href="type_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/************************************************************************************</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">* *</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">* Copyright (c) 2014 - 2018 Axel Menzel <info@rttr.org> *</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">* *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">* This file is part of RTTR (Run Time Type Reflection) *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">* License: MIT License *</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">* *</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">* Permission is hereby granted, free of charge, to any person obtaining *</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">* a copy of this software and associated documentation files (the "Software"), *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">* to deal in the Software without restriction, including without limitation *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">* the rights to use, copy, modify, merge, publish, distribute, sublicense, *</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">* and/or sell copies of the Software, and to permit persons to whom the *</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">* Software is furnished to do so, subject to the following conditions: *</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">* *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">* The above copyright notice and this permission notice shall be included in *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">* all copies or substantial portions of the Software. *</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment">* *</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment">* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR *</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment">* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER *</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment">* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, *</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE *</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment">* SOFTWARE. *</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment">* *</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="comment">*************************************************************************************/</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#ifndef RTTR_TYPE_H_</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#define RTTR_TYPE_H_</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "rttr/detail/base/core_prerequisites.h"</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "<a class="code" href="string__view_8h.html">rttr/string_view.h</a>"</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="array__range_8h.html">rttr/array_range.h</a>"</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include "<a class="code" href="filter__item_8h.html">rttr/filter_item.h</a>"</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include <type_traits></span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include <vector></span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include <string></span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include <memory></span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#include <cstdint></span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">namespace </span><a class="code" href="namespacerttr.html">rttr</a></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> {</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keyword">class </span>variant;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">class </span>constructor;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">class </span>destructor;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keyword">class </span>method;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">class </span>property;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">class </span>enumeration;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">class </span>type;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keyword">class </span>instance;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keyword">class </span>argument;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keyword">template</span><<span class="keyword">typename</span> Target_Type, <span class="keyword">typename</span> Source_Type></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> Target_Type <a class="code" href="namespacerttr.html#ab3dd8b62e5ddca4c1d57cc572ba6bb81">rttr_cast</a>(Source_Type <span class="keywordtype">object</span>) RTTR_NOEXCEPT;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">namespace </span>detail</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span> {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keyword">struct </span>derived_info;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keyword">struct </span>base_class_info;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keyword">struct </span>type_converter_base;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keyword">class </span>type_register;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keyword">class </span>type_register_private;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">static</span> type get_invalid_type() RTTR_NOEXCEPT;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span> struct invalid_type{};</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keyword">struct </span>type_data;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keyword">class </span>destructor_wrapper_base;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keyword">class </span>property_wrapper_base;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> RTTR_LOCAL RTTR_INLINE type create_type(type_data*) RTTR_NOEXCEPT;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keyword">template</span><<span class="keyword">typename</span> T></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> RTTR_LOCAL std::unique_ptr<type_data> make_type_data();</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> Tp, <span class="keyword">typename</span> Converter></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keyword">struct </span>variant_data_base_policy;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keyword">struct </span>type_comparator_base;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> RTTR_API <span class="keywordtype">bool</span> compare_types_less_than(<span class="keyword">const</span> <span class="keywordtype">void</span>*, <span class="keyword">const</span> <span class="keywordtype">void</span>*, <span class="keyword">const</span> type&, <span class="keywordtype">int</span>&);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span> RTTR_API <span class="keywordtype">bool</span> compare_types_equal(<span class="keyword">const</span> <span class="keywordtype">void</span>*, <span class="keyword">const</span> <span class="keywordtype">void</span>*, <span class="keyword">const</span> type&, <span class="keywordtype">bool</span>&);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> } <span class="comment">// end namespace detail</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="classrttr_1_1type.html"> 170</a></span> <span class="keyword">class </span>RTTR_API <a class="code" href="classrttr_1_1type.html">type</a></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span> {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="classrttr_1_1type.html#a695c388f245ae5f550b8ef6bb343a800"> 173</a></span>  <span class="keyword">typedef</span> uintptr_t <a class="code" href="classrttr_1_1type.html#a695c388f245ae5f550b8ef6bb343a800">type_id</a>;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span> </div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  RTTR_INLINE <a class="code" href="classrttr_1_1type.html">type</a>(<span class="keyword">const</span> <a class="code" href="classrttr_1_1type.html">type</a>& other) RTTR_NOEXCEPT;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  RTTR_INLINE <a class="code" href="classrttr_1_1type.html">type</a>& operator=(<span class="keyword">const</span> <a class="code" href="classrttr_1_1type.html">type</a>& other) RTTR_NOEXCEPT;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  RTTR_INLINE <span class="keywordtype">bool</span> <a class="code" href="namespacerttr.html#ac8f898015327841d2862726e29ea6af4">operator<</a>(<span class="keyword">const</span> <a class="code" href="classrttr_1_1type.html">type</a>& other) <span class="keyword">const</span> RTTR_NOEXCEPT;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  RTTR_INLINE <span class="keywordtype">bool</span> <a class="code" href="namespacerttr.html#a394c98c068855b6ea7a914529f391c5d">operator></a>(<span class="keyword">const</span> <a class="code" href="classrttr_1_1type.html">type</a>& other) <span class="keyword">const</span> RTTR_NOEXCEPT;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  RTTR_INLINE <span class="keywordtype">bool</span> <a class="code" href="namespacerttr.html#a8ed1e6b0a98459fa540d4578bfafb266">operator>=</a>(<span class="keyword">const</span> <a class="code" href="classrttr_1_1type.html">type</a>& other) <span class="keyword">const</span> RTTR_NOEXCEPT;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  RTTR_INLINE <span class="keywordtype">bool</span> <a class="code" href="namespacerttr.html#a031dfd0b213dcb2128d8cdf9b32ae573">operator<=</a>(<span class="keyword">const</span> <a class="code" href="classrttr_1_1type.html">type</a>& other) <span class="keyword">const</span> RTTR_NOEXCEPT;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  RTTR_INLINE <span class="keywordtype">bool</span> <a class="code" href="namespacerttr.html#a4a12343f43cbacffc32270264c6d57c9">operator==</a>(<span class="keyword">const</span> <a class="code" href="classrttr_1_1type.html">type</a>& other) <span class="keyword">const</span> RTTR_NOEXCEPT;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  RTTR_INLINE <span class="keywordtype">bool</span> <a class="code" href="namespacerttr.html#a0abd793e9a1346ca80ca4783b7460685">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classrttr_1_1type.html">type</a>& other) <span class="keyword">const</span> RTTR_NOEXCEPT;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span> </div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  RTTR_INLINE <a class="code" href="classrttr_1_1type.html#a695c388f245ae5f550b8ef6bb343a800">type_id</a> get_id() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span> </div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  RTTR_INLINE <a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> get_name() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span> </div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_valid() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  RTTR_INLINE explicit operator <span class="keywordtype">bool</span>() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span> </div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  RTTR_INLINE <a class="code" href="classrttr_1_1type.html">type</a> get_raw_type() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span> </div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  RTTR_INLINE <a class="code" href="classrttr_1_1type.html">type</a> get_wrapped_type() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span> </div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  template<typename T></div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  RTTR_LOCAL static <a class="code" href="classrttr_1_1type.html">type</a> get() RTTR_NOEXCEPT;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  template<typename T></div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  RTTR_LOCAL static <a class="code" href="classrttr_1_1type.html">type</a> get(T&& <span class="keywordtype">object</span>) RTTR_NOEXCEPT;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span> </div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  static <a class="code" href="classrttr_1_1type.html">type</a> get_by_name(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name) RTTR_NOEXCEPT;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span> </div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  static <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1type.html">type</a>> get_types() RTTR_NOEXCEPT;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  RTTR_INLINE std::<span class="keywordtype">size_t</span> get_sizeof() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_class() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span> </div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_template_instantiation() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span> </div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1type.html">type</a>> get_template_arguments() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span> </div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_enumeration() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span> </div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  <a class="code" href="classrttr_1_1enumeration.html">enumeration</a> get_enumeration() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_wrapper() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span> </div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_array() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_associative_container() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span> </div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_sequential_container() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span> </div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_pointer() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span> </div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_arithmetic() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span> </div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_function_pointer() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span> </div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_member_object_pointer() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span> </div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>  RTTR_INLINE <span class="keywordtype">bool</span> is_member_function_pointer() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span> </div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  <span class="keywordtype">bool</span> is_derived_from(const <a class="code" href="classrttr_1_1type.html">type</a>& other) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span> </div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  template<typename T></div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>  <span class="keywordtype">bool</span> is_derived_from() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span> </div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>  <span class="keywordtype">bool</span> is_base_of(const <a class="code" href="classrttr_1_1type.html">type</a>& other) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span> </div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  template<typename T></div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  <span class="keywordtype">bool</span> is_base_of() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span> </div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1type.html">type</a>> get_base_classes() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span> </div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1type.html">type</a>> get_derived_classes() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span> </div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span> </div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>  <a class="code" href="classrttr_1_1variant.html">variant</a> get_metadata(const <a class="code" href="classrttr_1_1variant.html">variant</a>& key) const;</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span> </div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>  <a class="code" href="classrttr_1_1constructor.html">constructor</a> get_constructor(const std::vector<<a class="code" href="classrttr_1_1type.html">type</a>>& params = std::vector<<a class="code" href="classrttr_1_1type.html">type</a>>() ) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span> </div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1constructor.html">constructor</a>> get_constructors() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span> </div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1constructor.html">constructor</a>> get_constructors(filter_items filter) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span> </div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>  <a class="code" href="classrttr_1_1variant.html">variant</a> create(std::vector<<a class="code" href="classrttr_1_1argument.html">argument</a>> args = std::vector<<a class="code" href="classrttr_1_1argument.html">argument</a>>()) const;</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span> </div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>  <a class="code" href="classrttr_1_1destructor.html">destructor</a> get_destructor() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span> </div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>  <span class="keywordtype">bool</span> destroy(<a class="code" href="classrttr_1_1variant.html">variant</a>& obj) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span> </div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span> </div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>  <a class="code" href="classrttr_1_1property.html">property</a> get_property(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span> </div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1property.html">property</a>> get_properties() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span> </div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1property.html">property</a>> get_properties(filter_items filter) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span> </div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>  static <a class="code" href="classrttr_1_1property.html">property</a> get_global_property(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name) RTTR_NOEXCEPT;</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span> </div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>  static <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1property.html">property</a>> get_global_properties() RTTR_NOEXCEPT;</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span> </div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span> </div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>  <a class="code" href="classrttr_1_1variant.html">variant</a> get_property_value(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name, <a class="code" href="classrttr_1_1instance.html">instance</a> obj) const;</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span> </div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>  static <a class="code" href="classrttr_1_1variant.html">variant</a> get_property_value(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name);</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span> </div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>  <span class="keywordtype">bool</span> set_property_value(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name, <a class="code" href="classrttr_1_1instance.html">instance</a> obj, <a class="code" href="classrttr_1_1argument.html">argument</a> arg) const;</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span> </div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>  static <span class="keywordtype">bool</span> set_property_value(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name, <a class="code" href="classrttr_1_1argument.html">argument</a> arg);</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span> </div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span> </div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>  <a class="code" href="classrttr_1_1method.html">method</a> get_method(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span> </div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>  <a class="code" href="classrttr_1_1method.html">method</a> get_method(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name, const std::vector<<a class="code" href="classrttr_1_1type.html">type</a>>& type_list) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span> </div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1method.html">method</a>> get_methods() const RTTR_NOEXCEPT;</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span> </div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>  <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1method.html">method</a>> get_methods(filter_items filter) const RTTR_NOEXCEPT;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span> </div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>  static <a class="code" href="classrttr_1_1method.html">method</a> get_global_method(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name) RTTR_NOEXCEPT;</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span> </div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>  static <a class="code" href="classrttr_1_1method.html">method</a> get_global_method(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name, const std::vector<<a class="code" href="classrttr_1_1type.html">type</a>>& params) RTTR_NOEXCEPT;</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span> </div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>  static <a class="code" href="classrttr_1_1array__range.html">array_range</a><<a class="code" href="classrttr_1_1method.html">method</a>> get_global_methods() RTTR_NOEXCEPT;</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span> </div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span> </div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  <a class="code" href="classrttr_1_1variant.html">variant</a> invoke(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name, <a class="code" href="classrttr_1_1instance.html">instance</a> obj, std::vector<<a class="code" href="classrttr_1_1argument.html">argument</a>> args) const;</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span> </div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>  static <a class="code" href="classrttr_1_1variant.html">variant</a> invoke(<a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> name, std::vector<<a class="code" href="classrttr_1_1argument.html">argument</a>> args);</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span> </div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>  template<typename F></div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>  static <span class="keywordtype">void</span> register_converter_func(F func);</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span> </div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>  template<typename T></div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>  static <span class="keywordtype">void</span> register_wrapper_converter_for_base_classes();</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> </div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>  template<typename T></div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>  static <span class="keywordtype">void</span> register_comparators();</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> </div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>  template<typename T></div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>  static <span class="keywordtype">void</span> register_equal_comparator();</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> </div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>  template<typename T></div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>  static <span class="keywordtype">void</span> register_less_than_comparator();</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> </div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>  private:</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> </div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>  <a class="code" href="classrttr_1_1type.html">type</a>() RTTR_NOEXCEPT;</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> </div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>  RTTR_INLINE explicit <a class="code" href="classrttr_1_1type.html">type</a>(detail::type_data* data) RTTR_NOEXCEPT;</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> </div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>  static <span class="keywordtype">void</span>* apply_offset(<span class="keywordtype">void</span>* ptr, const <a class="code" href="classrttr_1_1type.html">type</a>& source_type, const <a class="code" href="classrttr_1_1type.html">type</a>& target_type) RTTR_NOEXCEPT;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> </div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>  static <a class="code" href="classrttr_1_1type.html">type</a> get_derived_type(<span class="keywordtype">void</span>* ptr, const <a class="code" href="classrttr_1_1type.html">type</a>& source_type) RTTR_NOEXCEPT;</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> </div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>  const detail::type_converter_base* get_type_converter(const <a class="code" href="classrttr_1_1type.html">type</a>& target_type) const RTTR_NOEXCEPT;</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> </div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>  const detail::type_comparator_base* get_equal_comparator() const RTTR_NOEXCEPT;</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span> </div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>  const detail::type_comparator_base* get_less_than_comparator() const RTTR_NOEXCEPT;</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> </div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>  RTTR_INLINE std::<span class="keywordtype">size_t</span> get_pointer_dimension() const RTTR_NOEXCEPT;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> </div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>  RTTR_INLINE <a class="code" href="classrttr_1_1type.html">type</a> get_raw_array_type() const RTTR_NOEXCEPT;</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> </div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>  RTTR_INLINE <a class="code" href="classrttr_1_1basic__string__view.html">string_view</a> get_full_name() const RTTR_NOEXCEPT;</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> </div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>  <span class="keywordtype">void</span> create_wrapped_value(const <a class="code" href="classrttr_1_1argument.html">argument</a>& arg, <a class="code" href="classrttr_1_1variant.html">variant</a>& var) const;</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> </div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> </div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> </div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>  RTTR_INLINE <a class="code" href="classrttr_1_1variant.html">variant</a> create_variant(const <a class="code" href="classrttr_1_1argument.html">argument</a>& data) const;</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> </div><div class="line"><a name="l01196"></a><span class="lineno"><a class="line" href="classrttr_1_1type.html#ad4f13d06475a06f860c63bc68d0c8a4b"> 1196</a></span>  friend class <a class="code" href="classrttr_1_1variant.html">variant</a>;</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>  template<typename Target_Type, typename Source_Type></div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>  friend Target_Type <a class="code" href="namespacerttr.html#ab3dd8b62e5ddca4c1d57cc572ba6bb81">rttr_cast</a>(Source_Type <span class="keywordtype">object</span>) RTTR_NOEXCEPT;</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> </div><div class="line"><a name="l01200"></a><span class="lineno"><a class="line" href="classrttr_1_1type.html#a4be882f1f7adb23031cabee74d6d1699"> 1200</a></span>  friend class <a class="code" href="classrttr_1_1instance.html">instance</a>;</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>  friend class detail::type_register;</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>  friend class detail::type_register_private;</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> </div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>  friend <a class="code" href="classrttr_1_1type.html">type</a> detail::create_type(detail::type_data*) RTTR_NOEXCEPT;</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> </div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>  template<typename T></div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>  friend std::unique_ptr<detail::type_data> detail::make_type_data();</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> </div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>  template<typename T, typename Tp, typename Converter></div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>  friend struct detail::variant_data_base_policy;</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> </div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>  friend RTTR_API <span class="keywordtype">bool</span> detail::compare_types_less_than(const <span class="keywordtype">void</span>*, const <span class="keywordtype">void</span>*, const <a class="code" href="classrttr_1_1type.html">type</a>&, <span class="keywordtype">int</span>&);</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>  friend RTTR_API <span class="keywordtype">bool</span> detail::compare_types_equal(const <span class="keywordtype">void</span>*, const <span class="keywordtype">void</span>*, const <a class="code" href="classrttr_1_1type.html">type</a>&, <span class="keywordtype">bool</span>&);</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> </div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>  private:</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>  detail::type_data* m_type_data;</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> };</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> </div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> } <span class="comment">// end namespace rttr</span></div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> </div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> <span class="preprocessor">#include "rttr/detail/type/type_impl.h"</span></div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span> </div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span> <span class="preprocessor">#endif // RTTR_TYPE_H_</span></div><div class="ttc" id="namespacerttr_html_a8ed1e6b0a98459fa540d4578bfafb266"><div class="ttname"><a href="namespacerttr.html#a8ed1e6b0a98459fa540d4578bfafb266">rttr::operator>=</a></div><div class="ttdeci">constexpr bool operator>=(basic_string_view< CharT, Traits > lhs, basic_string_view< CharT, Traits > rhs) noexcept</div><div class="ttdoc">Compares the two views lhs and rhs.</div></div> <div class="ttc" id="namespacerttr_html"><div class="ttname"><a href="namespacerttr.html">rttr</a></div><div class="ttdef"><b>Definition:</b> access_levels.h:33</div></div> <div class="ttc" id="classrttr_1_1type_html"><div class="ttname"><a href="classrttr_1_1type.html">rttr::type</a></div><div class="ttdoc">The type class holds the type information for any arbitrary object.</div><div class="ttdef"><b>Definition:</b> type.h:170</div></div> <div class="ttc" id="namespacerttr_html_a4a12343f43cbacffc32270264c6d57c9"><div class="ttname"><a href="namespacerttr.html#a4a12343f43cbacffc32270264c6d57c9">rttr::operator==</a></div><div class="ttdeci">constexpr bool operator==(basic_string_view< CharT, Traits > lhs, basic_string_view< CharT, Traits > rhs) noexcept</div><div class="ttdoc">Compares the two views lhs and rhs.</div></div> <div class="ttc" id="filter__item_8h_html"><div class="ttname"><a href="filter__item_8h.html">filter_item.h</a></div></div> <div class="ttc" id="classrttr_1_1array__range_html"><div class="ttname"><a href="classrttr_1_1array__range.html">rttr::array_range</a></div><div class="ttdoc">The array_range class provides a view into an underlying data structure with lower and upper limits.</div><div class="ttdef"><b>Definition:</b> array_range.h:63</div></div> <div class="ttc" id="namespacerttr_html_a031dfd0b213dcb2128d8cdf9b32ae573"><div class="ttname"><a href="namespacerttr.html#a031dfd0b213dcb2128d8cdf9b32ae573">rttr::operator<=</a></div><div class="ttdeci">constexpr bool operator<=(basic_string_view< CharT, Traits > lhs, basic_string_view< CharT, Traits > rhs) noexcept</div><div class="ttdoc">Compares the two views lhs and rhs.</div></div> <div class="ttc" id="classrttr_1_1destructor_html"><div class="ttname"><a href="classrttr_1_1destructor.html">rttr::destructor</a></div><div class="ttdoc">The destructor class provides a destructor for registered types.</div><div class="ttdef"><b>Definition:</b> destructor.h:72</div></div> <div class="ttc" id="classrttr_1_1instance_html"><div class="ttname"><a href="classrttr_1_1instance.html">rttr::instance</a></div><div class="ttdoc">The instance class is used for forwarding the instance of an object to invoke a property or method.</div><div class="ttdef"><b>Definition:</b> instance.h:47</div></div> <div class="ttc" id="classrttr_1_1enumeration_html"><div class="ttname"><a href="classrttr_1_1enumeration.html">rttr::enumeration</a></div><div class="ttdoc">The enumeration class provides several meta information about an enum.</div><div class="ttdef"><b>Definition:</b> enumeration.h:112</div></div> <div class="ttc" id="classrttr_1_1method_html"><div class="ttname"><a href="classrttr_1_1method.html">rttr::method</a></div><div class="ttdoc">The method class provides several meta information about a method and can be invoked.</div><div class="ttdef"><b>Definition:</b> method.h:120</div></div> <div class="ttc" id="classrttr_1_1type_html_a695c388f245ae5f550b8ef6bb343a800"><div class="ttname"><a href="classrttr_1_1type.html#a695c388f245ae5f550b8ef6bb343a800">rttr::type::type_id</a></div><div class="ttdeci">uintptr_t type_id</div><div class="ttdef"><b>Definition:</b> type.h:173</div></div> <div class="ttc" id="namespacerttr_html_a0abd793e9a1346ca80ca4783b7460685"><div class="ttname"><a href="namespacerttr.html#a0abd793e9a1346ca80ca4783b7460685">rttr::operator!=</a></div><div class="ttdeci">constexpr bool operator!=(basic_string_view< CharT, Traits > lhs, basic_string_view< CharT, Traits > rhs) noexcept</div><div class="ttdoc">Compares the two views lhs and rhs.</div></div> <div class="ttc" id="string__view_8h_html"><div class="ttname"><a href="string__view_8h.html">string_view.h</a></div></div> <div class="ttc" id="classrttr_1_1basic__string__view_html"><div class="ttname"><a href="classrttr_1_1basic__string__view.html">rttr::basic_string_view</a></div><div class="ttdoc">The class template basic_string_view describes an non-owning reference to a constant contiguous seque...</div><div class="ttdef"><b>Definition:</b> string_view.h:48</div></div> <div class="ttc" id="classrttr_1_1argument_html"><div class="ttname"><a href="classrttr_1_1argument.html">rttr::argument</a></div><div class="ttdoc">The argument class is used for forwarding arguments to properties or methods.</div><div class="ttdef"><b>Definition:</b> argument.h:51</div></div> <div class="ttc" id="classrttr_1_1property_html"><div class="ttname"><a href="classrttr_1_1property.html">rttr::property</a></div><div class="ttdoc">The property class provides several meta information about a property and gives read/write access to ...</div><div class="ttdef"><b>Definition:</b> property.h:116</div></div> <div class="ttc" id="classrttr_1_1variant_html"><div class="ttname"><a href="classrttr_1_1variant.html">rttr::variant</a></div><div class="ttdoc">The variant class allows to store data of any type and convert between these types transparently.</div><div class="ttdef"><b>Definition:</b> variant.h:197</div></div> <div class="ttc" id="namespacerttr_html_ab3dd8b62e5ddca4c1d57cc572ba6bb81"><div class="ttname"><a href="namespacerttr.html#ab3dd8b62e5ddca4c1d57cc572ba6bb81">rttr::rttr_cast</a></div><div class="ttdeci">Target_Type rttr_cast(Source_Type object) noexcept</div><div class="ttdoc">Casts the given object of type Source_Type to an object of type Target_Type.</div></div> <div class="ttc" id="classrttr_1_1constructor_html"><div class="ttname"><a href="classrttr_1_1constructor.html">rttr::constructor</a></div><div class="ttdoc">The constructor class provides several meta information about a constructor and can be invoked.</div><div class="ttdef"><b>Definition:</b> constructor.h:88</div></div> <div class="ttc" id="array__range_8h_html"><div class="ttname"><a href="array__range_8h.html">array_range.h</a></div></div> <div class="ttc" id="namespacerttr_html_a394c98c068855b6ea7a914529f391c5d"><div class="ttname"><a href="namespacerttr.html#a394c98c068855b6ea7a914529f391c5d">rttr::operator></a></div><div class="ttdeci">constexpr bool operator>(basic_string_view< CharT, Traits > lhs, basic_string_view< CharT, Traits > rhs) noexcept</div><div class="ttdoc">Compares the two views lhs and rhs.</div></div> <div class="ttc" id="namespacerttr_html_ac8f898015327841d2862726e29ea6af4"><div class="ttname"><a href="namespacerttr.html#ac8f898015327841d2862726e29ea6af4">rttr::operator<</a></div><div class="ttdeci">constexpr bool operator<(basic_string_view< CharT, Traits > lhs, basic_string_view< CharT, Traits > rhs) noexcept</div><div class="ttdoc">Compares the two views lhs and rhs.</div></div> </div><!-- fragment --></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>