This commit is contained in:
lemire
2023-09-11 15:11:23 +00:00
parent cf2fc7dbc3
commit 13e59e29af
8 changed files with 115 additions and 43 deletions
+76 -4
View File
@@ -266,7 +266,7 @@ Using the Parsed JSON</h1>
</blockquote>
<p>* <b>Field Access:</b> To get the value of the "foo" field in an object, use <code>object["foo"]</code>. This will scan through the object looking for the field with the matching string, doing a character-by-character comparison. It may generate the error <code><a class="el" href="namespacesimdjson.html#a7b735a3a50ba79e3f7f14df5f77d8da9a4a2c71f8eca438b3f0553a2811bdab9a" title="JSON field not found in object.">simdjson::NO_SUCH_FIELD</a></code> if there is no such key in the object, it may throw an exception (see <a href="#error-handling">Error Handling</a>). For efficiency reason, you should avoid looking up the same field repeatedly: e.g., do not do <code>object["foo"]</code> followed by <code>object["foo"]</code> with the same <code>object</code> instance. Keep in mind that On Demand does not buffer or save the result of the parsing: if you repeatedly access <code>object["foo"]</code>, then it must repeatedly seek the key and parse the content. The library does not provide a distinct function to check if a key is present, instead we recommend you attempt to access the key: e.g., by doing <code>ondemand::value val{}; if (!object["foo"].get(val)) {...}</code>, you have that <code>val</code> contains the requested value inside the if clause. It is your responsibility as a user to temporarily keep a reference to the value (<code>auto v = object["foo"]</code>), or to consume the content and store it in your own data structures. If you consume an object twice: <code>std::string_view(object["foo"]</code> followed by <code>std::string_view(object["foo"]</code> then your code is in error. Furthermore, you can only consume one field at a time, on the same object. The value instance you get from <code>content["bids"]</code> becomes invalid when you call <code>content["asks"]</code>. If you have retrieved <code>content["bids"].get_array()</code> and you later call <code>content["asks"].get_array()</code>, then the first array should no longer be accessed: it would be unsafe to do so. You can detect such mistakes by first compiling and running the code in Debug mode: an OUT_OF_ORDER_ITERATION error is generated.</p>
<blockquote class="doxtable">
<p>NOTE: JSON allows you to escape characters in keys. E.g., the key <code>"date"</code> may be written as <code>"\u0064\u0061\u0074\u0065"</code>. By default, simdjson does <em>not</em> unescape keys when matching by default. Thus if you search for the key <code>"date"</code> and the JSON document uses <code>"\u0064\u0061\u0074\u0065"</code> as a key, it will not be recognized. This is not generally a problem. Nevertheless, if you do need to support escaped keys, the method <code>unescaped_key()</code> provides the desired unescaped keys by parsing and writing out the unescaped keys to a string buffer and returning a <code>std::string_view</code> instance. You should expect a performance penalty when using <code>unescaped_key()</code>.</p>
<p>NOTE: JSON allows you to escape characters in keys. E.g., the key <code>"date"</code> may be written as <code>"\u0064\u0061\u0074\u0065"</code>. By default, simdjson does <em>not</em> unescape keys when matching by default. Thus if you search for the key <code>"date"</code> and the JSON document uses <code>"\u0064\u0061\u0074\u0065"</code> as a key, it will not be recognized. This is not generally a problem. Nevertheless, if you do need to support escaped keys, the method <code>unescaped_key()</code> provides the desired unescaped keys by parsing and writing out the unescaped keys to a string buffer and returning a <code>std::string_view</code> instance. The <code>unescaped_key</code> takes an optional Boolean value: passing it true will decode invalid Unicode sequences with replacement, meaning that the decoding always succeeds but bogus Unicode replacement characters are inserted. In general, you should expect a performance penalty when using <code>unescaped_key()</code> compared to <code>key()</code> because of the string processing: the <code>key()</code> function just points inside the source JSON document.</p>
<div class="fragment"><div class="line"> {c++}</div>
<div class="line">auto json = R&quot;({&quot;k\u0065y&quot;: 1})&quot;_padded;</div>
<div class="line">ondemand::parser parser;</div>
@@ -295,9 +295,10 @@ Using the Parsed JSON</h1>
<div class="line">double x = doc[&quot;x&quot;]; // Success: [] loops back around to find &quot;x&quot;</div>
</div><!-- fragment --> </blockquote>
<p>* <b>Array Iteration:</b> To iterate through an array, use <code>for (auto value : array) { ... }</code>. This will step through each value in the JSON array.</p>
<p>If you know the type of the value, you can cast it right there, too! <code>for (double value : array) { ... }</code>.</p><ul>
<li><b>Object Iteration:</b> You can iterate through an object's fields, as well: <code>for (auto field : object) { ... }</code><ul>
<li><code>field.unescaped_key()</code> will get you the unescaped key string.</li>
<p>If you know the type of the value, you can cast it right there, too! <code>for (double value : array) { ... }</code>.</p>
<p>You may also use explicit iterators: <code>for(auto i = array.begin(); i != array.end(); i++) {}</code>. You can check that an array is empty with the condition <code>auto i = array.begin(); if(i == array.end()) {...}</code>.</p><ul>
<li><b>Object Iteration:</b> You can iterate through an object's fields, as well: <code>for (auto field : object) { ... }</code>. You may also use explicit iterators : <code>for(auto i = object.begin(); i != object.end(); i++) { auto field = *i; .... }</code>. You can check that an object is empty with the condition <code>auto i = object.begin(); if(i == object.end()) {...}</code>.<ul>
<li><code>field.unescaped_key()</code> will get you the unescaped key string. E.g., the JSON string <code>"\u00e1"</code> becomes the Unicode string <code>á</code>. Optionally, you pass <code>true</code> as a parameter to the <code>unescaped_key</code> method if you want invalid escape sequences to be replaced by a default replacement character (e.g., <code>\ud800\ud801\ud811</code>): otherwise bad escape sequences lead to an immediate error.</li>
<li><code>field.value()</code> will get you the value, which you can then use all these other methods on.</li>
</ul>
</li>
@@ -1431,6 +1432,77 @@ Examples</h1>
<div class="line"> }</div>
<div class="line"> return true;</div>
<div class="line">}</div>
</div><!-- fragment --><ul>
<li>Example 3: CRT</li>
</ul>
<div class="fragment"><div class="line"> {C++}</div>
<div class="line"> </div>
<div class="line">bool example() {</div>
<div class="line"> padded_string padded_input_json = R&quot;([</div>
<div class="line"> { &quot;monitor&quot;: [</div>
<div class="line"> { &quot;id&quot;: &quot;monitor&quot;, &quot;type&quot;: &quot;toggle&quot;, &quot;label&quot;: &quot;monitor&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;profile&quot;, &quot;type&quot;: &quot;selector&quot;, &quot;label&quot;: &quot;collection&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;overlay&quot;, &quot;type&quot;: &quot;selector&quot;, &quot;label&quot;: &quot;overlay&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;zoom&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;zoom&quot; }</div>
<div class="line"> ] },</div>
<div class="line"> </div>
<div class="line"> { &quot;crt&quot;: [</div>
<div class="line"> { &quot;id&quot;: &quot;system&quot;, &quot;type&quot;: &quot;multi&quot;, &quot;label&quot;: &quot;system&quot;, &quot;choices&quot;: &quot;PAL, NTSC&quot; },</div>
<div class="line"> { &quot;type&quot;: &quot;spacer&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;brightness&quot;, &quot;type&quot;: &quot;slider&quot;, &quot;icon&quot;: &quot;brightness&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;contrast&quot;, &quot;type&quot;: &quot;slider&quot;, &quot;icon&quot;: &quot;contrast&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;saturation&quot;, &quot;type&quot;: &quot;slider&quot;, &quot;icon&quot;: &quot;saturation&quot; },</div>
<div class="line"> { &quot;type&quot;: &quot;spacer&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;overscan&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;overscan&quot; },</div>
<div class="line"> { &quot;type&quot;: &quot;spacer&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;emulation&quot;, &quot;type&quot;: &quot;toggle&quot;, &quot;label&quot;: &quot;CRT emulation&quot; },</div>
<div class="line"> { &quot;type&quot;: &quot;spacer&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;curve&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;curve&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;bleed&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;bleed&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;vignette&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;vignette&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;scanlines&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;scanlines&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;gridlines&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;gridlines&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;glow&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;glow&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;flicker&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;flicker&quot; },</div>
<div class="line"> { &quot;id&quot;: &quot;noise&quot;, &quot;type&quot;: &quot;toggleSlider&quot;, &quot;label&quot;: &quot;noise&quot; },</div>
<div class="line"> {}</div>
<div class="line"> ] }</div>
<div class="line">])&quot;_padded;</div>
<div class="line"> auto parser = ondemand::parser{};</div>
<div class="line"> auto doc = parser.iterate(padded_input_json);</div>
<div class="line"> auto root_array = doc.get_array();</div>
<div class="line"> // the root should be an object, not an array, but that&#39;s the JSON we are</div>
<div class="line"> // given.</div>
<div class="line"> for (ondemand::object node : root_array) {</div>
<div class="line"> // We know that we are going to have just one element in the object.</div>
<div class="line"> for (auto field : node) {</div>
<div class="line"> std::cout &lt;&lt; &quot;\n\ntop level:&quot; &lt;&lt; field.key() &lt;&lt; std::endl;</div>
<div class="line"> // You can get a proper std::string_view for the key with:</div>
<div class="line"> // std::string_view key = field.unescaped_key();</div>
<div class="line"> // and second for-range loop to get child-elements here</div>
<div class="line"> for (ondemand::object inner_object : field.value()) {</div>
<div class="line"> auto i = inner_object.begin();</div>
<div class="line"> if (i == inner_object.end()) {</div>
<div class="line"> std::cout &lt;&lt; &quot;empty object&quot; &lt;&lt; std::endl;</div>
<div class="line"> continue;</div>
<div class="line"> } else {</div>
<div class="line"> for (; i != inner_object.end(); ++i) {</div>
<div class="line"> auto inner_field = *i;</div>
<div class="line"> std::cout &lt;&lt; &#39;&quot;&#39; &lt;&lt; inner_field.key()</div>
<div class="line"> &lt;&lt; &quot;\&quot; : &quot; &lt;&lt; inner_field.value() &lt;&lt; &quot;, &quot;;</div>
<div class="line"> // You can get proper std::string_view for the key and value with:</div>
<div class="line"> // std::string_view inner_key = field.unescaped_key();</div>
<div class="line"> // std::string_view value_str = field.value();</div>
<div class="line"> }</div>
<div class="line"> }</div>
<div class="line"> std::cout &lt;&lt; std::endl;</div>
<div class="line"> }</div>
<div class="line"> // You can break here if you only want just the first element.</div>
<div class="line"> // break;</div>
<div class="line"> }</div>
<div class="line"> }</div>
<div class="line"> return true;</div>
<div class="line">}</div>
</div><!-- fragment --><h1><a class="anchor" id="autotoc_md30"></a>
Performance Tips</h1>
<ul>
+6 -6
View File
@@ -188,12 +188,12 @@ var NAVTREE =
var NAVTREEINDEX =
[
"amalgamated_8h_source.html",
"classsimdjson_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_1_1object.html#ad742392a9223e096f1be16b7bbf20ca8",
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a498ffa7fca4164634f87ff2ef0905f8b",
"logger-inl_8h.html#a720bb462b108c1f9bcaa02cdcdfe6546",
"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#af941be7ff0cfaeb30d15d2fb52e76dd1",
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#aca433867baaffeff86367c88bf192572"
"",
"classsimdjson_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_1_1object.html#aa14649f261616070b04829c9ba6b28da",
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a2049ae539dca6999cc33300d212a5014",
"logger-inl_8h.html#a273e5f25cfdef1064a5225a47d85eb4f",
"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#ac915f0c06e5ab0363e09593bba651330ab45cffe084dd3d20d928bee85e7b0f21",
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ab10a7c98d14d3a40aef1a8b1e9cd29d2"
];
var SYNCONMSG = 'click to disable panel synchronisation';
+5 -5
View File
@@ -1,5 +1,9 @@
var NAVTREEINDEX0 =
{
"":[10,0,0,6],
"":[10,0,0,6,0],
"":[10,0,1],
"":[10,0,0,6,1,0],
"amalgamated_8h_source.html":[12,0,0,0,4,1],
"annotated.html":[11,0],
"arm64_2base_8h_source.html":[12,0,0,0,0,0],
@@ -245,9 +249,5 @@ var NAVTREEINDEX0 =
"classsimdjson_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_1_1object.html#a6724eb440d3fb40018a9a47c715352ed":[11,0,0,1,0,7,1],
"classsimdjson_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_1_1object.html#a71600033791f9c6bbc9f40fb2f82fdc8":[11,0,0,1,0,7,15],
"classsimdjson_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_1_1object.html#a7c20332b4481f29ace969e40cfce5f5f":[11,0,0,1,0,7,17],
"classsimdjson_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_1_1object.html#a9f1cd920980a8bc0330d2c7f1f0be74b":[11,0,0,1,0,7,14],
"classsimdjson_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_1_1object.html#aa14649f261616070b04829c9ba6b28da":[11,0,0,1,0,7,18],
"classsimdjson_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_1_1object.html#aa25020165cc5a191026a243a10da6558":[11,0,0,1,0,7,8],
"classsimdjson_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_1_1object.html#ab6b2e9769ce75fc625aa91504f26d82b":[11,0,0,1,0,7,7],
"classsimdjson_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_1_1object.html#ad210f9115679a625ada433add55eff51":[11,0,0,1,0,7,12]
"classsimdjson_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_1_1object.html#a9f1cd920980a8bc0330d2c7f1f0be74b":[11,0,0,1,0,7,14]
};
+5 -5
View File
@@ -1,5 +1,9 @@
var NAVTREEINDEX1 =
{
"classsimdjson_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_1_1object.html#aa14649f261616070b04829c9ba6b28da":[11,0,0,1,0,7,18],
"classsimdjson_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_1_1object.html#aa25020165cc5a191026a243a10da6558":[11,0,0,1,0,7,8],
"classsimdjson_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_1_1object.html#ab6b2e9769ce75fc625aa91504f26d82b":[11,0,0,1,0,7,7],
"classsimdjson_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_1_1object.html#ad210f9115679a625ada433add55eff51":[11,0,0,1,0,7,12],
"classsimdjson_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_1_1object.html#ad742392a9223e096f1be16b7bbf20ca8":[11,0,0,1,0,7,6],
"classsimdjson_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_1_1object.html#adbe7322f665109b9816c5bcb9c10a9cb":[11,0,0,1,0,7,10],
"classsimdjson_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_1_1object.html#add102ee85423a75e22e4d7ca9a3eaacd":[11,0,0,1,0,7,4],
@@ -245,9 +249,5 @@ var NAVTREEINDEX1 =
"classsimdjson_1_1dom_1_1object.html#afe127a7e9ec8dab9ec76160525a68a83":[11,0,0,0,4,5],
"classsimdjson_1_1dom_1_1object_1_1iterator.html":[11,0,0,0,4,0],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a05f201b94ff4852a1f41bca76595280d":[11,0,0,0,4,0,17],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a1da5ce328cc2609432be961736c6e810":[11,0,0,0,4,0,9],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a2049ae539dca6999cc33300d212a5014":[11,0,0,0,4,0,19],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a238b57daf0b007591b767b268639473e":[11,0,0,0,4,0,15],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a3d4dcacb8171b99f783396bb6a337c65":[11,0,0,0,4,0,20],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a4807eeb1ed5f596b587d0b61dfb550e7":[11,0,0,0,4,0,6]
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a1da5ce328cc2609432be961736c6e810":[11,0,0,0,4,0,9]
};
+5 -5
View File
@@ -1,5 +1,9 @@
var NAVTREEINDEX2 =
{
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a2049ae539dca6999cc33300d212a5014":[11,0,0,0,4,0,19],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a238b57daf0b007591b767b268639473e":[11,0,0,0,4,0,15],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a3d4dcacb8171b99f783396bb6a337c65":[11,0,0,0,4,0,20],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a4807eeb1ed5f596b587d0b61dfb550e7":[11,0,0,0,4,0,6],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a498ffa7fca4164634f87ff2ef0905f8b":[11,0,0,0,4,0,14],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a54a99dcf9c422d5c24f3c570b6d9b6e4":[11,0,0,0,4,0,5],
"classsimdjson_1_1dom_1_1object_1_1iterator.html#a5ad1b60fd5df56d9fdb8bce1e08de88f":[11,0,0,0,4,0,8],
@@ -245,9 +249,5 @@ var NAVTREEINDEX2 =
"jsonparser_8h_source.html":[12,0,0,0,2,9],
"logger-inl_8h.html#a0176c136680aa97eb8bd8f57033f41be":[10,0,0,6,1,0,9],
"logger-inl_8h.html#a12f4fdff59099b28730ba4288877437f":[10,0,0,6,1,0,16],
"logger-inl_8h.html#a1b9952154ae0172530a16854ff005d92":[10,0,0,6,1,0,15],
"logger-inl_8h.html#a273e5f25cfdef1064a5225a47d85eb4f":[10,0,0,6,1,0,3],
"logger-inl_8h.html#a4427c475cf7d49b372c768201b4d92cb":[10,0,0,6,1,0,7],
"logger-inl_8h.html#a66e3122a7ae01bfe5f81ecb1bf1814cc":[10,0,0,6,1,0,5],
"logger-inl_8h.html#a6ca1434e6fe03e97dbc88360cc6ea5db":[10,0,0,6,1,0,2]
"logger-inl_8h.html#a1b9952154ae0172530a16854ff005d92":[10,0,0,6,1,0,15]
};
+5 -5
View File
@@ -1,5 +1,9 @@
var NAVTREEINDEX3 =
{
"logger-inl_8h.html#a273e5f25cfdef1064a5225a47d85eb4f":[10,0,0,6,1,0,3],
"logger-inl_8h.html#a4427c475cf7d49b372c768201b4d92cb":[10,0,0,6,1,0,7],
"logger-inl_8h.html#a66e3122a7ae01bfe5f81ecb1bf1814cc":[10,0,0,6,1,0,5],
"logger-inl_8h.html#a6ca1434e6fe03e97dbc88360cc6ea5db":[10,0,0,6,1,0,2],
"logger-inl_8h.html#a720bb462b108c1f9bcaa02cdcdfe6546":[10,0,0,6,1,0,13],
"logger-inl_8h.html#a8cd7cf74fd4b1c9386ac006febabeebd":[10,0,0,6,1,0,10],
"logger-inl_8h.html#a92b499d3d191a02e913f90de4f641e2e":[10,0,0,6,1,0,11],
@@ -245,9 +249,5 @@ var NAVTREEINDEX3 =
"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#ac915f0c06e5ab0363e09593bba651330a37a6259cc0c1dae299a7866489dff0bd":[10,0,0,6,1,16,5],
"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#ac915f0c06e5ab0363e09593bba651330a84e2c64f38f78ba3ea5c905ab5a2da27":[10,0,0,6,1,16,4],
"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":[10,0,0,6,1,16,1],
"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#ac915f0c06e5ab0363e09593bba651330ab1bc248a7ff2b2e95569f56de68615df":[10,0,0,6,1,16,2],
"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#ac915f0c06e5ab0363e09593bba651330ab45cffe084dd3d20d928bee85e7b0f21":[10,0,0,6,1,16,3],
"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":[10,0,0,6,1,16,0],
"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#adab1063af10b90a1f45f87b307225995":[10,0,0,6,1,27],
"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#ae52a82c2f754a47eb9dac12223b3311d":[10,0,0,6,1,24]
"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#ac915f0c06e5ab0363e09593bba651330ab1bc248a7ff2b2e95569f56de68615df":[10,0,0,6,1,16,2]
};
+8 -8
View File
@@ -1,5 +1,9 @@
var NAVTREEINDEX4 =
{
"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#ac915f0c06e5ab0363e09593bba651330ab45cffe084dd3d20d928bee85e7b0f21":[10,0,0,6,1,16,3],
"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":[10,0,0,6,1,16,0],
"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#adab1063af10b90a1f45f87b307225995":[10,0,0,6,1,27],
"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#ae52a82c2f754a47eb9dac12223b3311d":[10,0,0,6,1,24],
"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#af941be7ff0cfaeb30d15d2fb52e76dd1":[10,0,0,6,1,13],
"namespacesimdjson_1_1arm64.html":[10,0,0,0],
"namespacesimdjson_1_1dom.html":[10,0,0,1],
@@ -167,8 +171,8 @@ var NAVTREEINDEX4 =
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a24f63365bd58c9f0c6ec1aae438e008d":[11,0,0,10,39],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a32e9d2b26e7c85c77dc3cef0f812ca1b":[11,0,0,10,58],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a371fb9d9879782009c11e547ff79e869":[11,0,0,10,45],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a429242515e1139a04142c3f1aa5cbe68":[11,0,0,10,18],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a429242515e1139a04142c3f1aa5cbe68":[11,0,0,10,17],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a429242515e1139a04142c3f1aa5cbe68":[11,0,0,10,18],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a458029a37b519f4594dc78812fee8657":[11,0,0,10,35],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a4762f6c497ac46d5c7a130b2f389156d":[11,0,0,10,47],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a50bddd1e9bc10caaabff8ff4d7eb903d":[11,0,0,10,49],
@@ -178,8 +182,8 @@ var NAVTREEINDEX4 =
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a567b835f20e2f854f4303e83f4d3bd74":[11,0,0,10,13],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a59a47cbdb4c226a7d33e0315cce62984":[11,0,0,10,41],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a5a4d779ce258cac95b1799f16b49695b":[11,0,0,10,48],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a6024d17789cc49d3147445b3def018f6":[11,0,0,10,23],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a6024d17789cc49d3147445b3def018f6":[11,0,0,10,22],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a6024d17789cc49d3147445b3def018f6":[11,0,0,10,23],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a61c56912d76a1a730e4cf9b5aea5d69f":[11,0,0,10,38],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a662ec28f78a9fcba046eaa4509efa6a3":[11,0,0,10,42],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#a696390da51f64f6955aa43484b2e8c41":[11,0,0,10,28],
@@ -207,8 +211,8 @@ var NAVTREEINDEX4 =
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#ad93b76ab3636d40ce75059e0f8653c6f":[11,0,0,10,8],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#ada47799dcb5e64e43851d78d346b1d47":[11,0,0,10,25],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#ada47799dcb5e64e43851d78d346b1d47":[11,0,0,10,24],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#adb70072b98e8c3c650ce695f3e928e66":[11,0,0,10,14],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#adb70072b98e8c3c650ce695f3e928e66":[11,0,0,10,16],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#adb70072b98e8c3c650ce695f3e928e66":[11,0,0,10,14],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#ae69c9218f418dab3b1aafeb2b6504fab":[11,0,0,10,55],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#aecc254ac74f3ccd0704813be27c98470":[11,0,0,10,9],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document_01_4.html#aeda745db35d2b64a7956a70872242fcb":[11,0,0,10,44],
@@ -245,9 +249,5 @@ var NAVTREEINDEX4 =
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#aa2873ff8fc330dd1138bba61e7487287":[11,0,0,11,42],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#aa53af9357f3c3aa144ccda80ed709d4c":[11,0,0,11,0],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#aa6ef30cb4fec233a33a0e0a8caf90e0b":[11,0,0,11,14],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#aa924317778c6f7d8e3941c7aadf1854d":[11,0,0,11,12],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ab10a7c98d14d3a40aef1a8b1e9cd29d2":[11,0,0,11,41],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ab68d719e9d7079f61481d13d37fc615a":[11,0,0,11,9],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ac1bcd8afb10742d6f18b8f2f07ba0392":[11,0,0,11,44],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ac2d22c558afdcbac2d66e2d333526202":[11,0,0,11,27]
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#aa924317778c6f7d8e3941c7aadf1854d":[11,0,0,11,12]
};
+5 -5
View File
@@ -1,5 +1,9 @@
var NAVTREEINDEX5 =
{
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ab10a7c98d14d3a40aef1a8b1e9cd29d2":[11,0,0,11,41],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ab68d719e9d7079f61481d13d37fc615a":[11,0,0,11,9],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ac1bcd8afb10742d6f18b8f2f07ba0392":[11,0,0,11,44],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#ac2d22c558afdcbac2d66e2d333526202":[11,0,0,11,27],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#aca433867baaffeff86367c88bf192572":[11,0,0,11,20],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#acb01db7785909e8040f9c4425c0bd42a":[11,0,0,11,21],
"structsimdjson_1_1simdjson__result_3_01_s_i_m_d_j_s_o_n___i_m_p_l_e_m_e_n_t_a_t_i_o_n_1_1ondemand_1_1document__reference_01_4.html#acc2ab79d219fc8cd814c8cf656ca00c0":[11,0,0,11,38],
@@ -183,9 +187,5 @@ var NAVTREEINDEX5 =
"westmere_2ondemand_8h_source.html":[12,0,0,0,10,8],
"westmere_2simd_8h_source.html":[12,0,0,0,10,9],
"westmere_2stringparsing__defs_8h_source.html":[12,0,0,0,10,10],
"westmere_8h_source.html":[12,0,0,0,35],
"":[10,0,0,6],
"":[10,0,1],
"":[10,0,0,6,0],
"":[10,0,0,6,1,0]
"westmere_8h_source.html":[12,0,0,0,35]
};