---
title: "rapidjson::GenericValue< Encoding, Allocator > Class Template Reference"
documentId: "rapidjson:classrapidjson_1_1_generic_value.html"
order: 46
licenseSource: "rapidjson-fixed"
documentContext: [{"kind": "source", "html": "<p>RapidJSON 1.1.0; fixed commit f54b0e47a08782a6131cc3d60f94d038fa6e0a51. Copyright (C) 2015 THL A29 Limited and Milo Yip. <a href=\"/docs/rapidjson/notices/LICENSE.txt\">Full original licence and component notices</a>. Unofficial Libx static edition. The Japanese edition covers the 13 user guides; the remaining 205 API, index and source pages are English original references.</p><p>文書専用ライセンスの表記が確認できないため、ソフトウェア本体のMIT Licenseを文書にも適用するLibxの運用方針に基づき掲載しています。</p><p>定本はRapidJSON v1.1.0の固定コミットf54b0e47a08782a6131cc3d60f94d038fa6e0a51です。<a href=\"/docs/rapidjson/upstream/rapidjson-f54b0e47a08782a6131cc3d60f94d038fa6e0a51.tar.gz\">取得時の原文・ソース一式（tar.gz）</a>を提供します。SHA-256: <code>4a76453d36770c9628d7d175a2e9baccbfbd2169ced44f0cb72e86c5f5f2f7cd</code>。アーカイブ内のlicense.txtと各ファイルの通知を保持しています。</p><p>本文画像の由来:</p><ul><li><code>classrapidjson_1_1_generic_value.png</code>: 固定ヘッダーからDoxygen 1.17.0が生成した継承関係図です。</li></ul><p>原文画像にも、文書専用許諾の表記が確認できないため本体ライセンスを注釈付きで適用するLibxの運用方針を用いています。生成図は入力に基づく生成文書として扱っています（<a href=\"https://www.doxygen.nl/license.html\">Doxygenの生成文書に関する説明</a>）。Doxygen本体や補助ソフトウェアのライセンスをMITへ変更する判断ではありません。原文の著作権・例外通知は<a href=\"/docs/rapidjson/notices/LICENSE.txt\">原ライセンス全文</a>と上記原文アーカイブを参照してください。ロゴは原文の説明文脈で使用し、公式運営や提携を示すものではありません。</p>"}, {"kind": "editorial", "html": "<p>Libx provides an unofficial static edition. Original definitions, signatures and descriptions appear as ordinary reference blocks after source or example code. Code and reference links retain their targets. Dynamic tooltips are not used. The Japanese edition covers the 13 user guides; the other 205 API, index and source pages are English original references. Refer to the linked original documentation for further details.</p><p>Libxの運用方針に基づき、固定原文のDoxyfile.inをDoxygen 1.17.0で再生成し、本文をLibxの表示へ変換しています。上流の公開処理が指定するDoxygen 1.8.7とは生成器の版が異なります。<a href=\"/docs/rapidjson/notices/Doxyfile.in\">原生成設定</a>の出力ディレクトリ用プレースホルダーだけを実行環境へ置換しました。<a href=\"https://github.com/doxygen/doxygen/releases/tag/Release_1_17_0\">生成器の公式配布元</a>。原文の説明とコードを保持し、索引アンカー等の補正は該当ページの注記に記載しています。</p>"}, {"kind": "source", "html": "<p><a href=\"/docs/rapidjson/source/v1-1-0/source.zip\">Libx編集用ソース一式（ZIP） / Editable Libx source</a>：原文アーカイブ、英日原稿、固定入力、通知と再構築手順を含みます。原文・第三者素材の条件は各通知を参照してください。</p>"}]
---

<div class="contents rapidjson-document">&#10;&#10;<p>Represents a JSON value. Use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> for <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/212-structrapidjson_1_1_u_t_f8/" title="UTF-8 encoding.">UTF8</a> encoding and default allocator.  &#10; <a href="#details">More...</a></p>&#10;&#10;<p><code>#include &lt;<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/066-document_8h_source/">document.h</a>&gt;</code></p>&#10;<div class="dynheader">&#10;Inheritance diagram for rapidjson::GenericValue&lt; Encoding, Allocator &gt;:</div>&#10;<div class="dyncontent">&#10; <div class="center">&#10;  <img src="/docs/rapidjson/assets/v1-1-0/classrapidjson_1_1_generic_value.png" usemap="#rapidjson_3A_3AGenericValue_3C_20Encoding_2C_20Allocator_20_3E_map" alt="">&#10;  <map id="rapidjson_3A_3AGenericValue_3C_20Encoding_2C_20Allocator_20_3E_map" name="rapidjson_3A_3AGenericValue_3C_20Encoding_2C_20Allocator_20_3E_map">&#10;<area href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/" alt="rapidjson::GenericDocument< UTF8<> >" shape="rect" coords="0,56,285,80">&#10;  </map>&#10;</div></div>&#10;<table class="memberdecls">&#10;<tbody><tr class="heading"><td colspan="2"><h2 id="header-pub-types" class="groupheader"><a id="pub-types" name="pub-types"></a>&#10;Public Types</h2></td></tr>&#10;<tr class="memitem:a0220ddebe2f023fa75b643a50e90e559" id="r_a0220ddebe2f023fa75b643a50e90e559"><td class="memItemLeft"><a id="a0220ddebe2f023fa75b643a50e90e559" name="a0220ddebe2f023fa75b643a50e90e559"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/174-structrapidjson_1_1_generic_member/">GenericMember</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;&nbsp;</td><td class="memItemRight"><b>Member</b></td></tr>&#10;<tr class="memdesc:a0220ddebe2f023fa75b643a50e90e559"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Name-value pair in an object. <br></td></tr>&#10;<tr class="memitem:a05906384808645a2e798d29a9b2d441d" id="r_a05906384808645a2e798d29a9b2d441d"><td class="memItemLeft"><a id="a05906384808645a2e798d29a9b2d441d" name="a05906384808645a2e798d29a9b2d441d"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>&nbsp;</td><td class="memItemRight"><b>EncodingType</b></td></tr>&#10;<tr class="memdesc:a05906384808645a2e798d29a9b2d441d"><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/" title="Concept for encoding of Unicode characters.">Encoding</a> type from template parameter. <br></td></tr>&#10;<tr class="memitem:a5d47340c96346c5028fee4c9068d783d" id="r_a5d47340c96346c5028fee4c9068d783d"><td class="memItemLeft"><a id="a5d47340c96346c5028fee4c9068d783d" name="a5d47340c96346c5028fee4c9068d783d"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a>&nbsp;</td><td class="memItemRight"><b>AllocatorType</b></td></tr>&#10;<tr class="memdesc:a5d47340c96346c5028fee4c9068d783d"><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> type from template parameter. <br></td></tr>&#10;<tr class="memitem:adcdbc7fa85a9a41b78966d7e0dcc2ac4" id="r_adcdbc7fa85a9a41b78966d7e0dcc2ac4"><td class="memItemLeft"><a id="adcdbc7fa85a9a41b78966d7e0dcc2ac4" name="adcdbc7fa85a9a41b78966d7e0dcc2ac4"></a>&#10;typedef Encoding::Ch&nbsp;</td><td class="memItemRight"><b>Ch</b></td></tr>&#10;<tr class="memdesc:adcdbc7fa85a9a41b78966d7e0dcc2ac4"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Character type derived from <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/" title="Concept for encoding of Unicode characters.">Encoding</a>. <br></td></tr>&#10;<tr class="memitem:a559eb9cea54364a35518b02f6d74f379" id="r_a559eb9cea54364a35518b02f6d74f379"><td class="memItemLeft"><a id="a559eb9cea54364a35518b02f6d74f379" name="a559eb9cea54364a35518b02f6d74f379"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/180-structrapidjson_1_1_generic_string_ref/">GenericStringRef</a>&lt; <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> &gt;&nbsp;</td><td class="memItemRight"><b>StringRefType</b></td></tr>&#10;<tr class="memdesc:a559eb9cea54364a35518b02f6d74f379"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reference to a constant string. <br></td></tr>&#10;<tr class="memitem:aca5596987335016c1a7c2a9467baf80b" id="r_aca5596987335016c1a7c2a9467baf80b"><td class="memItemLeft"><a id="aca5596987335016c1a7c2a9467baf80b" name="aca5596987335016c1a7c2a9467baf80b"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">GenericMemberIterator</a>&lt; false, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">::Iterator</a>&nbsp;</td><td class="memItemRight"><b>MemberIterator</b></td></tr>&#10;<tr class="memdesc:aca5596987335016c1a7c2a9467baf80b"><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="#a0220ddebe2f023fa75b643a50e90e559" title="Name-value pair in an object.">Member</a> iterator for iterating in object. <br></td></tr>&#10;<tr class="memitem:a6cd2b09795c48d2892bebc0ae350d51f" id="r_a6cd2b09795c48d2892bebc0ae350d51f"><td class="memItemLeft"><a id="a6cd2b09795c48d2892bebc0ae350d51f" name="a6cd2b09795c48d2892bebc0ae350d51f"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">GenericMemberIterator</a>&lt; true, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">::Iterator</a>&nbsp;</td><td class="memItemRight"><b>ConstMemberIterator</b></td></tr>&#10;<tr class="memdesc:a6cd2b09795c48d2892bebc0ae350d51f"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constant member iterator for iterating in object. <br></td></tr>&#10;<tr class="memitem:a06ce0e14ec83b53c83e1b1699b53a25e" id="r_a06ce0e14ec83b53c83e1b1699b53a25e"><td class="memItemLeft"><a id="a06ce0e14ec83b53c83e1b1699b53a25e" name="a06ce0e14ec83b53c83e1b1699b53a25e"></a>&#10;typedef GenericValue *&nbsp;</td><td class="memItemRight"><b>ValueIterator</b></td></tr>&#10;<tr class="memdesc:a06ce0e14ec83b53c83e1b1699b53a25e"><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> iterator for iterating in array. <br></td></tr>&#10;<tr class="memitem:a89a6588121742fc3f154b10b8f15f45f" id="r_a89a6588121742fc3f154b10b8f15f45f"><td class="memItemLeft"><a id="a89a6588121742fc3f154b10b8f15f45f" name="a89a6588121742fc3f154b10b8f15f45f"></a>&#10;typedef const GenericValue *&nbsp;</td><td class="memItemRight"><b>ConstValueIterator</b></td></tr>&#10;<tr class="memdesc:a89a6588121742fc3f154b10b8f15f45f"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constant value iterator for iterating in array. <br></td></tr>&#10;<tr class="memitem:ad2935191ab28c2c2e472b739a9d58202" id="r_ad2935191ab28c2c2e472b739a9d58202"><td class="memItemLeft"><a id="ad2935191ab28c2c2e472b739a9d58202" name="ad2935191ab28c2c2e472b739a9d58202"></a>&#10;typedef GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;&nbsp;</td><td class="memItemRight"><b>ValueType</b></td></tr>&#10;<tr class="memdesc:ad2935191ab28c2c2e472b739a9d58202"><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> type of itself. <br></td></tr>&#10;<tr class="memitem:a81291ad1031afe43aca4719e2989d7dc" id="r_a81291ad1031afe43aca4719e2989d7dc"><td class="memItemLeft"><a id="a81291ad1031afe43aca4719e2989d7dc" name="a81291ad1031afe43aca4719e2989d7dc"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/028-classrapidjson_1_1_generic_array/">GenericArray</a>&lt; false, <a class="el" href="#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> &gt;&nbsp;</td><td class="memItemRight"><b>Array</b></td></tr>&#10;<tr class="memitem:a8fb89523de7b22be0c69069f05d04b41" id="r_a8fb89523de7b22be0c69069f05d04b41"><td class="memItemLeft"><a id="a8fb89523de7b22be0c69069f05d04b41" name="a8fb89523de7b22be0c69069f05d04b41"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/028-classrapidjson_1_1_generic_array/">GenericArray</a>&lt; true, <a class="el" href="#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> &gt;&nbsp;</td><td class="memItemRight"><b>ConstArray</b></td></tr>&#10;<tr class="memitem:ae1b1a60a9c69ce5ac48b8c445e3e9231" id="r_ae1b1a60a9c69ce5ac48b8c445e3e9231"><td class="memItemLeft"><a id="ae1b1a60a9c69ce5ac48b8c445e3e9231" name="ae1b1a60a9c69ce5ac48b8c445e3e9231"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/034-classrapidjson_1_1_generic_object/">GenericObject</a>&lt; false, <a class="el" href="#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> &gt;&nbsp;</td><td class="memItemRight"><b>Object</b></td></tr>&#10;<tr class="memitem:a39f5e1993897a86741b55c32ed4f54ef" id="r_a39f5e1993897a86741b55c32ed4f54ef"><td class="memItemLeft"><a id="a39f5e1993897a86741b55c32ed4f54ef" name="a39f5e1993897a86741b55c32ed4f54ef"></a>&#10;typedef <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/034-classrapidjson_1_1_generic_object/">GenericObject</a>&lt; true, <a class="el" href="#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> &gt;&nbsp;</td><td class="memItemRight"><b>ConstObject</b></td></tr>&#10;</tbody></table><table class="memberdecls">&#10;<tbody><tr class="heading"><td colspan="2"><h2 id="header-pub-methods" class="groupheader"><a id="pub-methods" name="pub-methods"></a>&#10;Public Member Functions</h2></td></tr>&#10;<tr id="pub-methods-0" class="groupHeader"><td colspan="2"><div class="groupHeader">Type</div></td></tr>&#10;<tr class="memitem:ad951d4bff60d37dd603ce68a36f1732a" id="r_ad951d4bff60d37dd603ce68a36f1732a"><td class="memItemLeft"><a id="ad951d4bff60d37dd603ce68a36f1732a" name="ad951d4bff60d37dd603ce68a36f1732a"></a>&#10;<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a>&nbsp;</td><td class="memItemRight"><b>GetType</b> () const</td></tr>&#10;<tr class="memitem:a064ecd709d167b07008acd79e941b68e" id="r_a064ecd709d167b07008acd79e941b68e"><td class="memItemLeft"><a id="a064ecd709d167b07008acd79e941b68e" name="a064ecd709d167b07008acd79e941b68e"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsNull</b> () const</td></tr>&#10;<tr class="memitem:a5daef830cdbe445a6450be3feae2662a" id="r_a5daef830cdbe445a6450be3feae2662a"><td class="memItemLeft"><a id="a5daef830cdbe445a6450be3feae2662a" name="a5daef830cdbe445a6450be3feae2662a"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsFalse</b> () const</td></tr>&#10;<tr class="memitem:a1ad0fa486347a4e58804bb8af5fe1050" id="r_a1ad0fa486347a4e58804bb8af5fe1050"><td class="memItemLeft"><a id="a1ad0fa486347a4e58804bb8af5fe1050" name="a1ad0fa486347a4e58804bb8af5fe1050"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsTrue</b> () const</td></tr>&#10;<tr class="memitem:a5e64a654ea30e182e4f0b4913c95a1d1" id="r_a5e64a654ea30e182e4f0b4913c95a1d1"><td class="memItemLeft"><a id="a5e64a654ea30e182e4f0b4913c95a1d1" name="a5e64a654ea30e182e4f0b4913c95a1d1"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsBool</b> () const</td></tr>&#10;<tr class="memitem:ab5ce40f269b788b6dac0c2d95cf58201" id="r_ab5ce40f269b788b6dac0c2d95cf58201"><td class="memItemLeft"><a id="ab5ce40f269b788b6dac0c2d95cf58201" name="ab5ce40f269b788b6dac0c2d95cf58201"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsObject</b> () const</td></tr>&#10;<tr class="memitem:a917b849cbd1a0bda256e8841ca4ecf24" id="r_a917b849cbd1a0bda256e8841ca4ecf24"><td class="memItemLeft"><a id="a917b849cbd1a0bda256e8841ca4ecf24" name="a917b849cbd1a0bda256e8841ca4ecf24"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsArray</b> () const</td></tr>&#10;<tr class="memitem:ac61d98a6f865040d8e250191e2a3a552" id="r_ac61d98a6f865040d8e250191e2a3a552"><td class="memItemLeft"><a id="ac61d98a6f865040d8e250191e2a3a552" name="ac61d98a6f865040d8e250191e2a3a552"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsNumber</b> () const</td></tr>&#10;<tr class="memitem:ac4f8e1cb46ffe319fad442265ab297b0" id="r_ac4f8e1cb46ffe319fad442265ab297b0"><td class="memItemLeft"><a id="ac4f8e1cb46ffe319fad442265ab297b0" name="ac4f8e1cb46ffe319fad442265ab297b0"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsInt</b> () const</td></tr>&#10;<tr class="memitem:ae7043304c8625aec1fc2df3363e7bb0a" id="r_ae7043304c8625aec1fc2df3363e7bb0a"><td class="memItemLeft"><a id="ae7043304c8625aec1fc2df3363e7bb0a" name="ae7043304c8625aec1fc2df3363e7bb0a"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsUint</b> () const</td></tr>&#10;<tr class="memitem:afd2e8dbf6112c2ea007a6274dd37e472" id="r_afd2e8dbf6112c2ea007a6274dd37e472"><td class="memItemLeft"><a id="afd2e8dbf6112c2ea007a6274dd37e472" name="afd2e8dbf6112c2ea007a6274dd37e472"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsInt64</b> () const</td></tr>&#10;<tr class="memitem:a5444562cb25d10a2cb1c5ef5a86c3e49" id="r_a5444562cb25d10a2cb1c5ef5a86c3e49"><td class="memItemLeft"><a id="a5444562cb25d10a2cb1c5ef5a86c3e49" name="a5444562cb25d10a2cb1c5ef5a86c3e49"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsUint64</b> () const</td></tr>&#10;<tr class="memitem:adcdd96c0780ecd834a98d09bc402a1ea" id="r_adcdd96c0780ecd834a98d09bc402a1ea"><td class="memItemLeft"><a id="adcdd96c0780ecd834a98d09bc402a1ea" name="adcdd96c0780ecd834a98d09bc402a1ea"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsDouble</b> () const</td></tr>&#10;<tr class="memitem:a0dcb17e6f5ac240c4dfdb3aa97a394b8" id="r_a0dcb17e6f5ac240c4dfdb3aa97a394b8"><td class="memItemLeft"><a id="a0dcb17e6f5ac240c4dfdb3aa97a394b8" name="a0dcb17e6f5ac240c4dfdb3aa97a394b8"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsString</b> () const</td></tr>&#10;<tr class="memitem:a8ffdbcf1cd70c87792f5d486313dc28c" id="r_a8ffdbcf1cd70c87792f5d486313dc28c"><td class="memItemLeft"><a id="a8ffdbcf1cd70c87792f5d486313dc28c" name="a8ffdbcf1cd70c87792f5d486313dc28c"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsLosslessDouble</b> () const</td></tr>&#10;<tr class="memitem:a150726bc6f5a7af5bce9e9a8b76e0e98" id="r_a150726bc6f5a7af5bce9e9a8b76e0e98"><td class="memItemLeft"><a id="a150726bc6f5a7af5bce9e9a8b76e0e98" name="a150726bc6f5a7af5bce9e9a8b76e0e98"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsFloat</b> () const</td></tr>&#10;<tr class="memitem:a6188d3ad8430b56ef45b9bd5633eafce" id="r_a6188d3ad8430b56ef45b9bd5633eafce"><td class="memItemLeft"><a id="a6188d3ad8430b56ef45b9bd5633eafce" name="a6188d3ad8430b56ef45b9bd5633eafce"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>IsLosslessFloat</b> () const</td></tr>&#10;<tr id="pub-methods-1" class="groupHeader"><td colspan="2"><div class="groupHeader">Null</div></td></tr>&#10;<tr class="memitem:af837a73b89c488d52307113ec2d64fb8" id="r_af837a73b89c488d52307113ec2d64fb8"><td class="memItemLeft"><a id="af837a73b89c488d52307113ec2d64fb8" name="af837a73b89c488d52307113ec2d64fb8"></a>&#10;GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>SetNull</b> ()</td></tr>&#10;<tr id="pub-methods-2" class="groupHeader"><td colspan="2"><div class="groupHeader">Bool</div></td></tr>&#10;<tr class="memitem:a78d80b935babeedbfa71914a8fe5baa7" id="r_a78d80b935babeedbfa71914a8fe5baa7"><td class="memItemLeft"><a id="a78d80b935babeedbfa71914a8fe5baa7" name="a78d80b935babeedbfa71914a8fe5baa7"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>GetBool</b> () const</td></tr>&#10;<tr class="memdesc:a78d80b935babeedbfa71914a8fe5baa7"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set boolean value. <br></td></tr>&#10;<tr class="memitem:a5f0b4d005817342f962f12620fc74d5a" id="r_a5f0b4d005817342f962f12620fc74d5a"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a5f0b4d005817342f962f12620fc74d5a">SetBool</a> (bool b)</td></tr>&#10;<tr id="pub-methods-3" class="groupHeader"><td colspan="2"><div class="groupHeader">Object</div></td></tr>&#10;<tr class="memitem:a1731f969985e557519d21d33c6f409d2" id="r_a1731f969985e557519d21d33c6f409d2"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a1731f969985e557519d21d33c6f409d2">SetObject</a> ()</td></tr>&#10;<tr class="memdesc:a1731f969985e557519d21d33c6f409d2"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set this value as an empty object.  <br></td></tr>&#10;<tr class="memitem:a8b7e47c57a20d0de0cd19eee799ebd88" id="r_a8b7e47c57a20d0de0cd19eee799ebd88"><td class="memItemLeft"><a id="a8b7e47c57a20d0de0cd19eee799ebd88" name="a8b7e47c57a20d0de0cd19eee799ebd88"></a>&#10;<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>&nbsp;</td><td class="memItemRight"><b>MemberCount</b> () const</td></tr>&#10;<tr class="memdesc:a8b7e47c57a20d0de0cd19eee799ebd88"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the number of members in the object. <br></td></tr>&#10;<tr class="memitem:a1f4835373e05abae52b91e1c6b7ec92c" id="r_a1f4835373e05abae52b91e1c6b7ec92c"><td class="memItemLeft"><a id="a1f4835373e05abae52b91e1c6b7ec92c" name="a1f4835373e05abae52b91e1c6b7ec92c"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>ObjectEmpty</b> () const</td></tr>&#10;<tr class="memdesc:a1f4835373e05abae52b91e1c6b7ec92c"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the object is empty. <br></td></tr>&#10;<tr class="memitem:ac6671822744fb5991be58c48822c8fdf" id="r_ac6671822744fb5991be58c48822c8fdf"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:ac6671822744fb5991be58c48822c8fdf template"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#ac6671822744fb5991be58c48822c8fdf">operator[]</a> (T *name)</td></tr>&#10;<tr class="memdesc:ac6671822744fb5991be58c48822c8fdf"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a value from an object associated with the name.  <br></td></tr>&#10;<tr class="memitem:aca7c4f236ed5a11b1a364504ac73f542" id="r_aca7c4f236ed5a11b1a364504ac73f542"><td class="memTemplParams" colspan="2"><a id="aca7c4f236ed5a11b1a364504ac73f542" name="aca7c4f236ed5a11b1a364504ac73f542"></a>&#10;template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:aca7c4f236ed5a11b1a364504ac73f542 template"><td class="memItemLeft">const GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>operator[]</b> (T *name) const</td></tr>&#10;<tr class="memitem:a8a327edab2ae9678985a3c85166a1bb0" id="r_a8a327edab2ae9678985a3c85166a1bb0"><td class="memTemplParams" colspan="2">template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a8a327edab2ae9678985a3c85166a1bb0 template"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a8a327edab2ae9678985a3c85166a1bb0">operator[]</a> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;name)</td></tr>&#10;<tr class="memdesc:a8a327edab2ae9678985a3c85166a1bb0"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a value from an object associated with the name.  <br></td></tr>&#10;<tr class="memitem:a784bb8bddfc392ca7a8b2632430be0db" id="r_a784bb8bddfc392ca7a8b2632430be0db"><td class="memTemplParams" colspan="2"><a id="a784bb8bddfc392ca7a8b2632430be0db" name="a784bb8bddfc392ca7a8b2632430be0db"></a>&#10;template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a784bb8bddfc392ca7a8b2632430be0db template"><td class="memItemLeft">const GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>operator[]</b> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;name) const</td></tr>&#10;<tr class="memitem:ae89a77887aa3eb1f1f913727cbff6786" id="r_ae89a77887aa3eb1f1f913727cbff6786"><td class="memItemLeft"><a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#ae89a77887aa3eb1f1f913727cbff6786">MemberBegin</a> () const</td></tr>&#10;<tr class="memdesc:ae89a77887aa3eb1f1f913727cbff6786"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Const member iterator.  <br></td></tr>&#10;<tr class="memitem:a34ee3d75a7aa308043fb34b0743bfe7c" id="r_a34ee3d75a7aa308043fb34b0743bfe7c"><td class="memItemLeft"><a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a34ee3d75a7aa308043fb34b0743bfe7c">MemberEnd</a> () const</td></tr>&#10;<tr class="memdesc:a34ee3d75a7aa308043fb34b0743bfe7c"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Const <em>past-the-end</em> member iterator.  <br></td></tr>&#10;<tr class="memitem:a93f0f317f397c36a24a0f3c32648623a" id="r_a93f0f317f397c36a24a0f3c32648623a"><td class="memItemLeft"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a93f0f317f397c36a24a0f3c32648623a">MemberBegin</a> ()</td></tr>&#10;<tr class="memdesc:a93f0f317f397c36a24a0f3c32648623a"><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="#a0220ddebe2f023fa75b643a50e90e559" title="Name-value pair in an object.">Member</a> iterator.  <br></td></tr>&#10;<tr class="memitem:adb109ae9f12615efadf9277cb5e9c4ee" id="r_adb109ae9f12615efadf9277cb5e9c4ee"><td class="memItemLeft"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#adb109ae9f12615efadf9277cb5e9c4ee">MemberEnd</a> ()</td></tr>&#10;<tr class="memdesc:adb109ae9f12615efadf9277cb5e9c4ee"><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><em>Past-the-end</em> member iterator  <br></td></tr>&#10;<tr class="memitem:aa78e2eb30c6b918826eccf03f04f166b" id="r_aa78e2eb30c6b918826eccf03f04f166b"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#aa78e2eb30c6b918826eccf03f04f166b">HasMember</a> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *name) const</td></tr>&#10;<tr class="memdesc:aa78e2eb30c6b918826eccf03f04f166b"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether a member exists in the object.  <br></td></tr>&#10;<tr class="memitem:a794129b8adffb97d123306a0c0ccaf71" id="r_a794129b8adffb97d123306a0c0ccaf71"><td class="memTemplParams" colspan="2">template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a794129b8adffb97d123306a0c0ccaf71 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#a794129b8adffb97d123306a0c0ccaf71">HasMember</a> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;name) const</td></tr>&#10;<tr class="memdesc:a794129b8adffb97d123306a0c0ccaf71"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether a member exists in the object with <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/" title="Represents a JSON value. Use Value for UTF8 encoding and default allocator.">GenericValue</a> name.  <br></td></tr>&#10;<tr class="memitem:ad22fdeac87ec6c370dd43075d3586811" id="r_ad22fdeac87ec6c370dd43075d3586811"><td class="memItemLeft"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#ad22fdeac87ec6c370dd43075d3586811">FindMember</a> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *name)</td></tr>&#10;<tr class="memdesc:ad22fdeac87ec6c370dd43075d3586811"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find member by name.  <br></td></tr>&#10;<tr class="memitem:a4960b901fdd3e8f7bf766e471390a0b0" id="r_a4960b901fdd3e8f7bf766e471390a0b0"><td class="memItemLeft"><a id="a4960b901fdd3e8f7bf766e471390a0b0" name="a4960b901fdd3e8f7bf766e471390a0b0"></a>&#10;<a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a>&nbsp;</td><td class="memItemRight"><b>FindMember</b> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *name) const</td></tr>&#10;<tr class="memitem:a8d75bf0c6c0fa4f8d340a4236e98539b" id="r_a8d75bf0c6c0fa4f8d340a4236e98539b"><td class="memTemplParams" colspan="2">template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a8d75bf0c6c0fa4f8d340a4236e98539b template"><td class="memItemLeft"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a8d75bf0c6c0fa4f8d340a4236e98539b">FindMember</a> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;name)</td></tr>&#10;<tr class="memdesc:a8d75bf0c6c0fa4f8d340a4236e98539b"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find member by name.  <br></td></tr>&#10;<tr class="memitem:a90916413828ce8da6868051236313583" id="r_a90916413828ce8da6868051236313583"><td class="memTemplParams" colspan="2"><a id="a90916413828ce8da6868051236313583" name="a90916413828ce8da6868051236313583"></a>&#10;template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a90916413828ce8da6868051236313583 template"><td class="memItemLeft"><a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a>&nbsp;</td><td class="memItemRight"><b>FindMember</b> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;name) const</td></tr>&#10;<tr class="memitem:a47f607190102ca28abaa1ce1133dcfae" id="r_a47f607190102ca28abaa1ce1133dcfae"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a47f607190102ca28abaa1ce1133dcfae">AddMember</a> (GenericValue &amp;name, GenericValue &amp;value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a47f607190102ca28abaa1ce1133dcfae"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a member (name-value pair) to the object.  <br></td></tr>&#10;<tr class="memitem:aecf043e60f84e11f3656c4c3fad1ac17" id="r_aecf043e60f84e11f3656c4c3fad1ac17"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#aecf043e60f84e11f3656c4c3fad1ac17">AddMember</a> (GenericValue &amp;name, <a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:aecf043e60f84e11f3656c4c3fad1ac17"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a constant string value as member (name-value pair) to the object.  <br></td></tr>&#10;<tr class="memitem:afd2b2648f8232c035d6fe2c1a2d6bb9e" id="r_afd2b2648f8232c035d6fe2c1a2d6bb9e"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:afd2b2648f8232c035d6fe2c1a2d6bb9e template"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#afd2b2648f8232c035d6fe2c1a2d6bb9e">AddMember</a> (GenericValue &amp;name, T value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:afd2b2648f8232c035d6fe2c1a2d6bb9e"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add any primitive value as member (name-value pair) to the object.  <br></td></tr>&#10;<tr class="memitem:a6b608e37e920ddc95f2a0332d62b4ca2" id="r_a6b608e37e920ddc95f2a0332d62b4ca2"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a6b608e37e920ddc95f2a0332d62b4ca2">AddMember</a> (<a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> name, GenericValue &amp;value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a6b608e37e920ddc95f2a0332d62b4ca2"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a member (name-value pair) to the object.  <br></td></tr>&#10;<tr class="memitem:a624fa3c206636a1ee8b3c34eb2402c10" id="r_a624fa3c206636a1ee8b3c34eb2402c10"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a624fa3c206636a1ee8b3c34eb2402c10">AddMember</a> (<a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> name, <a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a624fa3c206636a1ee8b3c34eb2402c10"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a constant string value as member (name-value pair) to the object.  <br></td></tr>&#10;<tr class="memitem:a84736b860c3f931212dca7f4d5db64c0" id="r_a84736b860c3f931212dca7f4d5db64c0"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:a84736b860c3f931212dca7f4d5db64c0 template"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a84736b860c3f931212dca7f4d5db64c0">AddMember</a> (<a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> name, T value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a84736b860c3f931212dca7f4d5db64c0"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add any primitive value as member (name-value pair) to the object.  <br></td></tr>&#10;<tr class="memitem:a68d8d197ae1fb83d4dc202f9812af4cc" id="r_a68d8d197ae1fb83d4dc202f9812af4cc"><td class="memItemLeft">void&nbsp;</td><td class="memItemRight"><a class="el" href="#a68d8d197ae1fb83d4dc202f9812af4cc">RemoveAllMembers</a> ()</td></tr>&#10;<tr class="memdesc:a68d8d197ae1fb83d4dc202f9812af4cc"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove all members in the object.  <br></td></tr>&#10;<tr class="memitem:aa60074f72a6d1651828a104b0c6387b1" id="r_aa60074f72a6d1651828a104b0c6387b1"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#aa60074f72a6d1651828a104b0c6387b1">RemoveMember</a> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *name)</td></tr>&#10;<tr class="memdesc:aa60074f72a6d1651828a104b0c6387b1"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a member in object by its name.  <br></td></tr>&#10;<tr class="memitem:a403b63e001a16eeff42348a736b9f749" id="r_a403b63e001a16eeff42348a736b9f749"><td class="memTemplParams" colspan="2"><a id="a403b63e001a16eeff42348a736b9f749" name="a403b63e001a16eeff42348a736b9f749"></a>&#10;template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a403b63e001a16eeff42348a736b9f749 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><b>RemoveMember</b> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;name)</td></tr>&#10;<tr class="memitem:af91573ce61d798f0bc5dc88b00742697" id="r_af91573ce61d798f0bc5dc88b00742697"><td class="memItemLeft"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#af91573ce61d798f0bc5dc88b00742697">RemoveMember</a> (<a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> m)</td></tr>&#10;<tr class="memdesc:af91573ce61d798f0bc5dc88b00742697"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a member in object by iterator.  <br></td></tr>&#10;<tr class="memitem:a163e60b101e5ae534597c050a6eba511" id="r_a163e60b101e5ae534597c050a6eba511"><td class="memItemLeft"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a163e60b101e5ae534597c050a6eba511">EraseMember</a> (<a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> pos)</td></tr>&#10;<tr class="memdesc:a163e60b101e5ae534597c050a6eba511"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a member from an object by iterator.  <br></td></tr>&#10;<tr class="memitem:a121e40b5944be337189eb63b98b7e6ce" id="r_a121e40b5944be337189eb63b98b7e6ce"><td class="memItemLeft"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a121e40b5944be337189eb63b98b7e6ce">EraseMember</a> (<a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> first, <a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> last)</td></tr>&#10;<tr class="memdesc:a121e40b5944be337189eb63b98b7e6ce"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove members in the range [first, last) from an object.  <br></td></tr>&#10;<tr class="memitem:ac51a3b3046aaa12aa1d88ac876a28cec" id="r_ac51a3b3046aaa12aa1d88ac876a28cec"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#ac51a3b3046aaa12aa1d88ac876a28cec">EraseMember</a> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *name)</td></tr>&#10;<tr class="memdesc:ac51a3b3046aaa12aa1d88ac876a28cec"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Erase a member in object by its name.  <br></td></tr>&#10;<tr class="memitem:a27db22089fc69aacda8309c593ed9812" id="r_a27db22089fc69aacda8309c593ed9812"><td class="memTemplParams" colspan="2"><a id="a27db22089fc69aacda8309c593ed9812" name="a27db22089fc69aacda8309c593ed9812"></a>&#10;template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a27db22089fc69aacda8309c593ed9812 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><b>EraseMember</b> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;name)</td></tr>&#10;<tr class="memitem:a538446f8bdb8e7765d1705d8d157358a" id="r_a538446f8bdb8e7765d1705d8d157358a"><td class="memItemLeft"><a id="a538446f8bdb8e7765d1705d8d157358a" name="a538446f8bdb8e7765d1705d8d157358a"></a>&#10;Object&nbsp;</td><td class="memItemRight"><b>GetObject</b> ()</td></tr>&#10;<tr class="memitem:a35d6a245412e8ce81c5b5d6b9d9e881c" id="r_a35d6a245412e8ce81c5b5d6b9d9e881c"><td class="memItemLeft"><a id="a35d6a245412e8ce81c5b5d6b9d9e881c" name="a35d6a245412e8ce81c5b5d6b9d9e881c"></a>&#10;ConstObject&nbsp;</td><td class="memItemRight"><b>GetObject</b> () const</td></tr>&#10;<tr id="pub-methods-4" class="groupHeader"><td colspan="2"><div class="groupHeader">Number</div></td></tr>&#10;<tr class="memitem:a5f2396316c5145cb41ebbccfb03100ba" id="r_a5f2396316c5145cb41ebbccfb03100ba"><td class="memItemLeft"><a id="a5f2396316c5145cb41ebbccfb03100ba" name="a5f2396316c5145cb41ebbccfb03100ba"></a>&#10;int&nbsp;</td><td class="memItemRight"><b>GetInt</b> () const</td></tr>&#10;<tr class="memitem:aa1ab35be7c796a75dec562844a1917e6" id="r_aa1ab35be7c796a75dec562844a1917e6"><td class="memItemLeft"><a id="aa1ab35be7c796a75dec562844a1917e6" name="aa1ab35be7c796a75dec562844a1917e6"></a>&#10;unsigned&nbsp;</td><td class="memItemRight"><b>GetUint</b> () const</td></tr>&#10;<tr class="memitem:a01b8758dbfece60480392667795be717" id="r_a01b8758dbfece60480392667795be717"><td class="memItemLeft"><a id="a01b8758dbfece60480392667795be717" name="a01b8758dbfece60480392667795be717"></a>&#10;int64_t&nbsp;</td><td class="memItemRight"><b>GetInt64</b> () const</td></tr>&#10;<tr class="memitem:aac009c514da7e112aa8a9054c4d3e247" id="r_aac009c514da7e112aa8a9054c4d3e247"><td class="memItemLeft"><a id="aac009c514da7e112aa8a9054c4d3e247" name="aac009c514da7e112aa8a9054c4d3e247"></a>&#10;uint64_t&nbsp;</td><td class="memItemRight"><b>GetUint64</b> () const</td></tr>&#10;<tr class="memitem:aa27d086d265f0ce447b15b15f0a2ed6e" id="r_aa27d086d265f0ce447b15b15f0a2ed6e"><td class="memItemLeft">double&nbsp;</td><td class="memItemRight"><a class="el" href="#aa27d086d265f0ce447b15b15f0a2ed6e">GetDouble</a> () const</td></tr>&#10;<tr class="memdesc:aa27d086d265f0ce447b15b15f0a2ed6e"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value as double type.  <br></td></tr>&#10;<tr class="memitem:a573712808dd5d8814c103cf55fd761b4" id="r_a573712808dd5d8814c103cf55fd761b4"><td class="memItemLeft">float&nbsp;</td><td class="memItemRight"><a class="el" href="#a573712808dd5d8814c103cf55fd761b4">GetFloat</a> () const</td></tr>&#10;<tr class="memdesc:a573712808dd5d8814c103cf55fd761b4"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the value as float type.  <br></td></tr>&#10;<tr class="memitem:a2f4c0a21a7af7a55420619484e41aae1" id="r_a2f4c0a21a7af7a55420619484e41aae1"><td class="memItemLeft"><a id="a2f4c0a21a7af7a55420619484e41aae1" name="a2f4c0a21a7af7a55420619484e41aae1"></a>&#10;GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>SetInt</b> (int i)</td></tr>&#10;<tr class="memitem:a9779d5304cd8cee2b88bdf814ef58814" id="r_a9779d5304cd8cee2b88bdf814ef58814"><td class="memItemLeft"><a id="a9779d5304cd8cee2b88bdf814ef58814" name="a9779d5304cd8cee2b88bdf814ef58814"></a>&#10;GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>SetUint</b> (unsigned u)</td></tr>&#10;<tr class="memitem:aa500cfcb8ef3a294e954b75622a1fd6d" id="r_aa500cfcb8ef3a294e954b75622a1fd6d"><td class="memItemLeft"><a id="aa500cfcb8ef3a294e954b75622a1fd6d" name="aa500cfcb8ef3a294e954b75622a1fd6d"></a>&#10;GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>SetInt64</b> (int64_t i64)</td></tr>&#10;<tr class="memitem:a9d50b6f0245b507f83df8fe87f27cb1d" id="r_a9d50b6f0245b507f83df8fe87f27cb1d"><td class="memItemLeft"><a id="a9d50b6f0245b507f83df8fe87f27cb1d" name="a9d50b6f0245b507f83df8fe87f27cb1d"></a>&#10;GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>SetUint64</b> (uint64_t u64)</td></tr>&#10;<tr class="memitem:ac3dc52c613586573d914340bcc57abc1" id="r_ac3dc52c613586573d914340bcc57abc1"><td class="memItemLeft"><a id="ac3dc52c613586573d914340bcc57abc1" name="ac3dc52c613586573d914340bcc57abc1"></a>&#10;GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>SetDouble</b> (double d)</td></tr>&#10;<tr class="memitem:ab05ca975929151a23046d354135f861a" id="r_ab05ca975929151a23046d354135f861a"><td class="memItemLeft"><a id="ab05ca975929151a23046d354135f861a" name="ab05ca975929151a23046d354135f861a"></a>&#10;GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>SetFloat</b> (float f)</td></tr>&#10;<tr id="pub-methods-5" class="groupHeader"><td colspan="2"><div class="groupHeader">String</div></td></tr>&#10;<tr class="memitem:a126b748779b6bf39ecf442a00f89a29b" id="r_a126b748779b6bf39ecf442a00f89a29b"><td class="memItemLeft"><a id="a126b748779b6bf39ecf442a00f89a29b" name="a126b748779b6bf39ecf442a00f89a29b"></a>&#10;const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *&nbsp;</td><td class="memItemRight"><b>GetString</b> () const</td></tr>&#10;<tr class="memitem:a18599e0d1a7e70a11b35f5e219390fea" id="r_a18599e0d1a7e70a11b35f5e219390fea"><td class="memItemLeft"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a18599e0d1a7e70a11b35f5e219390fea">GetStringLength</a> () const</td></tr>&#10;<tr class="memdesc:a18599e0d1a7e70a11b35f5e219390fea"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the length of string.  <br></td></tr>&#10;<tr class="memitem:ab5da0559dab299f6790d223190870e5a" id="r_ab5da0559dab299f6790d223190870e5a"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#ab5da0559dab299f6790d223190870e5a">SetString</a> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *s, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length)</td></tr>&#10;<tr class="memdesc:ab5da0559dab299f6790d223190870e5a"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set this value as a string without copying source string.  <br></td></tr>&#10;<tr class="memitem:a2678c808449447f9aa753552367be2bd" id="r_a2678c808449447f9aa753552367be2bd"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a2678c808449447f9aa753552367be2bd">SetString</a> (<a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> s)</td></tr>&#10;<tr class="memdesc:a2678c808449447f9aa753552367be2bd"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set this value as a string without copying source string.  <br></td></tr>&#10;<tr class="memitem:ad5fab3ea017700637b099262960d8f02" id="r_ad5fab3ea017700637b099262960d8f02"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#ad5fab3ea017700637b099262960d8f02">SetString</a> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *s, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:ad5fab3ea017700637b099262960d8f02"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set this value as a string by copying from source string.  <br></td></tr>&#10;<tr class="memitem:a05c10cd07363b30ae2285f49f4373a79" id="r_a05c10cd07363b30ae2285f49f4373a79"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a05c10cd07363b30ae2285f49f4373a79">SetString</a> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *s, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a05c10cd07363b30ae2285f49f4373a79"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set this value as a string by copying from source string.  <br></td></tr>&#10;</tbody></table><table class="memberdecls">&#10;<tbody><tr class="heading"><td colspan="2"><h2 id="header-member-group" class="groupheader"><a id="member-group" name="member-group"></a>&#10;Array</h2></td></tr>&#10;<tr class="memitem:ab05bc9e52e201a2867ea5bac141ee1ae" id="r_ab05bc9e52e201a2867ea5bac141ee1ae"><td class="memTemplParams" colspan="2"><a id="ab05bc9e52e201a2867ea5bac141ee1ae" name="ab05bc9e52e201a2867ea5bac141ee1ae"></a>&#10;template&lt;typename, typename, typename&gt; </td></tr>&#10;<tr class="memitem:ab05bc9e52e201a2867ea5bac141ee1ae template"><td class="memItemLeft">class&nbsp;</td><td class="memItemRight"><b>GenericDocument</b></td></tr>&#10;<tr class="memitem:a4fc5ba0ad8723ded9194d1f0576d9895" id="r_a4fc5ba0ad8723ded9194d1f0576d9895"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a4fc5ba0ad8723ded9194d1f0576d9895">SetArray</a> ()</td></tr>&#10;<tr class="memdesc:a4fc5ba0ad8723ded9194d1f0576d9895"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set this value as an empty array.  <br></td></tr>&#10;<tr class="memitem:a799a8a2503989f486f3fc7a660266555" id="r_a799a8a2503989f486f3fc7a660266555"><td class="memItemLeft"><a id="a799a8a2503989f486f3fc7a660266555" name="a799a8a2503989f486f3fc7a660266555"></a>&#10;<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>&nbsp;</td><td class="memItemRight"><b>Size</b> () const</td></tr>&#10;<tr class="memdesc:a799a8a2503989f486f3fc7a660266555"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the number of elements in array. <br></td></tr>&#10;<tr class="memitem:a812e5c07f74a90566e7636330740eb6a" id="r_a812e5c07f74a90566e7636330740eb6a"><td class="memItemLeft"><a id="a812e5c07f74a90566e7636330740eb6a" name="a812e5c07f74a90566e7636330740eb6a"></a>&#10;<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>&nbsp;</td><td class="memItemRight"><b>Capacity</b> () const</td></tr>&#10;<tr class="memdesc:a812e5c07f74a90566e7636330740eb6a"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the capacity of array. <br></td></tr>&#10;<tr class="memitem:ad08a62c65a793ab1d0abe7eac03776fd" id="r_ad08a62c65a793ab1d0abe7eac03776fd"><td class="memItemLeft"><a id="ad08a62c65a793ab1d0abe7eac03776fd" name="ad08a62c65a793ab1d0abe7eac03776fd"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>Empty</b> () const</td></tr>&#10;<tr class="memdesc:ad08a62c65a793ab1d0abe7eac03776fd"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether the array is empty. <br></td></tr>&#10;<tr class="memitem:aa56b69bac5423622eff6998ce4802106" id="r_aa56b69bac5423622eff6998ce4802106"><td class="memItemLeft">void&nbsp;</td><td class="memItemRight"><a class="el" href="#aa56b69bac5423622eff6998ce4802106">Clear</a> ()</td></tr>&#10;<tr class="memdesc:aa56b69bac5423622eff6998ce4802106"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove all elements in the array.  <br></td></tr>&#10;<tr class="memitem:ac99cb43a20f12d9af0cbb7961cf98c94" id="r_ac99cb43a20f12d9af0cbb7961cf98c94"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#ac99cb43a20f12d9af0cbb7961cf98c94">operator[]</a> (<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)</td></tr>&#10;<tr class="memdesc:ac99cb43a20f12d9af0cbb7961cf98c94"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an element from array by index.  <br></td></tr>&#10;<tr class="memitem:a1fe87477ecf8888b189bc13a50d7b63b" id="r_a1fe87477ecf8888b189bc13a50d7b63b"><td class="memItemLeft"><a id="a1fe87477ecf8888b189bc13a50d7b63b" name="a1fe87477ecf8888b189bc13a50d7b63b"></a>&#10;const GenericValue &amp;&nbsp;</td><td class="memItemRight"><b>operator[]</b> (<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index) const</td></tr>&#10;<tr class="memitem:a8d1040c479d89edb261db86400ebe603" id="r_a8d1040c479d89edb261db86400ebe603"><td class="memItemLeft"><a class="el" href="#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a8d1040c479d89edb261db86400ebe603">Begin</a> ()</td></tr>&#10;<tr class="memdesc:a8d1040c479d89edb261db86400ebe603"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Element iterator.  <br></td></tr>&#10;<tr class="memitem:aaf58b9337ccc0cdf16aa9634c4645109" id="r_aaf58b9337ccc0cdf16aa9634c4645109"><td class="memItemLeft"><a class="el" href="#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#aaf58b9337ccc0cdf16aa9634c4645109">End</a> ()</td></tr>&#10;<tr class="memdesc:aaf58b9337ccc0cdf16aa9634c4645109"><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><em>Past-the-end</em> element iterator  <br></td></tr>&#10;<tr class="memitem:a07d947971c59c9ce884b3c5205c9238f" id="r_a07d947971c59c9ce884b3c5205c9238f"><td class="memItemLeft"><a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a07d947971c59c9ce884b3c5205c9238f">Begin</a> () const</td></tr>&#10;<tr class="memdesc:a07d947971c59c9ce884b3c5205c9238f"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constant element iterator.  <br></td></tr>&#10;<tr class="memitem:abdd6a3b703a03aada4c186a2365698e7" id="r_abdd6a3b703a03aada4c186a2365698e7"><td class="memItemLeft"><a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#abdd6a3b703a03aada4c186a2365698e7">End</a> () const</td></tr>&#10;<tr class="memdesc:abdd6a3b703a03aada4c186a2365698e7"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constant <em>past-the-end</em> element iterator.  <br></td></tr>&#10;<tr class="memitem:a4f098ac0ea6de159549e749fd9c6f7dc" id="r_a4f098ac0ea6de159549e749fd9c6f7dc"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a4f098ac0ea6de159549e749fd9c6f7dc">Reserve</a> (<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a4f098ac0ea6de159549e749fd9c6f7dc"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Request the array to have enough capacity to store elements.  <br></td></tr>&#10;<tr class="memitem:a3ebbb94635930975177cd5240006901b" id="r_a3ebbb94635930975177cd5240006901b"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a3ebbb94635930975177cd5240006901b">PushBack</a> (GenericValue &amp;value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a3ebbb94635930975177cd5240006901b"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append a <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/" title="Represents a JSON value. Use Value for UTF8 encoding and default allocator.">GenericValue</a> at the end of the array.  <br></td></tr>&#10;<tr class="memitem:a8a5d91d63e193c0b501b1c184d55f5f6" id="r_a8a5d91d63e193c0b501b1c184d55f5f6"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a8a5d91d63e193c0b501b1c184d55f5f6">PushBack</a> (<a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a8a5d91d63e193c0b501b1c184d55f5f6"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append a constant string reference at the end of the array.  <br></td></tr>&#10;<tr class="memitem:a5bbe43b9d7729974681a285d6a978b48" id="r_a5bbe43b9d7729974681a285d6a978b48"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:a5bbe43b9d7729974681a285d6a978b48 template"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a5bbe43b9d7729974681a285d6a978b48">PushBack</a> (T value, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a5bbe43b9d7729974681a285d6a978b48"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Append a primitive value at the end of the array.  <br></td></tr>&#10;<tr class="memitem:a5044e62f7b610f58c108883331aa5bd5" id="r_a5044e62f7b610f58c108883331aa5bd5"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a5044e62f7b610f58c108883331aa5bd5">PopBack</a> ()</td></tr>&#10;<tr class="memdesc:a5044e62f7b610f58c108883331aa5bd5"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove the last element in the array.  <br></td></tr>&#10;<tr class="memitem:a68ba73eeda7b9429ca05267065d3cc99" id="r_a68ba73eeda7b9429ca05267065d3cc99"><td class="memItemLeft"><a class="el" href="#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a68ba73eeda7b9429ca05267065d3cc99">Erase</a> (<a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a> pos)</td></tr>&#10;<tr class="memdesc:a68ba73eeda7b9429ca05267065d3cc99"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove an element of array by iterator.  <br></td></tr>&#10;<tr class="memitem:a916f443e02f9379d8fbde49a4d440f61" id="r_a916f443e02f9379d8fbde49a4d440f61"><td class="memItemLeft"><a class="el" href="#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a>&nbsp;</td><td class="memItemRight"><a class="el" href="#a916f443e02f9379d8fbde49a4d440f61">Erase</a> (<a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a> first, <a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a> last)</td></tr>&#10;<tr class="memdesc:a916f443e02f9379d8fbde49a4d440f61"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove elements in the range [first, last) of the array.  <br></td></tr>&#10;<tr class="memitem:a252af37875a1115f107082263af2cb3c" id="r_a252af37875a1115f107082263af2cb3c"><td class="memItemLeft"><a id="a252af37875a1115f107082263af2cb3c" name="a252af37875a1115f107082263af2cb3c"></a>&#10;Array&nbsp;</td><td class="memItemRight"><b>GetArray</b> ()</td></tr>&#10;<tr class="memitem:a274f975f1a3127746e027c2a90fd101e" id="r_a274f975f1a3127746e027c2a90fd101e"><td class="memItemLeft"><a id="a274f975f1a3127746e027c2a90fd101e" name="a274f975f1a3127746e027c2a90fd101e"></a>&#10;ConstArray&nbsp;</td><td class="memItemRight"><b>GetArray</b> () const</td></tr>&#10;<tr class="memitem:acc6b1791cca8daef18521918136264b7" id="r_acc6b1791cca8daef18521918136264b7"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:acc6b1791cca8daef18521918136264b7 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#acc6b1791cca8daef18521918136264b7">Is</a> () const</td></tr>&#10;<tr class="memdesc:acc6b1791cca8daef18521918136264b7"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Templated version for checking whether this value is type T.  <br></td></tr>&#10;<tr class="memitem:a01b08bc71b07839324b3a1fdc8341712" id="r_a01b08bc71b07839324b3a1fdc8341712"><td class="memTemplParams" colspan="2"><a id="a01b08bc71b07839324b3a1fdc8341712" name="a01b08bc71b07839324b3a1fdc8341712"></a>&#10;template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:a01b08bc71b07839324b3a1fdc8341712 template"><td class="memItemLeft">T&nbsp;</td><td class="memItemRight"><b>Get</b> () const</td></tr>&#10;<tr class="memitem:aaa92aa34a1b7ba91980a461bd526a4db" id="r_aaa92aa34a1b7ba91980a461bd526a4db"><td class="memTemplParams" colspan="2"><a id="aaa92aa34a1b7ba91980a461bd526a4db" name="aaa92aa34a1b7ba91980a461bd526a4db"></a>&#10;template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:aaa92aa34a1b7ba91980a461bd526a4db template"><td class="memItemLeft">T&nbsp;</td><td class="memItemRight"><b>Get</b> ()</td></tr>&#10;<tr class="memitem:a394f86341419eac69a8948a5817dc4d7" id="r_a394f86341419eac69a8948a5817dc4d7"><td class="memTemplParams" colspan="2"><a id="a394f86341419eac69a8948a5817dc4d7" name="a394f86341419eac69a8948a5817dc4d7"></a>&#10;template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:a394f86341419eac69a8948a5817dc4d7 template"><td class="memItemLeft"><a class="el" href="#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> &amp;&nbsp;</td><td class="memItemRight"><b>Set</b> (const T &amp;data)</td></tr>&#10;<tr class="memitem:ad950f3a66031f4eaf1f47f9619364364" id="r_ad950f3a66031f4eaf1f47f9619364364"><td class="memTemplParams" colspan="2"><a id="ad950f3a66031f4eaf1f47f9619364364" name="ad950f3a66031f4eaf1f47f9619364364"></a>&#10;template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:ad950f3a66031f4eaf1f47f9619364364 template"><td class="memItemLeft"><a class="el" href="#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> &amp;&nbsp;</td><td class="memItemRight"><b>Set</b> (const T &amp;data, <a class="el" href="#a5d47340c96346c5028fee4c9068d783d">AllocatorType</a> &amp;allocator)</td></tr>&#10;<tr class="memitem:ad3ebfa73796f4db4836ec47c2261700c" id="r_ad3ebfa73796f4db4836ec47c2261700c"><td class="memTemplParams" colspan="2">template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/">Handler</a>&gt; </td></tr>&#10;<tr class="memitem:ad3ebfa73796f4db4836ec47c2261700c template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#ad3ebfa73796f4db4836ec47c2261700c">Accept</a> (<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/">Handler</a> &amp;handler) const</td></tr>&#10;<tr class="memdesc:ad3ebfa73796f4db4836ec47c2261700c"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generate events of this value to a <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/" title="Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...">Handler</a>.  <br></td></tr>&#10;</tbody></table><table class="memberdecls">&#10;<tbody><tr class="heading"><td colspan="2"><h2 id="header-member-group" class="groupheader"><a id="member-group" name="member-group"></a>&#10;Assignment operators</h2></td></tr>&#10;<tr class="memitem:a58ecce8a34fc029039b8079de246bdaa" id="r_a58ecce8a34fc029039b8079de246bdaa"><td class="memItemLeft">void&nbsp;</td><td class="memItemRight"><a class="el" href="#a58ecce8a34fc029039b8079de246bdaa">swap</a> (GenericValue &amp;a, GenericValue &amp;b) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a58ecce8a34fc029039b8079de246bdaa"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">free-standing swap function helper  <br></td></tr>&#10;<tr class="memitem:a37fa30cf48e0a0724a8e7323fc2fef41" id="r_a37fa30cf48e0a0724a8e7323fc2fef41"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a37fa30cf48e0a0724a8e7323fc2fef41">operator=</a> (GenericValue &amp;rhs) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a37fa30cf48e0a0724a8e7323fc2fef41"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment with move semantics.  <br></td></tr>&#10;<tr class="memitem:a07e7550d44739a59555bc78f67716657" id="r_a07e7550d44739a59555bc78f67716657"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a07e7550d44739a59555bc78f67716657">operator=</a> (<a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> str) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a07e7550d44739a59555bc78f67716657"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment of constant string reference (no copy).  <br></td></tr>&#10;<tr class="memitem:a46acbe61b2da32eb737be45db8678ac6" id="r_a46acbe61b2da32eb737be45db8678ac6"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:a46acbe61b2da32eb737be45db8678ac6 template"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a46acbe61b2da32eb737be45db8678ac6">operator=</a> (T value)</td></tr>&#10;<tr class="memdesc:a46acbe61b2da32eb737be45db8678ac6"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment with primitive types.  <br></td></tr>&#10;<tr class="memitem:a4c6ab73508f0a1f8d03bf24925908428" id="r_a4c6ab73508f0a1f8d03bf24925908428"><td class="memTemplParams" colspan="2">template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a4c6ab73508f0a1f8d03bf24925908428 template"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a4c6ab73508f0a1f8d03bf24925908428">CopyFrom</a> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;rhs, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a4c6ab73508f0a1f8d03bf24925908428"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deep-copy assignment from <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a>.  <br></td></tr>&#10;<tr class="memitem:a60fc0ca2a1aa00cec7c6984749296b82" id="r_a60fc0ca2a1aa00cec7c6984749296b82"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a60fc0ca2a1aa00cec7c6984749296b82">Swap</a> (GenericValue &amp;other) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a60fc0ca2a1aa00cec7c6984749296b82"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Exchange the contents of this value with those of other.  <br></td></tr>&#10;<tr class="memitem:a3bf1279b8ebb55e0f172af2c3889d867" id="r_a3bf1279b8ebb55e0f172af2c3889d867"><td class="memItemLeft">GenericValue &amp;&nbsp;</td><td class="memItemRight"><a class="el" href="#a3bf1279b8ebb55e0f172af2c3889d867">Move</a> () RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a3bf1279b8ebb55e0f172af2c3889d867"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Prepare <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> for move semantics.  <br></td></tr>&#10;</tbody></table><table class="memberdecls">&#10;<tbody><tr class="heading"><td colspan="2"><h2 id="header-member-group" class="groupheader"><a id="member-group" name="member-group"></a>&#10;Equal-to and not-equal-to operators</h2></td></tr>&#10;<tr class="memitem:aaa465706fda1e1ef4513ce877e0b4b69" id="r_aaa465706fda1e1ef4513ce877e0b4b69"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:aaa465706fda1e1ef4513ce877e0b4b69 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#aaa465706fda1e1ef4513ce877e0b4b69">operator==</a> (const T &amp;lhs, const GenericValue &amp;rhs)</td></tr>&#10;<tr class="memdesc:aaa465706fda1e1ef4513ce877e0b4b69"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equal-to operator with arbitrary types (symmetric version).  <br></td></tr>&#10;<tr class="memitem:ae08898bef949f217f0e5d28e19f05992" id="r_ae08898bef949f217f0e5d28e19f05992"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:ae08898bef949f217f0e5d28e19f05992 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#ae08898bef949f217f0e5d28e19f05992">operator!=</a> (const T &amp;lhs, const GenericValue &amp;rhs)</td></tr>&#10;<tr class="memdesc:ae08898bef949f217f0e5d28e19f05992"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Not-Equal-to operator with arbitrary types (symmetric version).  <br></td></tr>&#10;<tr class="memitem:ab4e5285102bb686f39bca2855a17a181" id="r_ab4e5285102bb686f39bca2855a17a181"><td class="memTemplParams" colspan="2">template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:ab4e5285102bb686f39bca2855a17a181 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#ab4e5285102bb686f39bca2855a17a181">operator==</a> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;rhs) const</td></tr>&#10;<tr class="memdesc:ab4e5285102bb686f39bca2855a17a181"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equal-to operator.  <br></td></tr>&#10;<tr class="memitem:af03ef6020e188bbfceb018da5cd8becc" id="r_af03ef6020e188bbfceb018da5cd8becc"><td class="memItemLeft"><a id="af03ef6020e188bbfceb018da5cd8becc" name="af03ef6020e188bbfceb018da5cd8becc"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>operator==</b> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *rhs) const</td></tr>&#10;<tr class="memdesc:af03ef6020e188bbfceb018da5cd8becc"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equal-to operator with const C-string pointer. <br></td></tr>&#10;<tr class="memitem:aaddbbbb35cd783f209f889cf8dea9570" id="r_aaddbbbb35cd783f209f889cf8dea9570"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:aaddbbbb35cd783f209f889cf8dea9570 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#aaddbbbb35cd783f209f889cf8dea9570">operator==</a> (const T &amp;rhs) const</td></tr>&#10;<tr class="memdesc:aaddbbbb35cd783f209f889cf8dea9570"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equal-to operator with primitive types.  <br></td></tr>&#10;<tr class="memitem:ad5bf5afd53f21f370f917041b3be4bfc" id="r_ad5bf5afd53f21f370f917041b3be4bfc"><td class="memTemplParams" colspan="2">template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:ad5bf5afd53f21f370f917041b3be4bfc template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#ad5bf5afd53f21f370f917041b3be4bfc">operator!=</a> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;rhs) const</td></tr>&#10;<tr class="memdesc:ad5bf5afd53f21f370f917041b3be4bfc"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Not-equal-to operator.  <br></td></tr>&#10;<tr class="memitem:a6443cf5323fb46c4c51cd15a365da49b" id="r_a6443cf5323fb46c4c51cd15a365da49b"><td class="memItemLeft"><a id="a6443cf5323fb46c4c51cd15a365da49b" name="a6443cf5323fb46c4c51cd15a365da49b"></a>&#10;bool&nbsp;</td><td class="memItemRight"><b>operator!=</b> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *rhs) const</td></tr>&#10;<tr class="memdesc:a6443cf5323fb46c4c51cd15a365da49b"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Not-equal-to operator with const C-string pointer. <br></td></tr>&#10;<tr class="memitem:ae6fe0576ff0336f6e2b09fe32f3ff809" id="r_ae6fe0576ff0336f6e2b09fe32f3ff809"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>&#10;<tr class="memitem:ae6fe0576ff0336f6e2b09fe32f3ff809 template"><td class="memItemLeft">bool&nbsp;</td><td class="memItemRight"><a class="el" href="#ae6fe0576ff0336f6e2b09fe32f3ff809">operator!=</a> (const T &amp;rhs) const</td></tr>&#10;<tr class="memdesc:ae6fe0576ff0336f6e2b09fe32f3ff809"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Not-equal-to operator with arbitrary types.  <br></td></tr>&#10;</tbody></table><table class="memberdecls">&#10;<tbody><tr class="heading"><td colspan="2"><h2 id="header-member-group" class="groupheader"><a id="member-group" name="member-group"></a>&#10;Constructors and destructor.</h2></td></tr>&#10;<tr class="memitem:ad1f8199e65662e0d52a13a1577d4e4a5" id="r_ad1f8199e65662e0d52a13a1577d4e4a5"><td class="memItemLeft"><a id="ad1f8199e65662e0d52a13a1577d4e4a5" name="ad1f8199e65662e0d52a13a1577d4e4a5"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> () RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:ad1f8199e65662e0d52a13a1577d4e4a5"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor creates a null value. <br></td></tr>&#10;<tr class="memitem:a646b6d4d3d98799a0926d96ffa127a58" id="r_a646b6d4d3d98799a0926d96ffa127a58"><td class="memItemLeft">&nbsp;</td><td class="memItemRight"><a class="el" href="#a646b6d4d3d98799a0926d96ffa127a58">GenericValue</a> (<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> type) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a646b6d4d3d98799a0926d96ffa127a58"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor with JSON value type.  <br></td></tr>&#10;<tr class="memitem:a62a9fac23db014e88c508c2020573679" id="r_a62a9fac23db014e88c508c2020573679"><td class="memTemplParams" colspan="2">template&lt;typename SourceAllocator&gt; </td></tr>&#10;<tr class="memitem:a62a9fac23db014e88c508c2020573679 template"><td class="memItemLeft">&nbsp;</td><td class="memItemRight"><a class="el" href="#a62a9fac23db014e88c508c2020573679">GenericValue</a> (const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;rhs, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a62a9fac23db014e88c508c2020573679"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Explicit copy constructor (with allocator).  <br></td></tr>&#10;<tr class="memitem:ab933ad7ff8c9d08f73cebaecb700dbe9" id="r_ab933ad7ff8c9d08f73cebaecb700dbe9"><td class="memItemLeft">&nbsp;</td><td class="memItemRight"><a class="el" href="#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a> (bool b) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:ab933ad7ff8c9d08f73cebaecb700dbe9"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for boolean value.  <br></td></tr>&#10;<tr class="memitem:abba0c9ccfd90726f916c36013a2e9e19" id="r_abba0c9ccfd90726f916c36013a2e9e19"><td class="memItemLeft"><a id="abba0c9ccfd90726f916c36013a2e9e19" name="abba0c9ccfd90726f916c36013a2e9e19"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (int i) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:abba0c9ccfd90726f916c36013a2e9e19"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for int value. <br></td></tr>&#10;<tr class="memitem:a4a8060a42b7953a2981ad892180ca5a6" id="r_a4a8060a42b7953a2981ad892180ca5a6"><td class="memItemLeft"><a id="a4a8060a42b7953a2981ad892180ca5a6" name="a4a8060a42b7953a2981ad892180ca5a6"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (unsigned u) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a4a8060a42b7953a2981ad892180ca5a6"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for unsigned value. <br></td></tr>&#10;<tr class="memitem:acd4ae9a8dba4498d1d7cce6667529bb8" id="r_acd4ae9a8dba4498d1d7cce6667529bb8"><td class="memItemLeft"><a id="acd4ae9a8dba4498d1d7cce6667529bb8" name="acd4ae9a8dba4498d1d7cce6667529bb8"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (int64_t i64) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:acd4ae9a8dba4498d1d7cce6667529bb8"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for int64_t value. <br></td></tr>&#10;<tr class="memitem:a1f125e735577aae64c0306345de45563" id="r_a1f125e735577aae64c0306345de45563"><td class="memItemLeft"><a id="a1f125e735577aae64c0306345de45563" name="a1f125e735577aae64c0306345de45563"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (uint64_t u64) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a1f125e735577aae64c0306345de45563"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for uint64_t value. <br></td></tr>&#10;<tr class="memitem:a71b9e2ec1f7bf9e2f034126ca7b4945a" id="r_a71b9e2ec1f7bf9e2f034126ca7b4945a"><td class="memItemLeft"><a id="a71b9e2ec1f7bf9e2f034126ca7b4945a" name="a71b9e2ec1f7bf9e2f034126ca7b4945a"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (double d) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a71b9e2ec1f7bf9e2f034126ca7b4945a"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for double value. <br></td></tr>&#10;<tr class="memitem:a51e93a4fb57f77a39767acb076bf43c1" id="r_a51e93a4fb57f77a39767acb076bf43c1"><td class="memItemLeft"><a id="a51e93a4fb57f77a39767acb076bf43c1" name="a51e93a4fb57f77a39767acb076bf43c1"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *s, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a51e93a4fb57f77a39767acb076bf43c1"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for constant string (i.e. do not make a copy of string). <br></td></tr>&#10;<tr class="memitem:a65bfc3073fa80ee5eba8e985abe2f941" id="r_a65bfc3073fa80ee5eba8e985abe2f941"><td class="memItemLeft"><a id="a65bfc3073fa80ee5eba8e985abe2f941" name="a65bfc3073fa80ee5eba8e985abe2f941"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (<a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> s) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a65bfc3073fa80ee5eba8e985abe2f941"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for constant string (i.e. do not make a copy of string). <br></td></tr>&#10;<tr class="memitem:ad9553bb9ccbfd19547c473a95405a8b2" id="r_ad9553bb9ccbfd19547c473a95405a8b2"><td class="memItemLeft"><a id="ad9553bb9ccbfd19547c473a95405a8b2" name="ad9553bb9ccbfd19547c473a95405a8b2"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *s, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:ad9553bb9ccbfd19547c473a95405a8b2"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for copy-string (i.e. do make a copy of string). <br></td></tr>&#10;<tr class="memitem:a83ba61e8a5170c2e172fd60ebc11016f" id="r_a83ba61e8a5170c2e172fd60ebc11016f"><td class="memItemLeft"><a id="a83ba61e8a5170c2e172fd60ebc11016f" name="a83ba61e8a5170c2e172fd60ebc11016f"></a>&#10;&nbsp;</td><td class="memItemRight"><b>GenericValue</b> (const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *s, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;allocator)</td></tr>&#10;<tr class="memdesc:a83ba61e8a5170c2e172fd60ebc11016f"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for copy-string (i.e. do make a copy of string). <br></td></tr>&#10;<tr class="memitem:a77b0f41557b3c34b57a180698312c4a8" id="r_a77b0f41557b3c34b57a180698312c4a8"><td class="memItemLeft">&nbsp;</td><td class="memItemRight"><a class="el" href="#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a> (Array a) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a77b0f41557b3c34b57a180698312c4a8"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for Array.  <br></td></tr>&#10;<tr class="memitem:a893da1069660536fd3943a0149206a6e" id="r_a893da1069660536fd3943a0149206a6e"><td class="memItemLeft">&nbsp;</td><td class="memItemRight"><a class="el" href="#a893da1069660536fd3943a0149206a6e">GenericValue</a> (Object o) RAPIDJSON_NOEXCEPT</td></tr>&#10;<tr class="memdesc:a893da1069660536fd3943a0149206a6e"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for Object.  <br></td></tr>&#10;<tr class="memitem:a433a64b466c80cadf7d1acaa6f065437" id="r_a433a64b466c80cadf7d1acaa6f065437"><td class="memItemLeft">&nbsp;</td><td class="memItemRight"><a class="el" href="#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a> ()</td></tr>&#10;<tr class="memdesc:a433a64b466c80cadf7d1acaa6f065437"><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <br></td></tr>&#10;</tbody></table>&#10;<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>&#10;<div class="textblock"><div class="compoundTemplParams">template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt;<br>&#10;class rapidjson::GenericValue&lt; Encoding, Allocator &gt;</div><p>Represents a JSON value. Use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> for <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/212-structrapidjson_1_1_u_t_f8/" title="UTF-8 encoding.">UTF8</a> encoding and default allocator. </p>&#10;<p>A JSON value can be one of 7 types. This class is a variant type supporting these types.</p>&#10;<p>Use the <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> if <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/212-structrapidjson_1_1_u_t_f8/" title="UTF-8 encoding.">UTF8</a> and default allocator</p>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">Encoding</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/" title="Concept for encoding of Unicode characters.">Encoding</a> of the value. (Even non-string values need to have the same encoding in a document) </td></tr>&#10;    <tr><td class="paramname">Allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> type for allocating memory of object, array and string. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;</div><a name="doc-constructors" id="doc-constructors"></a><h2 id="header-doc-constructors" class="groupheader">Constructor &amp; Destructor Documentation</h2>&#10;<a id="a646b6d4d3d98799a0926d96ffa127a58" name="a646b6d4d3d98799a0926d96ffa127a58"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a646b6d4d3d98799a0926d96ffa127a58">◆&nbsp;</a></span>GenericValue() <span class="overload">[1/5]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::GenericValue </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a></td>          <td class="paramname"><span class="paramname"><em>type</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Constructor with JSON value type. </p>&#10;<p>This creates a <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> of specified type with default content. </p><dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">type</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4" title="Type of JSON value.">Type</a> of the value. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd>Default content for number is zero. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a62a9fac23db014e88c508c2020573679" name="a62a9fac23db014e88c508c2020573679"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a62a9fac23db014e88c508c2020573679">◆&nbsp;</a></span>GenericValue() <span class="overload">[2/5]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a>&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename SourceAllocator&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::GenericValue </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Explicit copy constructor (with allocator). </p>&#10;<p>Creates a copy of a <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> by using the given <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> </p><dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">SourceAllocator</td><td>allocator of <code>rhs</code> </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">rhs</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> to copy from (read-only) </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for allocating copied elements and buffers. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section see"><dt>See also</dt><dd><a class="el" href="#a4c6ab73508f0a1f8d03bf24925908428" title="Deep-copy assignment from Value.">CopyFrom()</a> </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ab933ad7ff8c9d08f73cebaecb700dbe9" name="ab933ad7ff8c9d08f73cebaecb700dbe9"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ab933ad7ff8c9d08f73cebaecb700dbe9">◆&nbsp;</a></span>GenericValue() <span class="overload">[3/5]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::GenericValue </td>&#10;          <td>(</td>&#10;          <td class="paramtype">bool</td>          <td class="paramname"><span class="paramname"><em>b</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Constructor for boolean value. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">b</td><td>Boolean value </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd>This constructor is limited to <em>real</em> boolean values and rejects implicitly converted types like arbitrary pointers. Use an explicit cast to <code>bool</code>, if you want to construct a boolean JSON value in such cases. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a77b0f41557b3c34b57a180698312c4a8" name="a77b0f41557b3c34b57a180698312c4a8"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a77b0f41557b3c34b57a180698312c4a8">◆&nbsp;</a></span>GenericValue() <span class="overload">[4/5]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::GenericValue </td>&#10;          <td>(</td>&#10;          <td class="paramtype">Array</td>          <td class="paramname"><span class="paramname"><em>a</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Constructor for Array. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">a</td><td>An array obtained by <code>GetArray()</code>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd><code>Array</code> is always pass-by-value. </dd>&#10;<dd>&#10;the source array is moved into this value and the sourec array becomes empty. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a893da1069660536fd3943a0149206a6e" name="a893da1069660536fd3943a0149206a6e"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a893da1069660536fd3943a0149206a6e">◆&nbsp;</a></span>GenericValue() <span class="overload">[5/5]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::GenericValue </td>&#10;          <td>(</td>&#10;          <td class="paramtype">Object</td>          <td class="paramname"><span class="paramname"><em>o</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Constructor for Object. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">o</td><td>An object obtained by <code>GetObject()</code>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd><code>Object</code> is always pass-by-value. </dd>&#10;<dd>&#10;the source object is moved into this value and the sourec object becomes empty. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a433a64b466c80cadf7d1acaa6f065437" name="a433a64b466c80cadf7d1acaa6f065437"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a433a64b466c80cadf7d1acaa6f065437">◆&nbsp;</a></span>~GenericValue()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::~GenericValue </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Destructor. </p>&#10;<p>Need to destruct elements of array, members of object, or copy-string. </p>&#10;&#10;</div>&#10;</div>&#10;<a name="doc-func-members" id="doc-func-members"></a><h2 id="header-doc-func-members" class="groupheader">Member Function Documentation</h2>&#10;<a id="ad3ebfa73796f4db4836ec47c2261700c" name="ad3ebfa73796f4db4836ec47c2261700c"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ad3ebfa73796f4db4836ec47c2261700c">◆&nbsp;</a></span>Accept()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/">Handler</a>&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Accept </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/">Handler</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>handler</em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Generate events of this value to a <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/" title="Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...">Handler</a>. </p>&#10;<p>This function adopts the GoF visitor pattern. Typical usage is to output this JSON value as JSON text via <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/058-classrapidjson_1_1_writer/" title="JSON writer.">Writer</a>, which is a <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/" title="Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...">Handler</a>. It can also be used to deep clone this value via <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/" title="A document for parsing JSON text as DOM.">GenericDocument</a>, which is also a <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/" title="Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...">Handler</a>. </p><dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">Handler</td><td>type of handler. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">handler</td><td>An object implementing concept <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/047-classrapidjson_1_1_handler/" title="Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...">Handler</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a47f607190102ca28abaa1ce1133dcfae" name="a47f607190102ca28abaa1ce1133dcfae"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a47f607190102ca28abaa1ce1133dcfae">◆&nbsp;</a></span>AddMember() <span class="overload">[1/6]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::AddMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>name</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Add a member (name-value pair) to the object. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td>A string value as name of member. </td></tr>&#10;    <tr><td class="paramname">value</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> of any type. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. It must be the same one as used before. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>The ownership of <code>name</code> and <code>value</code> will be transferred to this object on success. </dd></dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() &amp;&amp; name.IsString() </dd></dl>&#10;<dl class="section post"><dt>Postcondition</dt><dd>name.IsNull() &amp;&amp; value.IsNull() </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>Amortized Constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="aecf043e60f84e11f3656c4c3fad1ac17" name="aecf043e60f84e11f3656c4c3fad1ac17"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#aecf043e60f84e11f3656c4c3fad1ac17">◆&nbsp;</a></span>AddMember() <span class="overload">[2/6]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::AddMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>name</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a></td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Add a constant string value as member (name-value pair) to the object. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td>A string value as name of member. </td></tr>&#10;    <tr><td class="paramname">value</td><td>constant string reference as value of member. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. It must be the same one as used before. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>This overload is needed to avoid clashes with the generic primitive type <a class="el" href="#afd2b2648f8232c035d6fe2c1a2d6bb9e" title="Add any primitive value as member (name-value pair) to the object.">AddMember(GenericValue&amp;,T,Allocator&amp;)</a> overload below. </dd>&#10;<dd>&#10;Amortized Constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="afd2b2648f8232c035d6fe2c1a2d6bb9e" name="afd2b2648f8232c035d6fe2c1a2d6bb9e"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#afd2b2648f8232c035d6fe2c1a2d6bb9e">◆&nbsp;</a></span>AddMember() <span class="overload">[3/6]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::AddMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>name</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype">T</td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Add any primitive value as member (name-value pair) to the object. </p>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">T</td><td>Either <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4" title="Type">Type</a>, <code>int</code>, <code>unsigned</code>, <code>int64_t</code>, <code>uint64_t</code> </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td>A string value as name of member. </td></tr>&#10;    <tr><td class="paramname">value</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> of primitive type <code>T</code> as value of member </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject()</dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>The source type <code>T</code> explicitly disallows all pointer types, especially (<code>const</code>) <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4" title="Ch">Ch</a>*. This helps avoiding implicitly referencing character strings with insufficient lifetime, use <a class="el" href="#a6b608e37e920ddc95f2a0332d62b4ca2" title="AddMember(StringRefType, GenericValue&amp;, Allocator&amp;)">AddMember(StringRefType, GenericValue&amp;, Allocator&amp;)</a> or <a class="el" href="#a624fa3c206636a1ee8b3c34eb2402c10" title="AddMember(StringRefType, StringRefType, Allocator&amp;)">AddMember(StringRefType, StringRefType, Allocator&amp;)</a>. All other pointer types would implicitly convert to <code>bool</code>, use an explicit cast instead, if needed. </dd>&#10;<dd>&#10;Amortized Constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a6b608e37e920ddc95f2a0332d62b4ca2" name="a6b608e37e920ddc95f2a0332d62b4ca2"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a6b608e37e920ddc95f2a0332d62b4ca2">◆&nbsp;</a></span>AddMember() <span class="overload">[4/6]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::AddMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a></td>          <td class="paramname"><span class="paramname"><em>name</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Add a member (name-value pair) to the object. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td>A constant string reference as name of member. </td></tr>&#10;    <tr><td class="paramname">value</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> of any type. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. It must be the same one as used before. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>The ownership of <code>value</code> will be transferred to this object on success. </dd></dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() </dd></dl>&#10;<dl class="section post"><dt>Postcondition</dt><dd>value.IsNull() </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>Amortized Constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a624fa3c206636a1ee8b3c34eb2402c10" name="a624fa3c206636a1ee8b3c34eb2402c10"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a624fa3c206636a1ee8b3c34eb2402c10">◆&nbsp;</a></span>AddMember() <span class="overload">[5/6]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::AddMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a></td>          <td class="paramname"><span class="paramname"><em>name</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a></td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Add a constant string value as member (name-value pair) to the object. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td>A constant string reference as name of member. </td></tr>&#10;    <tr><td class="paramname">value</td><td>constant string reference as value of member. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. It must be the same one as used before. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>This overload is needed to avoid clashes with the generic primitive type <a class="el" href="#a84736b860c3f931212dca7f4d5db64c0" title="Add any primitive value as member (name-value pair) to the object.">AddMember(StringRefType,T,Allocator&amp;)</a> overload below. </dd>&#10;<dd>&#10;Amortized Constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a84736b860c3f931212dca7f4d5db64c0" name="a84736b860c3f931212dca7f4d5db64c0"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a84736b860c3f931212dca7f4d5db64c0">◆&nbsp;</a></span>AddMember() <span class="overload">[6/6]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::AddMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a></td>          <td class="paramname"><span class="paramname"><em>name</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype">T</td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Add any primitive value as member (name-value pair) to the object. </p>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">T</td><td>Either <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4" title="Type">Type</a>, <code>int</code>, <code>unsigned</code>, <code>int64_t</code>, <code>uint64_t</code> </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td>A constant string reference as name of member. </td></tr>&#10;    <tr><td class="paramname">value</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> of primitive type <code>T</code> as value of member </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject()</dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>The source type <code>T</code> explicitly disallows all pointer types, especially (<code>const</code>) <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4" title="Ch">Ch</a>*. This helps avoiding implicitly referencing character strings with insufficient lifetime, use <a class="el" href="#a6b608e37e920ddc95f2a0332d62b4ca2" title="AddMember(StringRefType, GenericValue&amp;, Allocator&amp;)">AddMember(StringRefType, GenericValue&amp;, Allocator&amp;)</a> or <a class="el" href="#a624fa3c206636a1ee8b3c34eb2402c10" title="AddMember(StringRefType, StringRefType, Allocator&amp;)">AddMember(StringRefType, StringRefType, Allocator&amp;)</a>. All other pointer types would implicitly convert to <code>bool</code>, use an explicit cast instead, if needed. </dd>&#10;<dd>&#10;Amortized Constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a8d1040c479d89edb261db86400ebe603" name="a8d1040c479d89edb261db86400ebe603"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a8d1040c479d89edb261db86400ebe603">◆&nbsp;</a></span>Begin() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Begin </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Element iterator. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a07d947971c59c9ce884b3c5205c9238f" name="a07d947971c59c9ce884b3c5205c9238f"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a07d947971c59c9ce884b3c5205c9238f">◆&nbsp;</a></span>Begin() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Begin </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Constant element iterator. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="aa56b69bac5423622eff6998ce4802106" name="aa56b69bac5423622eff6998ce4802106"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#aa56b69bac5423622eff6998ce4802106">◆&nbsp;</a></span>Clear()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">void <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Clear </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove all elements in the array. </p>&#10;<p>This function do not deallocate memory in the array, i.e. the capacity is unchanged. </p><dl class="section note"><dt>Note</dt><dd>Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a4c6ab73508f0a1f8d03bf24925908428" name="a4c6ab73508f0a1f8d03bf24925908428"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a4c6ab73508f0a1f8d03bf24925908428">◆&nbsp;</a></span>CopyFrom()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename SourceAllocator&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::CopyFrom </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Deep-copy assignment from <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a>. </p>&#10;<p>Assigns a <b>copy</b> of the <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> to the current <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> object </p><dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">SourceAllocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> type of <code>rhs</code> </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">rhs</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> to copy from (read-only) </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> to use for copying </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;&#10;</div>&#10;</div>&#10;<a id="aaf58b9337ccc0cdf16aa9634c4645109" name="aaf58b9337ccc0cdf16aa9634c4645109"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#aaf58b9337ccc0cdf16aa9634c4645109">◆&nbsp;</a></span>End() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::End </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p><em>Past-the-end</em> element iterator </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="abdd6a3b703a03aada4c186a2365698e7" name="abdd6a3b703a03aada4c186a2365698e7"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#abdd6a3b703a03aada4c186a2365698e7">◆&nbsp;</a></span>End() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::End </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Constant <em>past-the-end</em> element iterator. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a916f443e02f9379d8fbde49a4d440f61" name="a916f443e02f9379d8fbde49a4d440f61"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a916f443e02f9379d8fbde49a4d440f61">◆&nbsp;</a></span>Erase() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Erase </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a></td>          <td class="paramname"><span class="paramname"><em>first</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a></td>          <td class="paramname"><span class="paramname"><em>last</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove elements in the range [first, last) of the array. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">first</td><td>iterator to the first element to remove </td></tr>&#10;    <tr><td class="paramname">last</td><td>iterator following the last element to remove </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true &amp;&amp; <a class="el" href="#a8d1040c479d89edb261db86400ebe603" title="Begin()">Begin()</a> &lt;= <code>first</code> &lt;= <code>last</code> &lt;= <a class="el" href="#aaf58b9337ccc0cdf16aa9634c4645109" title="End()">End()</a> </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">Iterator</a> following the last removed element. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a68ba73eeda7b9429ca05267065d3cc99" name="a68ba73eeda7b9429ca05267065d3cc99"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a68ba73eeda7b9429ca05267065d3cc99">◆&nbsp;</a></span>Erase() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Erase </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a89a6588121742fc3f154b10b8f15f45f">ConstValueIterator</a></td>          <td class="paramname"><span class="paramname"><em>pos</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove an element of array by iterator. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">pos</td><td>iterator to the element to remove </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true &amp;&amp; <a class="el" href="#a8d1040c479d89edb261db86400ebe603" title="Begin()">Begin()</a> &lt;= <code>pos</code> &lt; <a class="el" href="#aaf58b9337ccc0cdf16aa9634c4645109" title="End()">End()</a> </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">Iterator</a> following the removed element. If the iterator pos refers to the last element, the <a class="el" href="#aaf58b9337ccc0cdf16aa9634c4645109" title="Past-the-end element iterator">End()</a> iterator is returned. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ac51a3b3046aaa12aa1d88ac876a28cec" name="ac51a3b3046aaa12aa1d88ac876a28cec"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ac51a3b3046aaa12aa1d88ac876a28cec">◆&nbsp;</a></span>EraseMember() <span class="overload">[1/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::EraseMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *</td>          <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Erase a member in object by its name. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td>Name of member to be removed. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>Whether the member existed. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a121e40b5944be337189eb63b98b7e6ce" name="a121e40b5944be337189eb63b98b7e6ce"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a121e40b5944be337189eb63b98b7e6ce">◆&nbsp;</a></span>EraseMember() <span class="overload">[2/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::EraseMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a></td>          <td class="paramname"><span class="paramname"><em>first</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a></td>          <td class="paramname"><span class="paramname"><em>last</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove members in the range [first, last) from an object. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">first</td><td>iterator to the first member to remove </td></tr>&#10;    <tr><td class="paramname">last</td><td>iterator following the last member to remove </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true &amp;&amp; <a class="el" href="#a93f0f317f397c36a24a0f3c32648623a" title="MemberBegin()">MemberBegin()</a> &lt;= <code>first</code> &lt;= <code>last</code> &lt;= <a class="el" href="#adb109ae9f12615efadf9277cb5e9c4ee" title="MemberEnd()">MemberEnd()</a> </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">Iterator</a> following the last removed element. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>This function preserves the relative order of the remaining object members. </dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a163e60b101e5ae534597c050a6eba511" name="a163e60b101e5ae534597c050a6eba511"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a163e60b101e5ae534597c050a6eba511">◆&nbsp;</a></span>EraseMember() <span class="overload">[3/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::EraseMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a></td>          <td class="paramname"><span class="paramname"><em>pos</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove a member from an object by iterator. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">pos</td><td>iterator to the member to remove </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true &amp;&amp; <a class="el" href="#a93f0f317f397c36a24a0f3c32648623a" title="MemberBegin()">MemberBegin()</a> &lt;= <code>pos</code> &lt; <a class="el" href="#adb109ae9f12615efadf9277cb5e9c4ee" title="MemberEnd()">MemberEnd()</a> </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">Iterator</a> following the removed element. If the iterator <code>pos</code> refers to the last element, the <a class="el" href="#adb109ae9f12615efadf9277cb5e9c4ee" title="MemberEnd()">MemberEnd()</a> iterator is returned. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>This function preserves the relative order of the remaining object members. If you do not need this, use the more efficient <a class="el" href="#af91573ce61d798f0bc5dc88b00742697" title="RemoveMember(MemberIterator)">RemoveMember(MemberIterator)</a>. </dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ad22fdeac87ec6c370dd43075d3586811" name="ad22fdeac87ec6c370dd43075d3586811"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ad22fdeac87ec6c370dd43075d3586811">◆&nbsp;</a></span>FindMember() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::FindMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *</td>          <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Find member by name. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td><a class="el" href="#a0220ddebe2f023fa75b643a50e90e559" title="Name-value pair in an object.">Member</a> name to be searched. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">Iterator</a> to member, if it exists. Otherwise returns <a class="el" href="#adb109ae9f12615efadf9277cb5e9c4ee" title="MemberEnd()">MemberEnd()</a>.</dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>Earlier versions of Rapidjson returned a <code>NULL</code> pointer, in case the requested member doesn't exist. For consistency with e.g. <code>std::map</code>, this has been changed to <a class="el" href="#adb109ae9f12615efadf9277cb5e9c4ee" title="Past-the-end member iterator">MemberEnd()</a> now. </dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a8d75bf0c6c0fa4f8d340a4236e98539b" name="a8d75bf0c6c0fa4f8d340a4236e98539b"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a8d75bf0c6c0fa4f8d340a4236e98539b">◆&nbsp;</a></span>FindMember() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename SourceAllocator&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::FindMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Find member by name. </p>&#10;<p>This version is faster because it does not need a StrLen(). It can also handle string with null character. </p><dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td><a class="el" href="#a0220ddebe2f023fa75b643a50e90e559" title="Name-value pair in an object.">Member</a> name to be searched. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/032-classrapidjson_1_1_generic_member_iterator/">Iterator</a> to member, if it exists. Otherwise returns <a class="el" href="#adb109ae9f12615efadf9277cb5e9c4ee" title="MemberEnd()">MemberEnd()</a>.</dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>Earlier versions of Rapidjson returned a <code>NULL</code> pointer, in case the requested member doesn't exist. For consistency with e.g. <code>std::map</code>, this has been changed to <a class="el" href="#adb109ae9f12615efadf9277cb5e9c4ee" title="Past-the-end member iterator">MemberEnd()</a> now. </dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="aa27d086d265f0ce447b15b15f0a2ed6e" name="aa27d086d265f0ce447b15b15f0a2ed6e"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#aa27d086d265f0ce447b15b15f0a2ed6e">◆&nbsp;</a></span>GetDouble()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">double <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::GetDouble </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Get the value as double type. </p>&#10;<dl class="section note"><dt>Note</dt><dd>If the value is 64-bit integer type, it may lose precision. Use <code>IsLosslessDouble()</code> to check whether the converison is lossless. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a573712808dd5d8814c103cf55fd761b4" name="a573712808dd5d8814c103cf55fd761b4"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a573712808dd5d8814c103cf55fd761b4">◆&nbsp;</a></span>GetFloat()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">float <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::GetFloat </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Get the value as float type. </p>&#10;<dl class="section note"><dt>Note</dt><dd>If the value is 64-bit integer type, it may lose precision. Use <code>IsLosslessFloat()</code> to check whether the converison is lossless. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a18599e0d1a7e70a11b35f5e219390fea" name="a18599e0d1a7e70a11b35f5e219390fea"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a18599e0d1a7e70a11b35f5e219390fea">◆&nbsp;</a></span>GetStringLength()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::GetStringLength </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Get the length of string. </p>&#10;<p>Since rapidjson permits "\\u0000" in the json string, strlen(v.GetString()) may not equal to v.GetStringLength(). </p>&#10;&#10;</div>&#10;</div>&#10;<a id="aa78e2eb30c6b918826eccf03f04f166b" name="aa78e2eb30c6b918826eccf03f04f166b"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#aa78e2eb30c6b918826eccf03f04f166b">◆&nbsp;</a></span>HasMember() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::HasMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *</td>          <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Check whether a member exists in the object. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td><a class="el" href="#a0220ddebe2f023fa75b643a50e90e559" title="Name-value pair in an object.">Member</a> name to be searched. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd>Whether a member with that name exists. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>It is better to use <a class="el" href="#ad22fdeac87ec6c370dd43075d3586811" title="Find member by name.">FindMember()</a> directly if you need the obtain the value as well. </dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a794129b8adffb97d123306a0c0ccaf71" name="a794129b8adffb97d123306a0c0ccaf71"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a794129b8adffb97d123306a0c0ccaf71">◆&nbsp;</a></span>HasMember() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename SourceAllocator&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::HasMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Check whether a member exists in the object with <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/" title="Represents a JSON value. Use Value for UTF8 encoding and default allocator.">GenericValue</a> name. </p>&#10;<p>This version is faster because it does not need a StrLen(). It can also handle string with null character. </p><dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td><a class="el" href="#a0220ddebe2f023fa75b643a50e90e559" title="Name-value pair in an object.">Member</a> name to be searched. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd>Whether a member with that name exists. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>It is better to use <a class="el" href="#ad22fdeac87ec6c370dd43075d3586811" title="Find member by name.">FindMember()</a> directly if you need the obtain the value as well. </dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="acc6b1791cca8daef18521918136264b7" name="acc6b1791cca8daef18521918136264b7"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#acc6b1791cca8daef18521918136264b7">◆&nbsp;</a></span>Is()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Is </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Templated version for checking whether this value is type T. </p>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">T</td><td>Either <code>bool</code>, <code>int</code>, <code>unsigned</code>, <code>int64_t</code>, <code>uint64_t</code>, <code>double</code>, <code>float</code>, <code>const</code> <code>char*</code>, <code>std::basic_string&lt;Ch&gt;</code> </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a93f0f317f397c36a24a0f3c32648623a" name="a93f0f317f397c36a24a0f3c32648623a"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a93f0f317f397c36a24a0f3c32648623a">◆&nbsp;</a></span>MemberBegin() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::MemberBegin </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p><a class="el" href="#a0220ddebe2f023fa75b643a50e90e559" title="Name-value pair in an object.">Member</a> iterator. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ae89a77887aa3eb1f1f913727cbff6786" name="ae89a77887aa3eb1f1f913727cbff6786"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ae89a77887aa3eb1f1f913727cbff6786">◆&nbsp;</a></span>MemberBegin() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::MemberBegin </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Const member iterator. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="adb109ae9f12615efadf9277cb5e9c4ee" name="adb109ae9f12615efadf9277cb5e9c4ee"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#adb109ae9f12615efadf9277cb5e9c4ee">◆&nbsp;</a></span>MemberEnd() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::MemberEnd </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p><em>Past-the-end</em> member iterator </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a34ee3d75a7aa308043fb34b0743bfe7c" name="a34ee3d75a7aa308043fb34b0743bfe7c"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a34ee3d75a7aa308043fb34b0743bfe7c">◆&nbsp;</a></span>MemberEnd() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::MemberEnd </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Const <em>past-the-end</em> member iterator. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a3bf1279b8ebb55e0f172af2c3889d867" name="a3bf1279b8ebb55e0f172af2c3889d867"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a3bf1279b8ebb55e0f172af2c3889d867">◆&nbsp;</a></span>Move()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Move </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Prepare <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> for move semantics. </p>&#10;<dl class="section return"><dt>Returns</dt><dd>*this </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ad5bf5afd53f21f370f917041b3be4bfc" name="ad5bf5afd53f21f370f917041b3be4bfc"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ad5bf5afd53f21f370f917041b3be4bfc">◆&nbsp;</a></span>operator!=() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename SourceAllocator&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator!= </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Not-equal-to operator. </p>&#10;<dl class="section return"><dt>Returns</dt><dd>!(*this == rhs) </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ae6fe0576ff0336f6e2b09fe32f3ff809" name="ae6fe0576ff0336f6e2b09fe32f3ff809"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ae6fe0576ff0336f6e2b09fe32f3ff809">◆&nbsp;</a></span>operator!=() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator!= </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const T &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Not-equal-to operator with arbitrary types. </p>&#10;<dl class="section return"><dt>Returns</dt><dd>!(*this == rhs) </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a37fa30cf48e0a0724a8e7323fc2fef41" name="a37fa30cf48e0a0724a8e7323fc2fef41"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a37fa30cf48e0a0724a8e7323fc2fef41">◆&nbsp;</a></span>operator=() <span class="overload">[1/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator= </td>&#10;          <td>(</td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Assignment with move semantics. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">rhs</td><td>Source of the assignment. It will become a null value after assignment. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a07e7550d44739a59555bc78f67716657" name="a07e7550d44739a59555bc78f67716657"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a07e7550d44739a59555bc78f67716657">◆&nbsp;</a></span>operator=() <span class="overload">[2/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator= </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a></td>          <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Assignment of constant string reference (no copy). </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">str</td><td>Constant string reference to be assigned </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd>This overload is needed to avoid clashes with the generic primitive type assignment overload below. </dd></dl>&#10;<dl class="section see"><dt>See also</dt><dd><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/180-structrapidjson_1_1_generic_string_ref/" title="Reference to a constant string (not taking a copy).">GenericStringRef</a>, <a class="el" href="#a46acbe61b2da32eb737be45db8678ac6" title="Assignment with primitive types.">operator=(T)</a> </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a46acbe61b2da32eb737be45db8678ac6" name="a46acbe61b2da32eb737be45db8678ac6"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a46acbe61b2da32eb737be45db8678ac6">◆&nbsp;</a></span>operator=() <span class="overload">[3/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator= </td>&#10;          <td>(</td>&#10;          <td class="paramtype">T</td>          <td class="paramname"><span class="paramname"><em>value</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Assignment with primitive types. </p>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">T</td><td>Either <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4" title="Type">Type</a>, <code>int</code>, <code>unsigned</code>, <code>int64_t</code>, <code>uint64_t</code> </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">value</td><td>The value to be assigned.</td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd>The source type <code>T</code> explicitly disallows all pointer types, especially (<code>const</code>) <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4" title="Ch">Ch</a>*. This helps avoiding implicitly referencing character strings with insufficient lifetime, use <a class="el" href="#a05c10cd07363b30ae2285f49f4373a79" title="SetString(const Ch*, Allocator&amp;)">SetString(const Ch*, Allocator&amp;)</a> (for copying) or <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa6b9fd9f6aa49405a574c362ba9af6b5" title="StringRef()">StringRef()</a> (to explicitly mark the pointer as constant) instead. All other pointer types would implicitly convert to <code>bool</code>, use <a class="el" href="#a5f0b4d005817342f962f12620fc74d5a" title="SetBool()">SetBool()</a> instead. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ab4e5285102bb686f39bca2855a17a181" name="ab4e5285102bb686f39bca2855a17a181"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ab4e5285102bb686f39bca2855a17a181">◆&nbsp;</a></span>operator==() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename SourceAllocator&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator== </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Equal-to operator. </p>&#10;<dl class="section note"><dt>Note</dt><dd>If an object contains duplicated named member, comparing equality with any object is always <code>false</code>. </dd>&#10;<dd>&#10;Linear time complexity (number of all values in the subtree and total lengths of all strings). </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="aaddbbbb35cd783f209f889cf8dea9570" name="aaddbbbb35cd783f209f889cf8dea9570"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#aaddbbbb35cd783f209f889cf8dea9570">◆&nbsp;</a></span>operator==() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator== </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const T &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span></td><td>)</td>&#10;          <td> const</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Equal-to operator with primitive types. </p>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">T</td><td>Either <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4" title="Type">Type</a>, <code>int</code>, <code>unsigned</code>, <code>int64_t</code>, <code>uint64_t</code>, <code>double</code>, <code>true</code>, <code>false</code> </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a8a327edab2ae9678985a3c85166a1bb0" name="a8a327edab2ae9678985a3c85166a1bb0"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a8a327edab2ae9678985a3c85166a1bb0">◆&nbsp;</a></span>operator[]() <span class="overload">[1/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename SourceAllocator&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator[] </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, SourceAllocator &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Get a value from an object associated with the name. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">SourceAllocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> of the <code>name</code> value</td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd>Compared to <a class="el" href="#ac6671822744fb5991be58c48822c8fdf" title="operator[](T*)">operator[](T*)</a>, this version is faster because it does not need a StrLen(). And it can also handle strings with embedded null characters.</dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ac99cb43a20f12d9af0cbb7961cf98c94" name="ac99cb43a20f12d9af0cbb7961cf98c94"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ac99cb43a20f12d9af0cbb7961cf98c94">◆&nbsp;</a></span>operator[]() <span class="overload">[2/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator[] </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a></td>          <td class="paramname"><span class="paramname"><em>index</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Get an element from array by index. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true </dd></dl>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">index</td><td>Zero-based index of element. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section see"><dt>See also</dt><dd><a class="el" href="#ac6671822744fb5991be58c48822c8fdf" title="Get a value from an object associated with the name.">operator[](T*)</a> </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ac6671822744fb5991be58c48822c8fdf" name="ac6671822744fb5991be58c48822c8fdf"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ac6671822744fb5991be58c48822c8fdf">◆&nbsp;</a></span>operator[]() <span class="overload">[3/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::operator[] </td>&#10;          <td>(</td>&#10;          <td class="paramtype">T *</td>          <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Get a value from an object associated with the name. </p>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsObject() == true </dd></dl>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">T</td><td>Either <code><a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4" title="Character type derived from Encoding.">Ch</a></code> or <code>const</code> <code><a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4" title="Character type derived from Encoding.">Ch</a></code> (template used for disambiguation with <a class="el" href="#ac99cb43a20f12d9af0cbb7961cf98c94" title="operator[](SizeType)">operator[](SizeType)</a>) </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd>In version 0.1x, if the member is not found, this function returns a null value. This makes issue 7. Since 0.2, if the name is not correct, it will assert. If user is unsure whether a member exists, user should use <a class="el" href="#aa78e2eb30c6b918826eccf03f04f166b" title="Check whether a member exists in the object.">HasMember()</a> first. A better approach is to use <a class="el" href="#ad22fdeac87ec6c370dd43075d3586811" title="Find member by name.">FindMember()</a>. </dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a5044e62f7b610f58c108883331aa5bd5" name="a5044e62f7b610f58c108883331aa5bd5"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a5044e62f7b610f58c108883331aa5bd5">◆&nbsp;</a></span>PopBack()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::PopBack </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove the last element in the array. </p>&#10;<dl class="section note"><dt>Note</dt><dd>Constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a3ebbb94635930975177cd5240006901b" name="a3ebbb94635930975177cd5240006901b"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a3ebbb94635930975177cd5240006901b">◆&nbsp;</a></span>PushBack() <span class="overload">[1/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::PushBack </td>&#10;          <td>(</td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Append a <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/" title="Represents a JSON value. Use Value for UTF8 encoding and default allocator.">GenericValue</a> at the end of the array. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">value</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> to be appended. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. It must be the same one as used before. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true </dd></dl>&#10;<dl class="section post"><dt>Postcondition</dt><dd>value.IsNull() == true </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>The ownership of <code>value</code> will be transferred to this array on success. </dd>&#10;<dd>&#10;If the number of elements to be appended is known, calls <a class="el" href="#a4f098ac0ea6de159549e749fd9c6f7dc" title="Request the array to have enough capacity to store elements.">Reserve()</a> once first may be more efficient. </dd>&#10;<dd>&#10;Amortized constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a8a5d91d63e193c0b501b1c184d55f5f6" name="a8a5d91d63e193c0b501b1c184d55f5f6"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a8a5d91d63e193c0b501b1c184d55f5f6">◆&nbsp;</a></span>PushBack() <span class="overload">[2/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::PushBack </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a></td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Append a constant string reference at the end of the array. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">value</td><td>Constant string reference to be appended. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. It must be the same one used previously. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>If the number of elements to be appended is known, calls <a class="el" href="#a4f098ac0ea6de159549e749fd9c6f7dc" title="Request the array to have enough capacity to store elements.">Reserve()</a> once first may be more efficient. </dd>&#10;<dd>&#10;Amortized constant time complexity. </dd></dl>&#10;<dl class="section see"><dt>See also</dt><dd><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/180-structrapidjson_1_1_generic_string_ref/" title="Reference to a constant string (not taking a copy).">GenericStringRef</a> </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a5bbe43b9d7729974681a285d6a978b48" name="a5bbe43b9d7729974681a285d6a978b48"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a5bbe43b9d7729974681a285d6a978b48">◆&nbsp;</a></span>PushBack() <span class="overload">[3/3]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::PushBack </td>&#10;          <td>(</td>&#10;          <td class="paramtype">T</td>          <td class="paramname"><span class="paramname"><em>value</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Append a primitive value at the end of the array. </p>&#10;<dl class="tparams"><dt>Template Parameters</dt><dd>&#10;  <table class="tparams">&#10;    <tbody><tr><td class="paramname">T</td><td>Either <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#ae79a4751c1c460ff0de5ecc07874f3e4" title="Type">Type</a>, <code>int</code>, <code>unsigned</code>, <code>int64_t</code>, <code>uint64_t</code> </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">value</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#aa65fc9fb381b2cbc54f98673eadd6505" title="GenericValue with UTF8 encoding.">Value</a> of primitive type T to be appended. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. It must be the same one as used before. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section pre"><dt>Precondition</dt><dd>IsArray() == true </dd></dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>If the number of elements to be appended is known, calls <a class="el" href="#a4f098ac0ea6de159549e749fd9c6f7dc" title="Request the array to have enough capacity to store elements.">Reserve()</a> once first may be more efficient.</dd>&#10;<dd>&#10;The source type <code>T</code> explicitly disallows all pointer types, especially (<code>const</code>) <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4" title="Ch">Ch</a>*. This helps avoiding implicitly referencing character strings with insufficient lifetime, use <a class="el" href="#a3ebbb94635930975177cd5240006901b" title="PushBack(GenericValue&amp;, Allocator&amp;)">PushBack(GenericValue&amp;, Allocator&amp;)</a> or <a class="el" href="#a8a5d91d63e193c0b501b1c184d55f5f6" title="PushBack(StringRefType, Allocator&amp;)">PushBack(StringRefType, Allocator&amp;)</a>. All other pointer types would implicitly convert to <code>bool</code>, use an explicit cast instead, if needed. </dd>&#10;<dd>&#10;Amortized constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a68d8d197ae1fb83d4dc202f9812af4cc" name="a68d8d197ae1fb83d4dc202f9812af4cc"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a68d8d197ae1fb83d4dc202f9812af4cc">◆&nbsp;</a></span>RemoveAllMembers()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">void <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::RemoveAllMembers </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove all members in the object. </p>&#10;<p>This function do not deallocate memory in the object, i.e. the capacity is unchanged. </p><dl class="section note"><dt>Note</dt><dd>Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="aa60074f72a6d1651828a104b0c6387b1" name="aa60074f72a6d1651828a104b0c6387b1"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#aa60074f72a6d1651828a104b0c6387b1">◆&nbsp;</a></span>RemoveMember() <span class="overload">[1/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::RemoveMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *</td>          <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove a member in object by its name. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">name</td><td>Name of member to be removed. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>Whether the member existed. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>This function may reorder the object members. Use <a class="el" href="#a163e60b101e5ae534597c050a6eba511" title="EraseMember(ConstMemberIterator)">EraseMember(ConstMemberIterator)</a> if you need to preserve the relative order of the remaining members. </dd>&#10;<dd>&#10;Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="af91573ce61d798f0bc5dc88b00742697" name="af91573ce61d798f0bc5dc88b00742697"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#af91573ce61d798f0bc5dc88b00742697">◆&nbsp;</a></span>RemoveMember() <span class="overload">[2/2]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::RemoveMember </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a></td>          <td class="paramname"><span class="paramname"><em>m</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Remove a member in object by iterator. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">m</td><td>member iterator (obtained by <a class="el" href="#ad22fdeac87ec6c370dd43075d3586811" title="Find member by name.">FindMember()</a> or <a class="el" href="#a93f0f317f397c36a24a0f3c32648623a" title="Member iterator.">MemberBegin()</a>). </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>the new iterator after removal. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>This function may reorder the object members. Use <a class="el" href="#a163e60b101e5ae534597c050a6eba511" title="EraseMember(ConstMemberIterator)">EraseMember(ConstMemberIterator)</a> if you need to preserve the relative order of the remaining members. </dd>&#10;<dd>&#10;Constant time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a4f098ac0ea6de159549e749fd9c6f7dc" name="a4f098ac0ea6de159549e749fd9c6f7dc"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a4f098ac0ea6de159549e749fd9c6f7dc">◆&nbsp;</a></span>Reserve()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Reserve </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a></td>          <td class="paramname"><span class="paramname"><em>newCapacity</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Request the array to have enough capacity to store elements. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">newCapacity</td><td>The capacity that the array at least need to have. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for reallocating memory. It must be the same one as used before. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section note"><dt>Note</dt><dd>Linear time complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a4fc5ba0ad8723ded9194d1f0576d9895" name="a4fc5ba0ad8723ded9194d1f0576d9895"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a4fc5ba0ad8723ded9194d1f0576d9895">◆&nbsp;</a></span>SetArray()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::SetArray </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Set this value as an empty array. </p>&#10;<dl class="section post"><dt>Postcondition</dt><dd>IsArray == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a5f0b4d005817342f962f12620fc74d5a" name="a5f0b4d005817342f962f12620fc74d5a"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a5f0b4d005817342f962f12620fc74d5a">◆&nbsp;</a></span>SetBool()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::SetBool </td>&#10;          <td>(</td>&#10;          <td class="paramtype">bool</td>          <td class="paramname"><span class="paramname"><em>b</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;<dl class="section post"><dt>Postcondition</dt><dd>IsBool() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a1731f969985e557519d21d33c6f409d2" name="a1731f969985e557519d21d33c6f409d2"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a1731f969985e557519d21d33c6f409d2">◆&nbsp;</a></span>SetObject()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::SetObject </td>&#10;          <td>(</td>&#10;          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Set this value as an empty object. </p>&#10;<dl class="section post"><dt>Postcondition</dt><dd>IsObject() == true </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a05c10cd07363b30ae2285f49f4373a79" name="a05c10cd07363b30ae2285f49f4373a79"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a05c10cd07363b30ae2285f49f4373a79">◆&nbsp;</a></span>SetString() <span class="overload">[1/4]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::SetString </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *</td>          <td class="paramname"><span class="paramname"><em>s</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Set this value as a string by copying from source string. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">s</td><td>source string. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for allocating copied buffer. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section post"><dt>Postcondition</dt><dd>IsString() == true &amp;&amp; GetString() != s &amp;&amp; strcmp(GetString(),s) == 0 &amp;&amp; <a class="el" href="#a18599e0d1a7e70a11b35f5e219390fea" title="Get the length of string.">GetStringLength()</a> == length </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ab5da0559dab299f6790d223190870e5a" name="ab5da0559dab299f6790d223190870e5a"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ab5da0559dab299f6790d223190870e5a">◆&nbsp;</a></span>SetString() <span class="overload">[2/4]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::SetString </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *</td>          <td class="paramname"><span class="paramname"><em>s</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a></td>          <td class="paramname"><span class="paramname"><em>length</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Set this value as a string without copying source string. </p>&#10;<p>This version has better performance with supplied length, and also support string containing null character. </p><dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">s</td><td>source string pointer. </td></tr>&#10;    <tr><td class="paramname">length</td><td>The length of source string, excluding the trailing null terminator. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section post"><dt>Postcondition</dt><dd>IsString() == true &amp;&amp; GetString() == s &amp;&amp; <a class="el" href="#a18599e0d1a7e70a11b35f5e219390fea" title="Get the length of string.">GetStringLength()</a> == length </dd></dl>&#10;<dl class="section see"><dt>See also</dt><dd><a class="el" href="#a2678c808449447f9aa753552367be2bd" title="Set this value as a string without copying source string.">SetString(StringRefType)</a> </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="ad5fab3ea017700637b099262960d8f02" name="ad5fab3ea017700637b099262960d8f02"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ad5fab3ea017700637b099262960d8f02">◆&nbsp;</a></span>SetString() <span class="overload">[3/4]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::SetString </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const <a class="el" href="#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> *</td>          <td class="paramname"><span class="paramname"><em>s</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/148-namespacerapidjson/#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a></td>          <td class="paramname"><span class="paramname"><em>length</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype"><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>allocator</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Set this value as a string by copying from source string. </p>&#10;<p>This version has better performance with supplied length, and also support string containing null character. </p><dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">s</td><td>source string. </td></tr>&#10;    <tr><td class="paramname">length</td><td>The length of source string, excluding the trailing null terminator. </td></tr>&#10;    <tr><td class="paramname">allocator</td><td><a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for allocating copied buffer. Commonly use <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/030-classrapidjson_1_1_generic_document/#a05742a309dd6e7abcce61523decd44f0" title="Get the allocator of this document.">GenericDocument::GetAllocator()</a>. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section post"><dt>Postcondition</dt><dd>IsString() == true &amp;&amp; GetString() != s &amp;&amp; strcmp(GetString(),s) == 0 &amp;&amp; <a class="el" href="#a18599e0d1a7e70a11b35f5e219390fea" title="Get the length of string.">GetStringLength()</a> == length </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a2678c808449447f9aa753552367be2bd" name="a2678c808449447f9aa753552367be2bd"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a2678c808449447f9aa753552367be2bd">◆&nbsp;</a></span>SetString() <span class="overload">[4/4]</span></h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::SetString </td>&#10;          <td>(</td>&#10;          <td class="paramtype"><a class="el" href="#a559eb9cea54364a35518b02f6d74f379">StringRefType</a></td>          <td class="paramname"><span class="paramname"><em>s</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Set this value as a string without copying source string. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">s</td><td>source string reference </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section return"><dt>Returns</dt><dd>The value itself for fluent API. </dd></dl>&#10;<dl class="section post"><dt>Postcondition</dt><dd>IsString() == true &amp;&amp; GetString() == s &amp;&amp; <a class="el" href="#a18599e0d1a7e70a11b35f5e219390fea" title="Get the length of string.">GetStringLength()</a> == s.length </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a60fc0ca2a1aa00cec7c6984749296b82" name="a60fc0ca2a1aa00cec7c6984749296b82"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a60fc0ca2a1aa00cec7c6984749296b82">◆&nbsp;</a></span>Swap()</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">GenericValue &amp; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/046-classrapidjson_1_1_generic_value/">rapidjson::GenericValue</a>&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt;::Swap </td>&#10;          <td>(</td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>&#10;          <td></td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Exchange the contents of this value with those of other. </p>&#10;<dl class="params"><dt>Parameters</dt><dd>&#10;  <table class="params">&#10;    <tbody><tr><td class="paramname">other</td><td>Another value. </td></tr>&#10;  </tbody></table>&#10;  </dd>&#10;</dl>&#10;<dl class="section note"><dt>Note</dt><dd>Constant complexity. </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a name="doc-related-members" id="doc-related-members"></a><h2 id="header-doc-related-members" class="groupheader">Friends And Related Symbol Documentation</h2>&#10;<a id="ae08898bef949f217f0e5d28e19f05992" name="ae08898bef949f217f0e5d28e19f05992"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#ae08898bef949f217f0e5d28e19f05992">◆&nbsp;</a></span>operator!=</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool operator!= </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const T &amp;</td>          <td class="paramname"><span class="paramname"><em>lhs</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel friend">friend</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Not-Equal-to operator with arbitrary types (symmetric version). </p>&#10;<dl class="section return"><dt>Returns</dt><dd>!(rhs == lhs) </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="aaa465706fda1e1ef4513ce877e0b4b69" name="aaa465706fda1e1ef4513ce877e0b4b69"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#aaa465706fda1e1ef4513ce877e0b4b69">◆&nbsp;</a></span>operator==</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<div class="memtemplate">&#10;template&lt;typename T&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">bool operator== </td>&#10;          <td>(</td>&#10;          <td class="paramtype">const T &amp;</td>          <td class="paramname"><span class="paramname"><em>lhs</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype">const GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>rhs</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel friend">friend</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>Equal-to operator with arbitrary types (symmetric version). </p>&#10;<dl class="section return"><dt>Returns</dt><dd>(rhs == lhs) </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<a id="a58ecce8a34fc029039b8079de246bdaa" name="a58ecce8a34fc029039b8079de246bdaa"></a>&#10;<h2 class="memtitle"><span class="permalink"><a href="#a58ecce8a34fc029039b8079de246bdaa">◆&nbsp;</a></span>swap</h2>&#10;&#10;<div class="memitem">&#10;<div class="memproto">&#10;<div class="memtemplate">&#10;template&lt;typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, typename <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> = MemoryPoolAllocator&lt;&gt;&gt; </div>&#10;<table class="mlabels">&#10;  <tbody><tr>&#10;  <td class="mlabels-left">&#10;      <table class="memname">&#10;        <tbody><tr>&#10;          <td class="memname">void swap </td>&#10;          <td>(</td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>a</em></span>, </td>&#10;        </tr>&#10;        <tr>&#10;          <td class="paramkey"></td>&#10;          <td></td>&#10;          <td class="paramtype">GenericValue&lt; <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/022-classrapidjson_1_1_encoding/">Encoding</a>, <a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/005-classrapidjson_1_1_allocator/">Allocator</a> &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>b</em></span>&nbsp;)</td>&#10;        </tr>&#10;      </tbody></table>&#10;  </td>&#10;  <td class="mlabels-right">&#10;<span class="mlabels"><span class="mlabel friend">friend</span></span>  </td>&#10;  </tr>&#10;</tbody></table>&#10;</div><div class="memdoc">&#10;&#10;<p>free-standing swap function helper </p>&#10;<p>Helper function to enable support for common swap implementation pattern based on <code>std::swap:</code> </p><div class="fragment"><div class="line"><span class="keywordtype">void</span> <a class="code hl_friend" href="#a58ecce8a34fc029039b8079de246bdaa">swap</a>(MyClass&amp; a, MyClass&amp; b) {</div>&#10;<div class="line">    <span class="keyword">using </span>std::swap;</div>&#10;<div class="line">    <a class="code hl_friend" href="#a58ecce8a34fc029039b8079de246bdaa">swap</a>(a.value, b.value);</div>&#10;<div class="line">    <span class="comment">// ...</span></div>&#10;<div class="line">}</div>&#10;<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a58ecce8a34fc029039b8079de246bdaa"><div class="ttname"><a href="#a58ecce8a34fc029039b8079de246bdaa">rapidjson::GenericValue::swap</a></div><div class="ttdeci">friend void swap(GenericValue &amp;a, GenericValue &amp;b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition</b> document.h:837</div></div>&#10;</div><!-- fragment --> <dl class="section see"><dt>See also</dt><dd><a class="el" href="#a60fc0ca2a1aa00cec7c6984749296b82" title="Exchange the contents of this value with those of other.">Swap()</a> </dd></dl>&#10;&#10;</div>&#10;</div>&#10;<hr>The documentation for this class was generated from the following file:<ul>&#10;<li>include/rapidjson/<a class="el" href="/docs/rapidjson/v1-1-0/en/02-reference/066-document_8h_source/">document.h</a></li>&#10;</ul>&#10;</div>
