Files
simdjson-simdjson/element_8h_source.html
T
2023-03-14 02:05:23 +00:00

338 lines
63 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.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>simdjson: include/simdjson/dom/element.h Source File</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.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" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only-darkmode-toggle.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="projectlogo"><img alt="Logo" src="logotiny.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">simdjson
&#160;<span id="projectnumber">3.1.6</span>
</div>
<div id="projectbrief">Ridiculously Fast JSON</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<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','.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: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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('element_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- 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 class="header">
<div class="headertitle">
<div class="title">element.h</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#ifndef SIMDJSON_DOM_ELEMENT_H</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor">#define SIMDJSON_DOM_ELEMENT_H</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160; </div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;simdjson/common_defs.h&quot;</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;simdjson/error.h&quot;</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;simdjson/internal/tape_ref.h&quot;</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &lt;ostream&gt;</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; </div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacesimdjson.html">simdjson</a> {</div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="keyword">namespace </span>internal {</div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="keyword">class </span>string_builder;</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;}</div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="keyword">namespace </span>dom {</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="keyword">class </span><a class="code" href="namespacesimdjson_1_1_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand.html#ac915f0c06e5ab0363e09593bba651330af1f713c9e000f5d3f280adbd124df4f5">array</a>;</div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="keyword">class </span>document;</div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">class </span><a class="code" href="namespacesimdjson_1_1_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand.html#ac915f0c06e5ab0363e09593bba651330aa8cfde6331bd59eb2ac96f8911c4b666">object</a>;</div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="keyword">enum class</span> element_type {</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; ARRAY = <span class="charliteral">&#39;[&#39;</span>, </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; OBJECT = <span class="charliteral">&#39;{&#39;</span>, </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; INT64 = <span class="charliteral">&#39;l&#39;</span>, </div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; UINT64 = <span class="charliteral">&#39;u&#39;</span>, </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; DOUBLE = <span class="charliteral">&#39;d&#39;</span>, </div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; STRING = <span class="charliteral">&#39;&quot;&#39;</span>, </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; BOOL = <span class="charliteral">&#39;t&#39;</span>, </div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; NULL_VALUE = <span class="charliteral">&#39;n&#39;</span> </div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;};</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; </div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classsimdjson_1_1dom_1_1element.html"> 40</a></span>&#160;<span class="keyword">class </span><a class="code" href="classsimdjson_1_1dom_1_1element.html">element</a> {</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; simdjson_inline <a class="code" href="classsimdjson_1_1dom_1_1element.html#a9dbf81ad662ad32168025e8e08686935">element</a>() noexcept;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; simdjson_inline element_type <a class="code" href="classsimdjson_1_1dom_1_1element.html#a19162bf6d94fb6c21bb2bf2e9b78ff0d">type</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;array&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a87c75accdc0b35e06f3d554561ce8cd3">get_array</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;object&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#ab4c2e35dc44664eb04038ad35efc64f9">get_object</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;const char *&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a29c21d70352c9b8af7144fd4f38baaa6">get_c_str</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;size_t&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a9d92145af64401654c20d2885dd4051d">get_string_length</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;std::string_view&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#ae83652b5016ce4d4ff71f8f9bc05913e">get_string</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;int64_t&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#aa954cda836a4748ec9937291a9250604">get_int64</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;uint64_t&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a9e5a750a066f17d5a9a31a24980e0b1d">get_uint64</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;double&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a3e74a8a6ef8318e2de805359126c6d7b">get_double</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;bool&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a548e0fc369eb455ea477e20fb0793627">get_bool</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; </div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#afaaac6e2f58128a01a25b0a5f5abb856">is_array</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a08c7dcebf9e96fe5e4dd6df2959c0024">is_object</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a65bd96042cc0f19dc3e0635937edded4">is_string</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#adadf66ec37675d5f3fac9816a8aacba2">is_int64</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#ac5017726a573f59c3494b92bb66a3beb">is_uint64</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a0d11f69ba87f55960be6f655e4e99aba">is_double</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; </div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a1e3f78b3bee5ec3f33cc4b03dcc87981">is_number</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; </div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#afde562c5aae1b85a03ab6d4b040e7d13">is_bool</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#ae38f84f4272ae3c32b32dd6d5007ffb9">is_null</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; </div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; simdjson_inline <span class="keywordtype">bool</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a4c77063d766c7db197f8674407b504d7">is</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; </div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="classsimdjson_1_1dom_1_1element.html#a47663724b3a6bad8666ccd24cd598bd2"> 220</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;T&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a47663724b3a6bad8666ccd24cd598bd2">get</a>() const noexcept {</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="comment">// Unless the simdjson library provides an inline implementation, calling this method should</span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="comment">// immediately fail.</span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; static_assert(!<span class="keyword">sizeof</span>(T), <span class="stringliteral">&quot;The get method with given type is not implemented by the simdjson library.&quot;</span>);</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; }</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; </div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; simdjson_warn_unused simdjson_inline <a class="code" href="namespacesimdjson.html#a7b735a3a50ba79e3f7f14df5f77d8da9">error_code</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a47663724b3a6bad8666ccd24cd598bd2">get</a>(T &amp;value) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; </div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="classsimdjson_1_1dom_1_1element.html#a5342161b8c52c78b2f5edac10e9d05ca"> 261</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a5342161b8c52c78b2f5edac10e9d05ca">tie</a>(T &amp;value, <a class="code" href="namespacesimdjson.html#a7b735a3a50ba79e3f7f14df5f77d8da9">error_code</a> &amp;error) &amp;&amp; noexcept;</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; </div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="preprocessor">#if SIMDJSON_EXCEPTIONS</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keyword">inline</span> <span class="keyword">operator</span> bool() const noexcept(false);</div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; </div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; inline explicit operator const <span class="keywordtype">char</span>*() const noexcept(false);</div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; </div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; inline operator std::string_view() const noexcept(false);</div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; </div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; inline operator uint64_t() const noexcept(false);</div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; inline operator int64_t() const noexcept(false);</div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; inline operator <span class="keywordtype">double</span>() const noexcept(false);</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; inline operator <a class="code" href="classsimdjson_1_1dom_1_1array.html">array</a>() const noexcept(false);</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; inline operator <span class="keywordtype">object</span>() const noexcept(false);</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; </div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; inline dom::<a class="code" href="classsimdjson_1_1dom_1_1array.html">array</a>::iterator <a class="code" href="classsimdjson_1_1dom_1_1element.html#aa59ecf8e9ac7b1a9e977d2cd3f03aa7f">begin</a>() const noexcept(false);</div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; </div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; inline dom::<a class="code" href="classsimdjson_1_1dom_1_1array.html">array</a>::iterator <a class="code" href="classsimdjson_1_1dom_1_1element.html#a846a790e93c9bad6c40641239bd77b28">end</a>() const noexcept(false);</div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;<span class="preprocessor">#endif </span><span class="comment">// SIMDJSON_EXCEPTIONS</span></div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; </div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;element&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#aca693f57d73a5ce95d1f7bedf67289b7">operator[]</a>(std::string_view key) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; </div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;element&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#aca693f57d73a5ce95d1f7bedf67289b7">operator[]</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *key) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; </div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;element&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a3777fed88f37555f2d090aeb604a117c">at_pointer</a>(<span class="keyword">const</span> std::string_view json_pointer) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; </div>
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;<span class="preprocessor">#ifndef SIMDJSON_DISABLE_DEPRECATED_API</span></div>
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; [[deprecated(<span class="stringliteral">&quot;For standard compliance, use at_pointer instead, and prefix your pointers with a slash &#39;/&#39;, see RFC6901 &quot;</span>)]]</div>
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;element&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#aa8b5798004a859bf922778226b8c1cce">at</a>(<span class="keyword">const</span> std::string_view json_pointer) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;<span class="preprocessor">#endif </span><span class="comment">// SIMDJSON_DISABLE_DEPRECATED_API</span></div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; </div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;element&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#aa8b5798004a859bf922778226b8c1cce">at</a>(<span class="keywordtype">size_t</span> index) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; </div>
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;element&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a686a21f39c755dcbf95116757d2193bd">at_key</a>(std::string_view key) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; </div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keyword">inline</span> <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;element&gt;</a> <a class="code" href="classsimdjson_1_1dom_1_1element.html#a5185447e6bf8949e7c5e9c22711e8764">at_key_case_insensitive</a>(std::string_view key) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; </div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> dump_raw_tape(std::ostream &amp;out) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; </div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; simdjson_inline <a class="code" href="classsimdjson_1_1dom_1_1element.html#a9dbf81ad662ad32168025e8e08686935">element</a>(<span class="keyword">const</span> internal::tape_ref &amp;tape) noexcept;</div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; internal::tape_ref tape;</div>
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classsimdjson_1_1dom_1_1document.html">document</a>;</div>
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classsimdjson_1_1dom_1_1object.html">object</a>;</div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classsimdjson_1_1dom_1_1array.html">array</a>;</div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keyword">friend</span> <span class="keyword">struct </span><a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result</a>&lt;<a class="code" href="classsimdjson_1_1dom_1_1element.html">element</a>&gt;;</div>
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span>simdjson::internal::string_builder;</div>
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; </div>
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;};</div>
<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; </div>
<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;} <span class="comment">// namespace dom</span></div>
<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; </div>
<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;<span class="keyword">template</span>&lt;&gt;</div>
<div class="line"><a name="l00482"></a><span class="lineno"><a class="line" href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html"> 482</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result</a>&lt;dom::element&gt; : <span class="keyword">public</span> internal::simdjson_result_base&lt;dom::element&gt; {</div>
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result</a>() noexcept; </div>
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result</a>(<a class="code" href="classsimdjson_1_1dom_1_1element.html">dom::element</a> &amp;&amp;<a class="code" href="structsimdjson_1_1simdjson__result.html#af7f6d5a5e979b60d5231449d53dcd9be">value</a>) noexcept; </div>
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result</a>(<a class="code" href="namespacesimdjson.html#a7b735a3a50ba79e3f7f14df5f77d8da9">error_code</a> <a class="code" href="structsimdjson_1_1simdjson__result.html#a23470fcc7f01262019e96d3f3010b4a1">error</a>) noexcept; </div>
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; </div>
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;dom::element_type&gt;</a> type() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;T&gt;</a> <a class="code" href="structsimdjson_1_1simdjson__result.html#ab0fafc6d63a14891788a9edaedff4b05">get</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; simdjson_warn_unused simdjson_inline <a class="code" href="namespacesimdjson.html#a7b735a3a50ba79e3f7f14df5f77d8da9">error_code</a> <a class="code" href="structsimdjson_1_1simdjson__result.html#ab0fafc6d63a14891788a9edaedff4b05">get</a>(T &amp;<a class="code" href="structsimdjson_1_1simdjson__result.html#af7f6d5a5e979b60d5231449d53dcd9be">value</a>) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; </div>
<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1array_01_4.html">simdjson_result&lt;dom::array&gt;</a> get_array() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1object_01_4.html">simdjson_result&lt;dom::object&gt;</a> get_object() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;const char *&gt;</a> get_c_str() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;size_t&gt;</a> get_string_length() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;std::string_view&gt;</a> get_string() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;int64_t&gt;</a> get_int64() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;uint64_t&gt;</a> get_uint64() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;double&gt;</a> get_double() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result.html">simdjson_result&lt;bool&gt;</a> get_bool() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; </div>
<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_array() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_object() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_string() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_int64() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_uint64() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_double() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_number() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_bool() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; simdjson_inline <span class="keywordtype">bool</span> is_null() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; </div>
<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html">simdjson_result&lt;dom::element&gt;</a> operator[](std::string_view key) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html">simdjson_result&lt;dom::element&gt;</a> operator[](<span class="keyword">const</span> <span class="keywordtype">char</span> *key) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html">simdjson_result&lt;dom::element&gt;</a> at_pointer(<span class="keyword">const</span> std::string_view json_pointer) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; [[deprecated(<span class="stringliteral">&quot;For standard compliance, use at_pointer instead, and prefix your pointers with a slash &#39;/&#39;, see RFC6901 &quot;</span>)]]</div>
<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html">simdjson_result&lt;dom::element&gt;</a> at(<span class="keyword">const</span> std::string_view json_pointer) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html">simdjson_result&lt;dom::element&gt;</a> at(<span class="keywordtype">size_t</span> index) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html">simdjson_result&lt;dom::element&gt;</a> at_key(std::string_view key) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; simdjson_inline <a class="code" href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html">simdjson_result&lt;dom::element&gt;</a> at_key_case_insensitive(std::string_view key) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; </div>
<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;<span class="preprocessor">#if SIMDJSON_EXCEPTIONS</span></div>
<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; simdjson_inline <span class="keyword">operator</span> bool() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; simdjson_inline <span class="keyword">explicit</span> <span class="keyword">operator</span> <span class="keyword">const</span> <span class="keywordtype">char</span>*() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; simdjson_inline <span class="keyword">operator</span> std::string_view() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; simdjson_inline <span class="keyword">operator</span> uint64_t() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; simdjson_inline <span class="keyword">operator</span> int64_t() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; simdjson_inline <span class="keyword">operator</span> double() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; simdjson_inline <span class="keyword">operator</span> <a class="code" href="classsimdjson_1_1dom_1_1array.html">dom::array</a>() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; simdjson_inline <span class="keyword">operator</span> <a class="code" href="classsimdjson_1_1dom_1_1object.html">dom::object</a>() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; </div>
<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; simdjson_inline <a class="code" href="classsimdjson_1_1dom_1_1array_1_1iterator.html">dom::array::iterator</a> begin() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; simdjson_inline <a class="code" href="classsimdjson_1_1dom_1_1array_1_1iterator.html">dom::array::iterator</a> end() <span class="keyword">const</span> noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;<span class="preprocessor">#endif </span><span class="comment">// SIMDJSON_EXCEPTIONS</span></div>
<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;};</div>
<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; </div>
<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; </div>
<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;} <span class="comment">// namespace simdjson</span></div>
<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; </div>
<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;<span class="preprocessor">#endif </span><span class="comment">// SIMDJSON_DOM_DOCUMENT_H</span></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1array_1_1iterator_html"><div class="ttname"><a href="classsimdjson_1_1dom_1_1array_1_1iterator.html">simdjson::dom::array::iterator</a></div><div class="ttdef"><b>Definition:</b> <a href="dom_2array_8h_source.html#l00027">array.h:27</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1array_html"><div class="ttname"><a href="classsimdjson_1_1dom_1_1array.html">simdjson::dom::array</a></div><div class="ttdoc">JSON array.</div><div class="ttdef"><b>Definition:</b> <a href="dom_2array_8h_source.html#l00022">array.h:22</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1document_html"><div class="ttname"><a href="classsimdjson_1_1dom_1_1document.html">simdjson::dom::document</a></div><div class="ttdoc">A parsed JSON document.</div><div class="ttdef"><b>Definition:</b> <a href="dom_2document_8h_source.html#l00018">document.h:18</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html">simdjson::dom::element</a></div><div class="ttdoc">A JSON element.</div><div class="ttdef"><b>Definition:</b> <a href="element_8h_source.html#l00040">element.h:40</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a08c7dcebf9e96fe5e4dd6df2959c0024"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a08c7dcebf9e96fe5e4dd6df2959c0024">simdjson::dom::element::is_object</a></div><div class="ttdeci">bool is_object() const noexcept</div><div class="ttdoc">Whether this element is a json object.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00333">element-inl.h:333</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a0d11f69ba87f55960be6f655e4e99aba"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a0d11f69ba87f55960be6f655e4e99aba">simdjson::dom::element::is_double</a></div><div class="ttdeci">bool is_double() const noexcept</div><div class="ttdoc">Whether this element is a json number that fits in a double.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00337">element-inl.h:337</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a19162bf6d94fb6c21bb2bf2e9b78ff0d"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a19162bf6d94fb6c21bb2bf2e9b78ff0d">simdjson::dom::element::type</a></div><div class="ttdeci">simdjson_inline element_type type() const noexcept</div><div class="ttdoc">The type of this element.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00188">element-inl.h:188</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a1e3f78b3bee5ec3f33cc4b03dcc87981"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a1e3f78b3bee5ec3f33cc4b03dcc87981">simdjson::dom::element::is_number</a></div><div class="ttdeci">bool is_number() const noexcept</div><div class="ttdoc">Whether this element is a json number.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00339">element-inl.h:339</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a29c21d70352c9b8af7144fd4f38baaa6"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a29c21d70352c9b8af7144fd4f38baaa6">simdjson::dom::element::get_c_str</a></div><div class="ttdeci">simdjson_result&lt; const char * &gt; get_c_str() const noexcept</div><div class="ttdoc">Cast this element to a null-terminated C string.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00203">element-inl.h:203</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a3777fed88f37555f2d090aeb604a117c"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a3777fed88f37555f2d090aeb604a117c">simdjson::dom::element::at_pointer</a></div><div class="ttdeci">simdjson_result&lt; element &gt; at_pointer(const std::string_view json_pointer) const noexcept</div><div class="ttdoc">Get the value associated with the given JSON pointer.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00372">element-inl.h:372</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a3e74a8a6ef8318e2de805359126c6d7b"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a3e74a8a6ef8318e2de805359126c6d7b">simdjson::dom::element::get_double</a></div><div class="ttdeci">simdjson_result&lt; double &gt; get_double() const noexcept</div><div class="ttdoc">Cast this element to a double floating-point.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00261">element-inl.h:261</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a47663724b3a6bad8666ccd24cd598bd2"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a47663724b3a6bad8666ccd24cd598bd2">simdjson::dom::element::get</a></div><div class="ttdeci">simdjson_result&lt; T &gt; get() const noexcept</div><div class="ttdoc">Get the value as the provided type (T).</div><div class="ttdef"><b>Definition:</b> <a href="element_8h_source.html#l00220">element.h:220</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a4c77063d766c7db197f8674407b504d7"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a4c77063d766c7db197f8674407b504d7">simdjson::dom::element::is</a></div><div class="ttdeci">simdjson_inline bool is() const noexcept</div><div class="ttdoc">Tell whether the value can be cast to provided type (T).</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00318">element-inl.h:318</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a5185447e6bf8949e7c5e9c22711e8764"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a5185447e6bf8949e7c5e9c22711e8764">simdjson::dom::element::at_key_case_insensitive</a></div><div class="ttdeci">simdjson_result&lt; element &gt; at_key_case_insensitive(std::string_view key) const noexcept</div><div class="ttdoc">Get the value associated with the given key in a case-insensitive manner.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00404">element-inl.h:404</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a5342161b8c52c78b2f5edac10e9d05ca"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a5342161b8c52c78b2f5edac10e9d05ca">simdjson::dom::element::tie</a></div><div class="ttdeci">void tie(T &amp;value, error_code &amp;error) &amp;&amp;noexcept</div><div class="ttdoc">Get the value as the provided type (T), setting error if it's not the given type.</div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a548e0fc369eb455ea477e20fb0793627"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a548e0fc369eb455ea477e20fb0793627">simdjson::dom::element::get_bool</a></div><div class="ttdeci">simdjson_result&lt; bool &gt; get_bool() const noexcept</div><div class="ttdoc">Cast this element to a bool.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00194">element-inl.h:194</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a65bd96042cc0f19dc3e0635937edded4"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a65bd96042cc0f19dc3e0635937edded4">simdjson::dom::element::is_string</a></div><div class="ttdeci">bool is_string() const noexcept</div><div class="ttdoc">Whether this element is a json string.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00334">element-inl.h:334</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a686a21f39c755dcbf95116757d2193bd"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a686a21f39c755dcbf95116757d2193bd">simdjson::dom::element::at_key</a></div><div class="ttdeci">simdjson_result&lt; element &gt; at_key(std::string_view key) const noexcept</div><div class="ttdoc">Get the value associated with the given key.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00401">element-inl.h:401</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a846a790e93c9bad6c40641239bd77b28"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a846a790e93c9bad6c40641239bd77b28">simdjson::dom::element::end</a></div><div class="ttdeci">dom::array::iterator end() const noexcept(false)</div><div class="ttdoc">Iterate over each element in this array.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00359">element-inl.h:359</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a87c75accdc0b35e06f3d554561ce8cd3"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a87c75accdc0b35e06f3d554561ce8cd3">simdjson::dom::element::get_array</a></div><div class="ttdeci">simdjson_result&lt; array &gt; get_array() const noexcept</div><div class="ttdoc">Cast this element to an array.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00283">element-inl.h:283</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a9d92145af64401654c20d2885dd4051d"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a9d92145af64401654c20d2885dd4051d">simdjson::dom::element::get_string_length</a></div><div class="ttdeci">simdjson_result&lt; size_t &gt; get_string_length() const noexcept</div><div class="ttdoc">Gives the length in bytes of the string.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00213">element-inl.h:213</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a9dbf81ad662ad32168025e8e08686935"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a9dbf81ad662ad32168025e8e08686935">simdjson::dom::element::element</a></div><div class="ttdeci">simdjson_inline element() noexcept</div><div class="ttdoc">Create a new, invalid element.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00185">element-inl.h:185</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_a9e5a750a066f17d5a9a31a24980e0b1d"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#a9e5a750a066f17d5a9a31a24980e0b1d">simdjson::dom::element::get_uint64</a></div><div class="ttdeci">simdjson_result&lt; uint64_t &gt; get_uint64() const noexcept</div><div class="ttdoc">Cast this element to an unsigned integer.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00232">element-inl.h:232</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_aa59ecf8e9ac7b1a9e977d2cd3f03aa7f"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#aa59ecf8e9ac7b1a9e977d2cd3f03aa7f">simdjson::dom::element::begin</a></div><div class="ttdeci">dom::array::iterator begin() const noexcept(false)</div><div class="ttdoc">Iterate over each element in this array.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00356">element-inl.h:356</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_aa8b5798004a859bf922778226b8c1cce"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#aa8b5798004a859bf922778226b8c1cce">simdjson::dom::element::at</a></div><div class="ttdeci">simdjson_result&lt; element &gt; at(const std::string_view json_pointer) const noexcept</div><div class="ttdoc">Version 0.4 of simdjson used an incorrect interpretation of the JSON Pointer standard and allowed the...</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00391">element-inl.h:391</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_aa954cda836a4748ec9937291a9250604"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#aa954cda836a4748ec9937291a9250604">simdjson::dom::element::get_int64</a></div><div class="ttdeci">simdjson_result&lt; int64_t &gt; get_int64() const noexcept</div><div class="ttdoc">Cast this element to a signed integer.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00246">element-inl.h:246</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_ab4c2e35dc44664eb04038ad35efc64f9"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#ab4c2e35dc44664eb04038ad35efc64f9">simdjson::dom::element::get_object</a></div><div class="ttdeci">simdjson_result&lt; object &gt; get_object() const noexcept</div><div class="ttdoc">Cast this element to an object.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00292">element-inl.h:292</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_ac5017726a573f59c3494b92bb66a3beb"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#ac5017726a573f59c3494b92bb66a3beb">simdjson::dom::element::is_uint64</a></div><div class="ttdeci">bool is_uint64() const noexcept</div><div class="ttdoc">Whether this element is a json number that fits in an unsigned 64-bit integer.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00336">element-inl.h:336</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_aca693f57d73a5ce95d1f7bedf67289b7"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#aca693f57d73a5ce95d1f7bedf67289b7">simdjson::dom::element::operator[]</a></div><div class="ttdeci">simdjson_result&lt; element &gt; operator[](std::string_view key) const noexcept</div><div class="ttdoc">Get the value associated with the given key.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00365">element-inl.h:365</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_adadf66ec37675d5f3fac9816a8aacba2"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#adadf66ec37675d5f3fac9816a8aacba2">simdjson::dom::element::is_int64</a></div><div class="ttdeci">bool is_int64() const noexcept</div><div class="ttdoc">Whether this element is a json number that fits in a signed 64-bit integer.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00335">element-inl.h:335</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_ae38f84f4272ae3c32b32dd6d5007ffb9"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#ae38f84f4272ae3c32b32dd6d5007ffb9">simdjson::dom::element::is_null</a></div><div class="ttdeci">bool is_null() const noexcept</div><div class="ttdoc">Whether this element is a json null.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00341">element-inl.h:341</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_ae83652b5016ce4d4ff71f8f9bc05913e"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#ae83652b5016ce4d4ff71f8f9bc05913e">simdjson::dom::element::get_string</a></div><div class="ttdeci">simdjson_result&lt; std::string_view &gt; get_string() const noexcept</div><div class="ttdoc">Cast this element to a string.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00223">element-inl.h:223</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_afaaac6e2f58128a01a25b0a5f5abb856"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#afaaac6e2f58128a01a25b0a5f5abb856">simdjson::dom::element::is_array</a></div><div class="ttdeci">bool is_array() const noexcept</div><div class="ttdoc">Whether this element is a json array.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00332">element-inl.h:332</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1element_html_afde562c5aae1b85a03ab6d4b040e7d13"><div class="ttname"><a href="classsimdjson_1_1dom_1_1element.html#afde562c5aae1b85a03ab6d4b040e7d13">simdjson::dom::element::is_bool</a></div><div class="ttdeci">bool is_bool() const noexcept</div><div class="ttdoc">Whether this element is a json true or false.</div><div class="ttdef"><b>Definition:</b> <a href="element-inl_8h_source.html#l00338">element-inl.h:338</a></div></div>
<div class="ttc" id="aclasssimdjson_1_1dom_1_1object_html"><div class="ttname"><a href="classsimdjson_1_1dom_1_1object.html">simdjson::dom::object</a></div><div class="ttdoc">JSON object.</div><div class="ttdef"><b>Definition:</b> <a href="dom_2object_8h_source.html#l00022">object.h:22</a></div></div>
<div class="ttc" id="anamespacesimdjson_1_1_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_html_ac915f0c06e5ab0363e09593bba651330aa8cfde6331bd59eb2ac96f8911c4b666"><div class="ttname"><a href="namespacesimdjson_1_1_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand.html#ac915f0c06e5ab0363e09593bba651330aa8cfde6331bd59eb2ac96f8911c4b666">simdjson::SIMDJSON_IMPLEMENTATION::ondemand::json_type::object</a></div><div class="ttdeci">@ object</div><div class="ttdoc">A JSON object ( { &quot;a&quot;: 1, &quot;b&quot; 2, ... } )</div></div>
<div class="ttc" id="anamespacesimdjson_1_1_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_html_ac915f0c06e5ab0363e09593bba651330af1f713c9e000f5d3f280adbd124df4f5"><div class="ttname"><a href="namespacesimdjson_1_1_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand.html#ac915f0c06e5ab0363e09593bba651330af1f713c9e000f5d3f280adbd124df4f5">simdjson::SIMDJSON_IMPLEMENTATION::ondemand::json_type::array</a></div><div class="ttdeci">@ array</div><div class="ttdoc">A JSON array ( [ 1, 2, 3 ... ] )</div></div>
<div class="ttc" id="anamespacesimdjson_html"><div class="ttname"><a href="namespacesimdjson.html">simdjson</a></div><div class="ttdoc">We want to support argument-dependent lookup (ADL).</div><div class="ttdef"><b>Definition:</b> <a href="arm64_2bitmanipulation_8h_source.html#l00004">bitmanipulation.h:4</a></div></div>
<div class="ttc" id="anamespacesimdjson_html_a7b735a3a50ba79e3f7f14df5f77d8da9"><div class="ttname"><a href="namespacesimdjson.html#a7b735a3a50ba79e3f7f14df5f77d8da9">simdjson::error_code</a></div><div class="ttdeci">error_code</div><div class="ttdoc">All possible errors returned by simdjson.</div><div class="ttdef"><b>Definition:</b> <a href="error_8h_source.html#l00017">error.h:17</a></div></div>
<div class="ttc" id="astructsimdjson_1_1simdjson__result_3_01dom_1_1array_01_4_html"><div class="ttname"><a href="structsimdjson_1_1simdjson__result_3_01dom_1_1array_01_4.html">simdjson::simdjson_result&lt; dom::array &gt;</a></div><div class="ttdoc">The result of a JSON conversion that may fail.</div><div class="ttdef"><b>Definition:</b> <a href="dom_2array_8h_source.html#l00149">array.h:149</a></div></div>
<div class="ttc" id="astructsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4_html"><div class="ttname"><a href="structsimdjson_1_1simdjson__result_3_01dom_1_1element_01_4.html">simdjson::simdjson_result&lt; dom::element &gt;</a></div><div class="ttdoc">The result of a JSON navigation that may fail.</div><div class="ttdef"><b>Definition:</b> <a href="element_8h_source.html#l00482">element.h:482</a></div></div>
<div class="ttc" id="astructsimdjson_1_1simdjson__result_3_01dom_1_1object_01_4_html"><div class="ttname"><a href="structsimdjson_1_1simdjson__result_3_01dom_1_1object_01_4.html">simdjson::simdjson_result&lt; dom::object &gt;</a></div><div class="ttdoc">The result of a JSON conversion that may fail.</div><div class="ttdef"><b>Definition:</b> <a href="dom_2object_8h_source.html#l00238">object.h:238</a></div></div>
<div class="ttc" id="astructsimdjson_1_1simdjson__result_html"><div class="ttname"><a href="structsimdjson_1_1simdjson__result.html">simdjson::simdjson_result</a></div><div class="ttdoc">The result of a simdjson operation that could fail.</div><div class="ttdef"><b>Definition:</b> <a href="error_8h_source.html#l00205">error.h:205</a></div></div>
<div class="ttc" id="astructsimdjson_1_1simdjson__result_html_a23470fcc7f01262019e96d3f3010b4a1"><div class="ttname"><a href="structsimdjson_1_1simdjson__result.html#a23470fcc7f01262019e96d3f3010b4a1">simdjson::simdjson_result::error</a></div><div class="ttdeci">simdjson_inline error_code error() const noexcept</div><div class="ttdoc">The error.</div><div class="ttdef"><b>Definition:</b> <a href="error-inl_8h_source.html#l00132">error-inl.h:132</a></div></div>
<div class="ttc" id="astructsimdjson_1_1simdjson__result_html_ab0fafc6d63a14891788a9edaedff4b05"><div class="ttname"><a href="structsimdjson_1_1simdjson__result.html#ab0fafc6d63a14891788a9edaedff4b05">simdjson::simdjson_result::get</a></div><div class="ttdeci">simdjson_warn_unused simdjson_inline error_code get(T &amp;value) &amp;&amp;noexcept</div><div class="ttdoc">Move the value to the provided variable.</div><div class="ttdef"><b>Definition:</b> <a href="error-inl_8h_source.html#l00127">error-inl.h:127</a></div></div>
<div class="ttc" id="astructsimdjson_1_1simdjson__result_html_af7f6d5a5e979b60d5231449d53dcd9be"><div class="ttname"><a href="structsimdjson_1_1simdjson__result.html#af7f6d5a5e979b60d5231449d53dcd9be">simdjson::simdjson_result::value</a></div><div class="ttdeci">simdjson_inline T &amp; value() &amp;noexcept(false)</div><div class="ttdoc">Get the result value.</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_49a0b2767ded4a45005c5d6720a18cd1.html">simdjson</a></li><li class="navelem"><a class="el" href="dir_438095d7beafc60159803dc5832a82bd.html">dom</a></li><li class="navelem"><b>element.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
</ul>
</div>
</body>
</html>