diff options
author | miloyip <miloyip@gmail.com> | 2021-04-08 05:40:00 +0300 |
---|---|---|
committer | miloyip <miloyip@gmail.com> | 2021-04-08 05:40:00 +0300 |
commit | 210f49c28added2edf1a96e1dabb4b9e4c423f98 (patch) | |
tree | a345d66b0d6880e6deff6cb0ac172edca0fc16cf | |
parent | 9641af6e382c35d7a91c38356668b0588e6187e7 (diff) |
Automatic doxygen build
324 files changed, 9378 insertions, 8444 deletions
diff --git a/allocators_8h_source.html b/allocators_8h_source.html index 4fe8bfe3..1285f406 100644 --- a/allocators_8h_source.html +++ b/allocators_8h_source.html @@ -106,697 +106,711 @@ $(document).ready(function(){initNavTree('allocators_8h_source.html','');}); <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#define RAPIDJSON_ALLOCATORS_H_</span></div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span>  </div> <div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#include "<a class="code" href="rapidjson_8h.html">rapidjson.h</a>"</span></div> -<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  </div> -<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <memory></span></div> -<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>  </div> -<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <type_traits></span></div> -<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  </div> -<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> RAPIDJSON_NAMESPACE_BEGIN</div> -<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment"></span> </div> -<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment"></span><span class="comment">// Allocator</span></div> -<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment"></span> </div> -<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment">/*! \class rapidjson::Allocator</span></div> -<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment"> \brief Concept for allocating, resizing and freeing memory block.</span></div> -<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment"> </span></div> -<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment"> Note that Malloc() and Realloc() are non-static but Free() is static.</span></div> -<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment"> </span></div> -<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment"> So if an allocator need to support Free(), it needs to put its pointer in </span></div> -<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment"> the header of memory block.</span></div> -<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment"></span> </div> -<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">\code</span></div> -<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">concept Allocator {</span></div> -<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment"> static const bool kNeedFree; //!< Whether this allocator needs to call Free().</span></div> -<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment"></span> </div> -<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment"> // Allocate a memory block.</span></div> -<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment"> // \param size of the memory block in bytes.</span></div> -<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment"> // \returns pointer to the memory block.</span></div> -<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> void* Malloc(size_t size);</span></div> -<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"></span> </div> -<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment"> // Resize a memory block.</span></div> -<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"> // \param originalPtr The pointer to current memory block. Null pointer is permitted.</span></div> -<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"> // \param originalSize The current size in bytes. (Design issue: since some allocator may not book-keep this, explicitly pass to it can save memory.)</span></div> -<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"> // \param newSize the new size in bytes.</span></div> -<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> void* Realloc(void* originalPtr, size_t originalSize, size_t newSize);</span></div> -<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"></span> </div> -<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment"> // Free a memory block.</span></div> -<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"> // \param pointer to the memory block. Null pointer is permitted.</span></div> -<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment"> static void Free(void *ptr);</span></div> -<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment">};</span></div> -<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">\endcode</span></div> -<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  </div> -<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment"></span> </div> -<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">/*! \def RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</span></div> -<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment"> \brief User-defined kDefaultChunkCapacity definition.</span></div> -<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment"></span> </div> -<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment"> User can define this as any \c size that is a power of 2.</span></div> -<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  </div> -<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor">#ifndef RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</span></div> -<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5"> 70</a></span> <span class="preprocessor">#define RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY (64 * 1024)</span></div> -<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  </div> -<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment"></span> </div> -<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment"></span><span class="comment">// CrtAllocator</span></div> -<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment"></span> </div> -<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="comment">//! C-runtime library allocator.</span></div> -<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment"></span><span class="comment">/*! This class is just wrapper for standard C library memory routines.</span></div> -<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment"> \note implements Allocator concept</span></div> -<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_crt_allocator.html"> 81</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a> {</div> -<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = <span class="keyword">true</span>;</div> -<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordtype">void</span>* Malloc(<span class="keywordtype">size_t</span> size) { </div> -<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordflow">if</span> (size) <span class="comment">// behavior of malloc(0) is implementation defined.</span></div> -<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keywordflow">return</span> <a class="code" href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27">RAPIDJSON_MALLOC</a>(size);</div> -<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keywordflow">return</span> NULL; <span class="comment">// standardize to returning NULL.</span></div> -<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  }</div> -<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordtype">void</span>* Realloc(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize) {</div> -<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  (void)originalSize;</div> -<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keywordflow">if</span> (newSize == 0) {</div> -<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <a class="code" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a>(originalPtr);</div> -<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  }</div> -<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="keywordflow">return</span> <a class="code" href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67">RAPIDJSON_REALLOC</a>(originalPtr, newSize);</div> -<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  }</div> -<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> Free(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT { <a class="code" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a>(ptr); }</div> -<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  </div> -<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a>&) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  }</div> -<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a>&) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  }</div> -<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> };</div> -<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="comment"></span> </div> -<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment"></span><span class="comment">// MemoryPoolAllocator</span></div> -<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="comment"></span> </div> -<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">//! Default memory allocator used by the parser and DOM.</span></div> -<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment"></span><span class="comment">/*! This allocator allocate memory blocks from pre-allocated memory chunks. </span></div> -<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment"></span> </div> -<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment"> It does not free memory blocks. And Realloc() only allocate new memory.</span></div> -<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment"></span> </div> -<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="comment"> The memory chunks are allocated by BaseAllocator, which is CrtAllocator by default.</span></div> -<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="comment"></span> </div> -<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment"> User may also supply a buffer as the first chunk.</span></div> -<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment"></span> </div> -<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment"> If the user-buffer is full then additional chunks are allocated by BaseAllocator.</span></div> -<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment"></span> </div> -<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment"> The user-buffer is not deallocated by this allocator.</span></div> -<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment"></span> </div> -<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment"> \tparam BaseAllocator the allocator type for allocating memory chunks. Default is CrtAllocator.</span></div> -<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment"> \note implements Allocator concept</span></div> -<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keyword">template</span> <<span class="keyword">typename</span> BaseAllocator = CrtAllocator></div> -<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html"> 128</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a> {<span class="comment"></span></div> -<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="comment"> //! Chunk header for perpending to each chunk.</span></div> -<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment"></span><span class="comment"> /*! Chunks are stored as a singly linked list.</span></div> -<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keyword">struct </span>ChunkHeader {</div> -<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordtype">size_t</span> capacity; <span class="comment">//!< Capacity of the chunk in bytes (excluding the header itself).</span></div> -<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="comment"></span> <span class="keywordtype">size_t</span> size; <span class="comment">//!< Current size of allocated memory in bytes.</span></div> -<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment"></span> ChunkHeader *next; <span class="comment">//!< Next chunk in the linked list.</span></div> -<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment"></span> };</div> -<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  </div> -<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="keyword">struct </span>SharedData {</div> -<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  ChunkHeader *chunkHead; <span class="comment">//!< Head of the chunk linked-list. Only the head chunk serves allocation.</span></div> -<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="comment"></span> BaseAllocator* ownBaseAllocator; <span class="comment">//!< base allocator created by this object.</span></div> -<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="comment"></span> <span class="keywordtype">size_t</span> refcount;</div> -<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <span class="keywordtype">bool</span> ownBuffer;</div> -<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  };</div> -<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  </div> -<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> SIZEOF_SHARED_DATA = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(SharedData));</div> -<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> SIZEOF_CHUNK_HEADER = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(ChunkHeader));</div> -<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  </div> -<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keyword">static</span> <span class="keyword">inline</span> ChunkHeader *GetChunkHead(SharedData *shared)</div> -<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  {</div> -<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="keywordflow">return</span> reinterpret_cast<ChunkHeader*>(reinterpret_cast<uint8_t*>(shared) + SIZEOF_SHARED_DATA);</div> -<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  }</div> -<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keyword">static</span> <span class="keyword">inline</span> uint8_t *GetChunkBuffer(SharedData *shared)</div> -<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  {</div> -<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="keywordflow">return</span> reinterpret_cast<uint8_t*>(shared->chunkHead) + SIZEOF_CHUNK_HEADER;</div> -<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  }</div> -<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  </div> -<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> kDefaultChunkCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5">RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</a>; <span class="comment">//!< Default chunk capacity.</span></div> -<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="comment"></span> </div> -<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29"> 160</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = <span class="keyword">false</span>; <span class="comment">//!< Tell users that no need to call Free() with this allocator. (concept Allocator)</span></div> -<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="comment"> //! Constructor with chunkSize.</span></div> -<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="comment"></span><span class="comment"> /*! \param chunkSize The size of memory chunk. The default is kDefaultChunkSize.</span></div> -<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment"> \param baseAllocator The allocator for allocating memory chunks.</span></div> -<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keyword">explicit</span></div> -<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4"> 167</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">MemoryPoolAllocator</a>(<span class="keywordtype">size_t</span> chunkSize = kDefaultChunkCapacity, BaseAllocator* baseAllocator = 0) : </div> -<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  chunk_capacity_(chunkSize),</div> -<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  baseAllocator_(baseAllocator ? baseAllocator : <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(BaseAllocator)()),</div> -<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  shared_(static_cast<SharedData*>(baseAllocator_ ? baseAllocator_->Malloc(SIZEOF_SHARED_DATA + SIZEOF_CHUNK_HEADER) : 0))</div> -<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  {</div> -<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(baseAllocator_ != 0);</div> -<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(shared_ != 0);</div> -<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <span class="keywordflow">if</span> (baseAllocator) {</div> -<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  shared_->ownBaseAllocator = 0;</div> -<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  }</div> -<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  <span class="keywordflow">else</span> {</div> -<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  shared_->ownBaseAllocator = baseAllocator_;</div> -<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  }</div> -<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  shared_->chunkHead = GetChunkHead(shared_);</div> -<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  shared_->chunkHead->capacity = 0;</div> -<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  shared_->chunkHead->size = 0;</div> -<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  shared_->chunkHead->next = 0;</div> -<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  shared_->ownBuffer = <span class="keyword">true</span>;</div> -<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  shared_->refcount = 1;</div> -<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  }</div> -<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment"></span> </div> -<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment"> //! Constructor with user-supplied buffer.</span></div> -<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"></span><span class="comment"> /*! The user buffer will be used firstly. When it is full, memory pool allocates new chunk with chunk size.</span></div> -<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment"></span> </div> -<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment"> The user buffer will not be deallocated when this allocator is destructed.</span></div> +<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include "internal/meta.h"</span></div> +<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>  </div> +<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <memory></span></div> +<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  </div> +<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <type_traits></span></div> +<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  </div> +<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> RAPIDJSON_NAMESPACE_BEGIN</div> +<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment"></span> </div> +<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment"></span><span class="comment">// Allocator</span></div> +<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment"></span> </div> +<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment">/*! \class rapidjson::Allocator</span></div> +<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment"> \brief Concept for allocating, resizing and freeing memory block.</span></div> +<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment"> </span></div> +<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment"> Note that Malloc() and Realloc() are non-static but Free() is static.</span></div> +<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment"> </span></div> +<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment"> So if an allocator need to support Free(), it needs to put its pointer in </span></div> +<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment"> the header of memory block.</span></div> +<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment"></span> </div> +<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">\code</span></div> +<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">concept Allocator {</span></div> +<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment"> static const bool kNeedFree; //!< Whether this allocator needs to call Free().</span></div> +<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment"></span> </div> +<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment"> // Allocate a memory block.</span></div> +<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment"> // \param size of the memory block in bytes.</span></div> +<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> // \returns pointer to the memory block.</span></div> +<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"> void* Malloc(size_t size);</span></div> +<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment"></span> </div> +<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"> // Resize a memory block.</span></div> +<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"> // \param originalPtr The pointer to current memory block. Null pointer is permitted.</span></div> +<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"> // \param originalSize The current size in bytes. (Design issue: since some allocator may not book-keep this, explicitly pass to it can save memory.)</span></div> +<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> // \param newSize the new size in bytes.</span></div> +<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"> void* Realloc(void* originalPtr, size_t originalSize, size_t newSize);</span></div> +<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment"></span> </div> +<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"> // Free a memory block.</span></div> +<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment"> // \param pointer to the memory block. Null pointer is permitted.</span></div> +<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment"> static void Free(void *ptr);</span></div> +<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">};</span></div> +<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">\endcode</span></div> +<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  </div> +<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment"></span> </div> +<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment">/*! \def RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</span></div> +<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment"> \brief User-defined kDefaultChunkCapacity definition.</span></div> +<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment"></span> </div> +<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment"> User can define this as any \c size that is a power of 2.</span></div> +<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  </div> +<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor">#ifndef RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</span></div> +<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5"> 71</a></span> <span class="preprocessor">#define RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY (64 * 1024)</span></div> +<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  </div> +<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment"></span> </div> +<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment"></span><span class="comment">// CrtAllocator</span></div> +<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="comment"></span> </div> +<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">//! C-runtime library allocator.</span></div> +<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment"></span><span class="comment">/*! This class is just wrapper for standard C library memory routines.</span></div> +<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment"> \note implements Allocator concept</span></div> +<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_crt_allocator.html"> 82</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a> {</div> +<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = <span class="keyword">true</span>;</div> +<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordtype">void</span>* Malloc(<span class="keywordtype">size_t</span> size) { </div> +<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keywordflow">if</span> (size) <span class="comment">// behavior of malloc(0) is implementation defined.</span></div> +<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordflow">return</span> <a class="code" href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27">RAPIDJSON_MALLOC</a>(size);</div> +<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">return</span> NULL; <span class="comment">// standardize to returning NULL.</span></div> +<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  }</div> +<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keywordtype">void</span>* Realloc(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize) {</div> +<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  (void)originalSize;</div> +<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">if</span> (newSize == 0) {</div> +<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <a class="code" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a>(originalPtr);</div> +<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  }</div> +<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordflow">return</span> <a class="code" href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67">RAPIDJSON_REALLOC</a>(originalPtr, newSize);</div> +<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  }</div> +<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> Free(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT { <a class="code" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a>(ptr); }</div> +<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  </div> +<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a>&) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  }</div> +<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a>&) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  }</div> +<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> };</div> +<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment"></span> </div> +<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="comment"></span><span class="comment">// MemoryPoolAllocator</span></div> +<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment"></span> </div> +<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment">//! Default memory allocator used by the parser and DOM.</span></div> +<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment"></span><span class="comment">/*! This allocator allocate memory blocks from pre-allocated memory chunks. </span></div> +<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment"></span> </div> +<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment"> It does not free memory blocks. And Realloc() only allocate new memory.</span></div> +<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="comment"></span> </div> +<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="comment"> The memory chunks are allocated by BaseAllocator, which is CrtAllocator by default.</span></div> +<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment"></span> </div> +<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment"> User may also supply a buffer as the first chunk.</span></div> +<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment"></span> </div> +<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment"> If the user-buffer is full then additional chunks are allocated by BaseAllocator.</span></div> +<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment"></span> </div> +<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment"> The user-buffer is not deallocated by this allocator.</span></div> +<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment"></span> </div> +<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment"> \tparam BaseAllocator the allocator type for allocating memory chunks. Default is CrtAllocator.</span></div> +<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="comment"> \note implements Allocator concept</span></div> +<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keyword">template</span> <<span class="keyword">typename</span> BaseAllocator = CrtAllocator></div> +<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html"> 129</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a> {<span class="comment"></span></div> +<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment"> //! Chunk header for perpending to each chunk.</span></div> +<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="comment"></span><span class="comment"> /*! Chunks are stored as a singly linked list.</span></div> +<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keyword">struct </span>ChunkHeader {</div> +<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="keywordtype">size_t</span> capacity; <span class="comment">//!< Capacity of the chunk in bytes (excluding the header itself).</span></div> +<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment"></span> <span class="keywordtype">size_t</span> size; <span class="comment">//!< Current size of allocated memory in bytes.</span></div> +<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment"></span> ChunkHeader *next; <span class="comment">//!< Next chunk in the linked list.</span></div> +<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="comment"></span> };</div> +<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  </div> +<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keyword">struct </span>SharedData {</div> +<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  ChunkHeader *chunkHead; <span class="comment">//!< Head of the chunk linked-list. Only the head chunk serves allocation.</span></div> +<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="comment"></span> BaseAllocator* ownBaseAllocator; <span class="comment">//!< base allocator created by this object.</span></div> +<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="comment"></span> <span class="keywordtype">size_t</span> refcount;</div> +<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keywordtype">bool</span> ownBuffer;</div> +<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  };</div> +<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  </div> +<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> SIZEOF_SHARED_DATA = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(SharedData));</div> +<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> SIZEOF_CHUNK_HEADER = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(ChunkHeader));</div> +<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  </div> +<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keyword">static</span> <span class="keyword">inline</span> ChunkHeader *GetChunkHead(SharedData *shared)</div> +<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  {</div> +<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  <span class="keywordflow">return</span> reinterpret_cast<ChunkHeader*>(reinterpret_cast<uint8_t*>(shared) + SIZEOF_SHARED_DATA);</div> +<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  }</div> +<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keyword">static</span> <span class="keyword">inline</span> uint8_t *GetChunkBuffer(SharedData *shared)</div> +<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  {</div> +<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordflow">return</span> reinterpret_cast<uint8_t*>(shared->chunkHead) + SIZEOF_CHUNK_HEADER;</div> +<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  }</div> +<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  </div> +<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> kDefaultChunkCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5">RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</a>; <span class="comment">//!< Default chunk capacity.</span></div> +<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="comment"></span> </div> +<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29"> 161</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = <span class="keyword">false</span>; <span class="comment">//!< Tell users that no need to call Free() with this allocator. (concept Allocator)</span></div> +<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496"> 162</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kRefCounted = <span class="keyword">true</span>; <span class="comment">//!< Tell users that this allocator is reference counted on copy</span></div> +<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment"> //! Constructor with chunkSize.</span></div> +<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment"></span><span class="comment"> /*! \param chunkSize The size of memory chunk. The default is kDefaultChunkSize.</span></div> +<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment"> \param baseAllocator The allocator for allocating memory chunks.</span></div> +<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <span class="keyword">explicit</span></div> +<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4"> 169</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">MemoryPoolAllocator</a>(<span class="keywordtype">size_t</span> chunkSize = kDefaultChunkCapacity, BaseAllocator* baseAllocator = 0) : </div> +<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  chunk_capacity_(chunkSize),</div> +<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  baseAllocator_(baseAllocator ? baseAllocator : <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(BaseAllocator)()),</div> +<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  shared_(static_cast<SharedData*>(baseAllocator_ ? baseAllocator_->Malloc(SIZEOF_SHARED_DATA + SIZEOF_CHUNK_HEADER) : 0))</div> +<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  {</div> +<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(baseAllocator_ != 0);</div> +<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(shared_ != 0);</div> +<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  <span class="keywordflow">if</span> (baseAllocator) {</div> +<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  shared_->ownBaseAllocator = 0;</div> +<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  }</div> +<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  shared_->ownBaseAllocator = baseAllocator_;</div> +<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  }</div> +<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  shared_->chunkHead = GetChunkHead(shared_);</div> +<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  shared_->chunkHead->capacity = 0;</div> +<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  shared_->chunkHead->size = 0;</div> +<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  shared_->chunkHead->next = 0;</div> +<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  shared_->ownBuffer = <span class="keyword">true</span>;</div> +<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  shared_->refcount = 1;</div> +<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  }</div> +<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"></span> </div> +<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment"> //! Constructor with user-supplied buffer.</span></div> +<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment"></span><span class="comment"> /*! The user buffer will be used firstly. When it is full, memory pool allocates new chunk with chunk size.</span></div> <div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment"></span> </div> -<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"> \param buffer User supplied buffer.</span></div> -<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment"> \param size Size of the buffer in bytes. It must at least larger than sizeof(ChunkHeader).</span></div> -<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment"> \param chunkSize The size of memory chunk. The default is kDefaultChunkSize.</span></div> -<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment"> \param baseAllocator The allocator for allocating memory chunks.</span></div> -<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7"> 198</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">MemoryPoolAllocator</a>(<span class="keywordtype">void</span> *buffer, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> chunkSize = kDefaultChunkCapacity, BaseAllocator* baseAllocator = 0) :</div> -<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  chunk_capacity_(chunkSize),</div> -<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  baseAllocator_(baseAllocator),</div> -<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  shared_(static_cast<SharedData*>(AlignBuffer(buffer, size)))</div> -<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  {</div> -<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(size >= SIZEOF_SHARED_DATA + SIZEOF_CHUNK_HEADER);</div> -<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  shared_->chunkHead = GetChunkHead(shared_);</div> -<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  shared_->chunkHead->capacity = size - SIZEOF_SHARED_DATA - SIZEOF_CHUNK_HEADER;</div> -<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  shared_->chunkHead->size = 0;</div> -<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  shared_->chunkHead->next = 0;</div> -<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  shared_->ownBaseAllocator = 0;</div> -<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  shared_->ownBuffer = <span class="keyword">false</span>;</div> -<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  shared_->refcount = 1;</div> -<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  }</div> -<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  </div> -<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  chunk_capacity_(rhs.chunk_capacity_),</div> -<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  baseAllocator_(rhs.baseAllocator_),</div> -<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  shared_(rhs.shared_)</div> -<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  {</div> -<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  ++shared_->refcount;</div> -<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  }</div> -<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  MemoryPoolAllocator& operator=(<span class="keyword">const</span> MemoryPoolAllocator& rhs) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  {</div> -<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> -<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  ++rhs.shared_->refcount;</div> -<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  this->~MemoryPoolAllocator();</div> -<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  baseAllocator_ = rhs.baseAllocator_;</div> -<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  chunk_capacity_ = rhs.chunk_capacity_;</div> -<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  shared_ = rhs.shared_;</div> -<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  }</div> -<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  </div> -<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  MemoryPoolAllocator(MemoryPoolAllocator&& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  chunk_capacity_(rhs.chunk_capacity_),</div> -<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  baseAllocator_(rhs.baseAllocator_),</div> -<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  shared_(rhs.shared_)</div> -<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  {</div> -<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> -<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  rhs.shared_ = 0;</div> -<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  }</div> -<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  MemoryPoolAllocator& operator=(MemoryPoolAllocator&& rhs) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  {</div> -<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> -<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  this->~MemoryPoolAllocator();</div> -<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  baseAllocator_ = rhs.baseAllocator_;</div> -<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  chunk_capacity_ = rhs.chunk_capacity_;</div> -<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  shared_ = rhs.shared_;</div> -<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  rhs.shared_ = 0;</div> -<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  }</div> -<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="comment"></span> </div> -<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="comment"> //! Destructor.</span></div> -<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="comment"></span><span class="comment"> /*! This deallocates all memory chunks, excluding the user-supplied buffer.</span></div> -<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700"> 256</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">~MemoryPoolAllocator</a>() RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  <span class="keywordflow">if</span> (!shared_) {</div> -<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  <span class="comment">// do nothing if moved</span></div> -<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  <span class="keywordflow">return</span>;</div> -<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  }</div> -<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">if</span> (shared_->refcount > 1) {</div> -<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  --shared_->refcount;</div> -<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <span class="keywordflow">return</span>;</div> -<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  }</div> -<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  Clear();</div> -<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  BaseAllocator *a = shared_->ownBaseAllocator;</div> -<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <span class="keywordflow">if</span> (shared_->ownBuffer) {</div> -<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  baseAllocator_->Free(shared_);</div> -<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  }</div> -<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  <a class="code" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a>(a);</div> -<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  }</div> -<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="comment"></span> </div> -<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="comment"> //! Deallocates all memory chunks, excluding the first/user one.</span></div> -<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840"> 274</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">Clear</a>() RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <span class="keywordflow">for</span> (;;) {</div> -<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  ChunkHeader* c = shared_->chunkHead;</div> -<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keywordflow">if</span> (!c->next) {</div> -<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  }</div> -<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  shared_->chunkHead = c->next;</div> -<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  baseAllocator_->Free(c);</div> -<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  }</div> -<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  shared_->chunkHead->size = 0;</div> -<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  }</div> -<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment"></span> </div> -<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="comment"> //! Computes the total capacity of allocated memory chunks.</span></div> -<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment"></span><span class="comment"> /*! \return total capacity in bytes.</span></div> -<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00290"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd"> 290</a></span>  <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd">Capacity</a>() const RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  <span class="keywordtype">size_t</span> capacity = 0;</div> -<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <span class="keywordflow">for</span> (ChunkHeader* c = shared_->chunkHead; c != 0; c = c->next)</div> -<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  capacity += c->capacity;</div> -<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">return</span> capacity;</div> -<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  }</div> -<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="comment"></span> </div> -<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment"> //! Computes the memory blocks allocated.</span></div> -<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment"></span><span class="comment"> /*! \return total used bytes.</span></div> -<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265"> 301</a></span>  <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">Size</a>() const RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  <span class="keywordtype">size_t</span> size = 0;</div> -<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <span class="keywordflow">for</span> (ChunkHeader* c = shared_->chunkHead; c != 0; c = c->next)</div> -<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  size += c->size;</div> -<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  <span class="keywordflow">return</span> size;</div> -<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  }</div> -<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="comment"></span> </div> -<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment"> //! Whether the allocator is shared.</span></div> -<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment"></span><span class="comment"> /*! \return true or false.</span></div> -<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc"> 312</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">Shared</a>() const RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  <span class="keywordflow">return</span> shared_->refcount > 1;</div> -<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  }</div> -<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="comment"></span> </div> -<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment"> //! Allocates a memory block. (concept Allocator)</span></div> -<div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344"> 318</a></span> <span class="comment"></span> <span class="keywordtype">void</span>* <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">Malloc</a>(<span class="keywordtype">size_t</span> size) {</div> -<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  <span class="keywordflow">if</span> (!size)</div> -<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  </div> -<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  size = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(size);</div> -<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(shared_->chunkHead->size + size > shared_->chunkHead->capacity))</div> -<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  <span class="keywordflow">if</span> (!AddChunk(chunk_capacity_ > size ? chunk_capacity_ : size))</div> -<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  </div> -<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  <span class="keywordtype">void</span> *buffer = GetChunkBuffer(shared_) + shared_->chunkHead->size;</div> -<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>  shared_->chunkHead->size += size;</div> -<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  <span class="keywordflow">return</span> buffer;</div> -<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  }</div> -<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment"></span> </div> -<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="comment"> //! Resizes a memory block (concept Allocator)</span></div> -<div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d"> 334</a></span> <span class="comment"></span> <span class="keywordtype">void</span>* <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">Realloc</a>(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize) {</div> -<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  <span class="keywordflow">if</span> (originalPtr == 0)</div> -<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  <span class="keywordflow">return</span> Malloc(newSize);</div> -<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  </div> -<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  <span class="keywordflow">if</span> (newSize == 0)</div> -<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  </div> -<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  originalSize = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(originalSize);</div> -<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  newSize = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(newSize);</div> -<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  </div> -<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  <span class="comment">// Do not shrink if new size is smaller than original</span></div> -<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  <span class="keywordflow">if</span> (originalSize >= newSize)</div> -<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="keywordflow">return</span> originalPtr;</div> -<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  </div> -<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <span class="comment">// Simply expand it if it is the last allocation and there is sufficient space</span></div> -<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  <span class="keywordflow">if</span> (originalPtr == GetChunkBuffer(shared_) + shared_->chunkHead->size - originalSize) {</div> -<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <span class="keywordtype">size_t</span> increment = static_cast<size_t>(newSize - originalSize);</div> -<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  <span class="keywordflow">if</span> (shared_->chunkHead->size + increment <= shared_->chunkHead->capacity) {</div> -<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  shared_->chunkHead->size += increment;</div> -<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <span class="keywordflow">return</span> originalPtr;</div> -<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  }</div> -<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  }</div> -<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  </div> -<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  <span class="comment">// Realloc process: allocate and copy memory, do not free original buffer.</span></div> -<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keywordflow">if</span> (<span class="keywordtype">void</span>* newBuffer = Malloc(newSize)) {</div> -<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  <span class="keywordflow">if</span> (originalSize)</div> -<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  std::memcpy(newBuffer, originalPtr, originalSize);</div> -<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordflow">return</span> newBuffer;</div> -<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  }</div> -<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  }</div> -<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="comment"></span> </div> -<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="comment"> //! Frees a memory block (concept Allocator)</span></div> -<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec"> 369</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">Free</a>(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT { (void)ptr; } <span class="comment">// Do nothing</span></div> -<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"></span> </div> -<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="comment"> //! Compare (equality) with another MemoryPoolAllocator</span></div> -<div class="line"><a name="l00372"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724"> 372</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">operator==</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> -<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <span class="keywordflow">return</span> shared_ == rhs.shared_;</div> -<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  }<span class="comment"></span></div> -<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="comment"> //! Compare (inequality) with another MemoryPoolAllocator</span></div> -<div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99"> 378</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  <span class="keywordflow">return</span> !operator==(rhs);</div> -<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  }</div> -<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  </div> -<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="keyword">private</span>:<span class="comment"></span></div> -<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="comment"> //! Creates a new chunk.</span></div> -<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="comment"></span><span class="comment"> /*! \param capacity Capacity of the chunk in bytes.</span></div> -<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment"> \return true if success.</span></div> -<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <span class="keywordtype">bool</span> AddChunk(<span class="keywordtype">size_t</span> capacity) {</div> -<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>  <span class="keywordflow">if</span> (!baseAllocator_)</div> -<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  shared_->ownBaseAllocator = baseAllocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(BaseAllocator)();</div> -<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  <span class="keywordflow">if</span> (ChunkHeader* chunk = static_cast<ChunkHeader*>(baseAllocator_->Malloc(SIZEOF_CHUNK_HEADER + capacity))) {</div> -<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  chunk->capacity = capacity;</div> -<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  chunk->size = 0;</div> -<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  chunk->next = shared_->chunkHead;</div> -<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  shared_->chunkHead = chunk;</div> -<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  }</div> -<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  }</div> -<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  </div> -<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>* AlignBuffer(<span class="keywordtype">void</span>* buf, <span class="keywordtype">size_t</span> &size)</div> -<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  {</div> -<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(buf != 0);</div> -<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  <span class="keyword">const</span> uintptr_t mask = <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) - 1;</div> -<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <span class="keyword">const</span> uintptr_t ubuf = reinterpret_cast<uintptr_t>(buf);</div> -<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(ubuf & mask)) {</div> -<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  <span class="keyword">const</span> uintptr_t abuf = (ubuf + mask) & ~mask;</div> -<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(size >= abuf - ubuf);</div> -<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  buf = reinterpret_cast<void*>(abuf);</div> -<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  size -= abuf - ubuf;</div> -<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  }</div> -<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  <span class="keywordflow">return</span> buf;</div> -<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  }</div> -<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  </div> -<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <span class="keywordtype">size_t</span> chunk_capacity_; <span class="comment">//!< The minimum capacity of chunk when they are allocated.</span></div> -<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="comment"></span> BaseAllocator* baseAllocator_; <span class="comment">//!< base allocator for allocating memory chunks.</span></div> -<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="comment"></span> SharedData *shared_; <span class="comment">//!< The shared data of the allocator</span></div> -<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="comment"></span>};</div> -<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  </div> -<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  </div> -<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> -<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="keyword">inline</span> T* Realloc(A& a, T* old_p, <span class="keywordtype">size_t</span> old_n, <span class="keywordtype">size_t</span> new_n)</div> -<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> {</div> -<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(old_n <= SIZE_MAX / <span class="keyword">sizeof</span>(T) && new_n <= SIZE_MAX / <span class="keyword">sizeof</span>(T));</div> -<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <span class="keywordflow">return</span> static_cast<T*>(a.Realloc(old_p, old_n * <span class="keyword">sizeof</span>(T), new_n * <span class="keyword">sizeof</span>(T)));</div> -<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> }</div> -<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  </div> -<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> -<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="keyword">inline</span> T *Malloc(A& a, <span class="keywordtype">size_t</span> n = 1)</div> -<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> {</div> -<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  <span class="keywordflow">return</span> Realloc<T, A>(a, NULL, 0, n);</div> -<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> }</div> -<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  </div> -<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> -<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> Free(A& a, T *p, <span class="keywordtype">size_t</span> n = 1)</div> -<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> {</div> -<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  static_cast<void>(Realloc<T, A>(a, p, n, 0));</div> +<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"> The user buffer will not be deallocated when this allocator is destructed.</span></div> +<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment"></span> </div> +<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment"> \param buffer User supplied buffer.</span></div> +<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment"> \param size Size of the buffer in bytes. It must at least larger than sizeof(ChunkHeader).</span></div> +<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment"> \param chunkSize The size of memory chunk. The default is kDefaultChunkSize.</span></div> +<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="comment"> \param baseAllocator The allocator for allocating memory chunks.</span></div> +<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7"> 200</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">MemoryPoolAllocator</a>(<span class="keywordtype">void</span> *buffer, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> chunkSize = kDefaultChunkCapacity, BaseAllocator* baseAllocator = 0) :</div> +<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  chunk_capacity_(chunkSize),</div> +<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  baseAllocator_(baseAllocator),</div> +<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  shared_(static_cast<SharedData*>(AlignBuffer(buffer, size)))</div> +<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  {</div> +<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(size >= SIZEOF_SHARED_DATA + SIZEOF_CHUNK_HEADER);</div> +<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  shared_->chunkHead = GetChunkHead(shared_);</div> +<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  shared_->chunkHead->capacity = size - SIZEOF_SHARED_DATA - SIZEOF_CHUNK_HEADER;</div> +<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  shared_->chunkHead->size = 0;</div> +<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  shared_->chunkHead->next = 0;</div> +<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  shared_->ownBaseAllocator = 0;</div> +<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  shared_->ownBuffer = <span class="keyword">false</span>;</div> +<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  shared_->refcount = 1;</div> +<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  }</div> +<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  </div> +<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  chunk_capacity_(rhs.chunk_capacity_),</div> +<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  baseAllocator_(rhs.baseAllocator_),</div> +<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  shared_(rhs.shared_)</div> +<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  {</div> +<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  ++shared_->refcount;</div> +<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  }</div> +<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  MemoryPoolAllocator& operator=(<span class="keyword">const</span> MemoryPoolAllocator& rhs) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  {</div> +<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> +<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  ++rhs.shared_->refcount;</div> +<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  this->~MemoryPoolAllocator();</div> +<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  baseAllocator_ = rhs.baseAllocator_;</div> +<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  chunk_capacity_ = rhs.chunk_capacity_;</div> +<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  shared_ = rhs.shared_;</div> +<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  }</div> +<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  </div> +<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  MemoryPoolAllocator(MemoryPoolAllocator&& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  chunk_capacity_(rhs.chunk_capacity_),</div> +<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  baseAllocator_(rhs.baseAllocator_),</div> +<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  shared_(rhs.shared_)</div> +<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  {</div> +<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> +<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  rhs.shared_ = 0;</div> +<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  }</div> +<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  MemoryPoolAllocator& operator=(MemoryPoolAllocator&& rhs) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  {</div> +<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> +<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  this->~MemoryPoolAllocator();</div> +<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  baseAllocator_ = rhs.baseAllocator_;</div> +<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  chunk_capacity_ = rhs.chunk_capacity_;</div> +<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  shared_ = rhs.shared_;</div> +<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  rhs.shared_ = 0;</div> +<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  }</div> +<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="comment"></span> </div> +<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="comment"> //! Destructor.</span></div> +<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="comment"></span><span class="comment"> /*! This deallocates all memory chunks, excluding the user-supplied buffer.</span></div> +<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700"> 258</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">~MemoryPoolAllocator</a>() RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  <span class="keywordflow">if</span> (!shared_) {</div> +<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  <span class="comment">// do nothing if moved</span></div> +<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">return</span>;</div> +<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  }</div> +<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <span class="keywordflow">if</span> (shared_->refcount > 1) {</div> +<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  --shared_->refcount;</div> +<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <span class="keywordflow">return</span>;</div> +<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  }</div> +<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  Clear();</div> +<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  BaseAllocator *a = shared_->ownBaseAllocator;</div> +<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  <span class="keywordflow">if</span> (shared_->ownBuffer) {</div> +<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  baseAllocator_->Free(shared_);</div> +<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  }</div> +<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  <a class="code" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a>(a);</div> +<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  }</div> +<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="comment"></span> </div> +<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="comment"> //! Deallocates all memory chunks, excluding the first/user one.</span></div> +<div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840"> 276</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">Clear</a>() RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keywordflow">for</span> (;;) {</div> +<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  ChunkHeader* c = shared_->chunkHead;</div> +<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  <span class="keywordflow">if</span> (!c->next) {</div> +<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  }</div> +<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  shared_->chunkHead = c->next;</div> +<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  baseAllocator_->Free(c);</div> +<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  }</div> +<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  shared_->chunkHead->size = 0;</div> +<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  }</div> +<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment"></span> </div> +<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="comment"> //! Computes the total capacity of allocated memory chunks.</span></div> +<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="comment"></span><span class="comment"> /*! \return total capacity in bytes.</span></div> +<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd"> 292</a></span>  <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd">Capacity</a>() const RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <span class="keywordtype">size_t</span> capacity = 0;</div> +<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">for</span> (ChunkHeader* c = shared_->chunkHead; c != 0; c = c->next)</div> +<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  capacity += c->capacity;</div> +<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  <span class="keywordflow">return</span> capacity;</div> +<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  }</div> +<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment"></span> </div> +<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment"> //! Computes the memory blocks allocated.</span></div> +<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="comment"></span><span class="comment"> /*! \return total used bytes.</span></div> +<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265"> 303</a></span>  <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">Size</a>() const RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="keywordtype">size_t</span> size = 0;</div> +<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  <span class="keywordflow">for</span> (ChunkHeader* c = shared_->chunkHead; c != 0; c = c->next)</div> +<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  size += c->size;</div> +<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  <span class="keywordflow">return</span> size;</div> +<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  }</div> +<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment"></span> </div> +<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment"> //! Whether the allocator is shared.</span></div> +<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment"></span><span class="comment"> /*! \return true or false.</span></div> +<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc"> 314</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">Shared</a>() const RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  <span class="keywordflow">return</span> shared_->refcount > 1;</div> +<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  }</div> +<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="comment"></span> </div> +<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="comment"> //! Allocates a memory block. (concept Allocator)</span></div> +<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344"> 320</a></span> <span class="comment"></span> <span class="keywordtype">void</span>* <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">Malloc</a>(<span class="keywordtype">size_t</span> size) {</div> +<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <span class="keywordflow">if</span> (!size)</div> +<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  </div> +<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  size = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(size);</div> +<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(shared_->chunkHead->size + size > shared_->chunkHead->capacity))</div> +<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  <span class="keywordflow">if</span> (!AddChunk(chunk_capacity_ > size ? chunk_capacity_ : size))</div> +<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>  </div> +<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  <span class="keywordtype">void</span> *buffer = GetChunkBuffer(shared_) + shared_->chunkHead->size;</div> +<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  shared_->chunkHead->size += size;</div> +<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  <span class="keywordflow">return</span> buffer;</div> +<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  }</div> +<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="comment"></span> </div> +<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="comment"> //! Resizes a memory block (concept Allocator)</span></div> +<div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d"> 336</a></span> <span class="comment"></span> <span class="keywordtype">void</span>* <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">Realloc</a>(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize) {</div> +<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  <span class="keywordflow">if</span> (originalPtr == 0)</div> +<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  <span class="keywordflow">return</span> Malloc(newSize);</div> +<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  </div> +<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  <span class="keywordflow">if</span> (newSize == 0)</div> +<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  </div> +<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  originalSize = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(originalSize);</div> +<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  newSize = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(newSize);</div> +<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  </div> +<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="comment">// Do not shrink if new size is smaller than original</span></div> +<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  <span class="keywordflow">if</span> (originalSize >= newSize)</div> +<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <span class="keywordflow">return</span> originalPtr;</div> +<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  </div> +<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <span class="comment">// Simply expand it if it is the last allocation and there is sufficient space</span></div> +<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  <span class="keywordflow">if</span> (originalPtr == GetChunkBuffer(shared_) + shared_->chunkHead->size - originalSize) {</div> +<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  <span class="keywordtype">size_t</span> increment = static_cast<size_t>(newSize - originalSize);</div> +<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <span class="keywordflow">if</span> (shared_->chunkHead->size + increment <= shared_->chunkHead->capacity) {</div> +<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  shared_->chunkHead->size += increment;</div> +<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <span class="keywordflow">return</span> originalPtr;</div> +<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  }</div> +<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  }</div> +<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  </div> +<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  <span class="comment">// Realloc process: allocate and copy memory, do not free original buffer.</span></div> +<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <span class="keywordflow">if</span> (<span class="keywordtype">void</span>* newBuffer = Malloc(newSize)) {</div> +<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordflow">if</span> (originalSize)</div> +<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  std::memcpy(newBuffer, originalPtr, originalSize);</div> +<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <span class="keywordflow">return</span> newBuffer;</div> +<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  }</div> +<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  }</div> +<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="comment"></span> </div> +<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"> //! Frees a memory block (concept Allocator)</span></div> +<div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec"> 371</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">Free</a>(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT { (void)ptr; } <span class="comment">// Do nothing</span></div> +<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="comment"></span> </div> +<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="comment"> //! Compare (equality) with another MemoryPoolAllocator</span></div> +<div class="line"><a name="l00374"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724"> 374</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">operator==</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> +<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  <span class="keywordflow">return</span> shared_ == rhs.shared_;</div> +<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  }<span class="comment"></span></div> +<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="comment"> //! Compare (inequality) with another MemoryPoolAllocator</span></div> +<div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99"> 380</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  <span class="keywordflow">return</span> !operator==(rhs);</div> +<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  }</div> +<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  </div> +<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="keyword">private</span>:<span class="comment"></span></div> +<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment"> //! Creates a new chunk.</span></div> +<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"></span><span class="comment"> /*! \param capacity Capacity of the chunk in bytes.</span></div> +<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment"> \return true if success.</span></div> +<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  <span class="keywordtype">bool</span> AddChunk(<span class="keywordtype">size_t</span> capacity) {</div> +<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  <span class="keywordflow">if</span> (!baseAllocator_)</div> +<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  shared_->ownBaseAllocator = baseAllocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(BaseAllocator)();</div> +<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  <span class="keywordflow">if</span> (ChunkHeader* chunk = static_cast<ChunkHeader*>(baseAllocator_->Malloc(SIZEOF_CHUNK_HEADER + capacity))) {</div> +<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  chunk->capacity = capacity;</div> +<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  chunk->size = 0;</div> +<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  chunk->next = shared_->chunkHead;</div> +<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  shared_->chunkHead = chunk;</div> +<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  }</div> +<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  }</div> +<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  </div> +<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>* AlignBuffer(<span class="keywordtype">void</span>* buf, <span class="keywordtype">size_t</span> &size)</div> +<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  {</div> +<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(buf != 0);</div> +<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  <span class="keyword">const</span> uintptr_t mask = <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) - 1;</div> +<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  <span class="keyword">const</span> uintptr_t ubuf = reinterpret_cast<uintptr_t>(buf);</div> +<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(ubuf & mask)) {</div> +<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  <span class="keyword">const</span> uintptr_t abuf = (ubuf + mask) & ~mask;</div> +<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(size >= abuf - ubuf);</div> +<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  buf = reinterpret_cast<void*>(abuf);</div> +<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  size -= abuf - ubuf;</div> +<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  }</div> +<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  <span class="keywordflow">return</span> buf;</div> +<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  }</div> +<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  </div> +<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  <span class="keywordtype">size_t</span> chunk_capacity_; <span class="comment">//!< The minimum capacity of chunk when they are allocated.</span></div> +<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="comment"></span> BaseAllocator* baseAllocator_; <span class="comment">//!< base allocator for allocating memory chunks.</span></div> +<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="comment"></span> SharedData *shared_; <span class="comment">//!< The shared data of the allocator</span></div> +<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="comment"></span>};</div> +<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  </div> +<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="keyword">namespace </span>internal {</div> +<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <span class="keyword">template</span><<span class="keyword">typename</span>, <span class="keyword">typename</span> = <span class="keywordtype">void</span>></div> +<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <span class="keyword">struct </span>IsRefCounted :</div> +<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <span class="keyword">public</span> FalseType</div> +<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  { };</div> +<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> +<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <span class="keyword">struct </span>IsRefCounted<T, typename internal::EnableIfCond<T::kRefCounted><a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">::Type</a>> :</div> +<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  <span class="keyword">public</span> TrueType</div> +<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  { };</div> +<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> }</div> +<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  </div> +<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> +<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keyword">inline</span> T* Realloc(A& a, T* old_p, <span class="keywordtype">size_t</span> old_n, <span class="keywordtype">size_t</span> new_n)</div> +<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> {</div> +<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(old_n <= SIZE_MAX / <span class="keyword">sizeof</span>(T) && new_n <= SIZE_MAX / <span class="keyword">sizeof</span>(T));</div> +<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  <span class="keywordflow">return</span> static_cast<T*>(a.Realloc(old_p, old_n * <span class="keyword">sizeof</span>(T), new_n * <span class="keyword">sizeof</span>(T)));</div> <div class="line"><a name="l00438"></a><span class="lineno"> 438</span> }</div> <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  </div> -<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>  </div> -<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor">#ifdef __GNUC__</span></div> -<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> RAPIDJSON_DIAG_PUSH</div> -<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> RAPIDJSON_DIAG_OFF(effc++) <span class="comment">// std::allocator can safely be inherited</span></div> -<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> +<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="keyword">inline</span> T *Malloc(A& a, <span class="keywordtype">size_t</span> n = 1)</div> +<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> {</div> +<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  <span class="keywordflow">return</span> Realloc<T, A>(a, NULL, 0, n);</div> +<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> }</div> <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>  </div> -<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keyword">template</span> <<span class="keyword">typename</span> T, <span class="keyword">typename</span> BaseAllocator = CrtAllocator></div> -<div class="line"><a name="l00447"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator.html"> 447</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a> :</div> -<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <span class="keyword">public</span> std::allocator<T></div> -<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> {</div> -<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  <span class="keyword">typedef</span> std::allocator<T> allocator_type;</div> -<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  <span class="keyword">typedef</span> std::allocator_traits<allocator_type> traits_type;</div> -<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>  <span class="keyword">typedef</span> allocator_type traits_type;</div> +<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> +<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> Free(A& a, T *p, <span class="keywordtype">size_t</span> n = 1)</div> +<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> {</div> +<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>  static_cast<void>(Realloc<T, A>(a, p, n, 0));</div> +<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> }</div> +<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  </div> +<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor">#ifdef __GNUC__</span></div> +<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> RAPIDJSON_DIAG_PUSH</div> +<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> RAPIDJSON_DIAG_OFF(effc++) <span class="comment">// std::allocator can safely be inherited</span></div> <div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  </div> -<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  <span class="keyword">typedef</span> BaseAllocator BaseAllocatorType;</div> -<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  </div> -<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  allocator_type(),</div> -<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  baseAllocator_()</div> -<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  { }</div> -<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  </div> -<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  allocator_type(rhs),</div> -<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  baseAllocator_(rhs.baseAllocator_)</div> -<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  { }</div> -<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  </div> -<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  allocator_type(rhs),</div> -<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  baseAllocator_(rhs.baseAllocator_)</div> +<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="keyword">template</span> <<span class="keyword">typename</span> T, <span class="keyword">typename</span> BaseAllocator = CrtAllocator></div> +<div class="line"><a name="l00458"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator.html"> 458</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a> :</div> +<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <span class="keyword">public</span> std::allocator<T></div> +<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> {</div> +<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  <span class="keyword">typedef</span> std::allocator<T> allocator_type;</div> +<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  <span class="keyword">typedef</span> std::allocator_traits<allocator_type> traits_type;</div> +<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <span class="keyword">typedef</span> allocator_type traits_type;</div> +<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  </div> +<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <span class="keyword">typedef</span> BaseAllocator BaseAllocatorType;</div> +<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  </div> +<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  allocator_type(),</div> +<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  baseAllocator_()</div> <div class="line"><a name="l00474"></a><span class="lineno"> 474</span>  { }</div> <div class="line"><a name="l00475"></a><span class="lineno"> 475</span>  </div> -<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>&& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>  allocator_type(std::move(rhs)),</div> -<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  baseAllocator_(std::move(rhs.baseAllocator_))</div> -<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>  { }</div> -<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  <span class="keyword">using</span> propagate_on_container_move_assignment = std::true_type;</div> -<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <span class="keyword">using</span> propagate_on_container_swap = std::true_type;</div> -<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>  allocator_type(rhs),</div> +<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>  baseAllocator_(rhs.baseAllocator_)</div> +<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  { }</div> +<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>  </div> +<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  allocator_type(rhs),</div> +<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  baseAllocator_(rhs.baseAllocator_)</div> +<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>  { }</div> <div class="line"><a name="l00486"></a><span class="lineno"> 486</span>  </div> -<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>  <span class="comment">/* implicit */</span></div> -<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> BaseAllocator& allocator) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>  allocator_type(),</div> -<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>  baseAllocator_(allocator)</div> +<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>&& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>  allocator_type(std::move(rhs)),</div> +<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>  baseAllocator_(std::move(rhs.baseAllocator_))</div> <div class="line"><a name="l00491"></a><span class="lineno"> 491</span>  { }</div> -<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>  </div> -<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>  ~<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  { }</div> -<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>  </div> -<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00497"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_std_allocator_1_1rebind.html"> 497</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_std_allocator_1_1rebind.html">rebind</a> {</div> -<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a> <a class="code" href="classrapidjson_1_1_std_allocator.html">other</a>;</div> -<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>  };</div> -<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  </div> -<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::size_type size_type;</div> -<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::difference_type difference_type;</div> +<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  <span class="keyword">using</span> propagate_on_container_move_assignment = std::true_type;</div> +<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>  <span class="keyword">using</span> propagate_on_container_swap = std::true_type;</div> +<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>  </div> +<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>  <span class="comment">/* implicit */</span></div> +<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> BaseAllocator& allocator) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  allocator_type(),</div> +<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  baseAllocator_(allocator)</div> +<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  { }</div> <div class="line"><a name="l00503"></a><span class="lineno"> 503</span>  </div> -<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::value_type value_type;</div> -<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::pointer pointer;</div> -<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::const_pointer const_pointer;</div> -<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  </div> -<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  </div> -<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> std::add_lvalue_reference<value_type>::type &reference;</div> -<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> std::add_lvalue_reference<typename std::add_const<value_type>::type>::type &const_reference;</div> -<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>  </div> -<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>  pointer address(reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  {</div> -<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>  <span class="keywordflow">return</span> std::addressof(r);</div> -<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>  }</div> -<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  const_pointer address(const_reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  {</div> -<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  <span class="keywordflow">return</span> std::addressof(r);</div> -<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  }</div> -<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  </div> -<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>  size_type max_size() const RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  {</div> -<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  <span class="keywordflow">return</span> traits_type::max_size(*<span class="keyword">this</span>);</div> -<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  }</div> -<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  </div> -<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> ...Args></div> -<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>  <span class="keywordtype">void</span> construct(pointer p, Args&&... args)</div> +<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  ~<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  { }</div> +<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  </div> +<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00508"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_std_allocator_1_1rebind.html"> 508</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_std_allocator_1_1rebind.html">rebind</a> {</div> +<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a> <a class="code" href="classrapidjson_1_1_std_allocator.html">other</a>;</div> +<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  };</div> +<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  </div> +<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::size_type size_type;</div> +<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::difference_type difference_type;</div> +<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  </div> +<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::value_type value_type;</div> +<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::pointer pointer;</div> +<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::const_pointer const_pointer;</div> +<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  </div> +<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  </div> +<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> std::add_lvalue_reference<value_type>::type &reference;</div> +<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> std::add_lvalue_reference<typename std::add_const<value_type>::type>::type &const_reference;</div> +<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  </div> +<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  pointer address(reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  {</div> +<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  <span class="keywordflow">return</span> std::addressof(r);</div> +<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>  }</div> +<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>  const_pointer address(const_reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> <div class="line"><a name="l00529"></a><span class="lineno"> 529</span>  {</div> -<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  traits_type::construct(*<span class="keyword">this</span>, p, std::forward<Args>(args)...);</div> +<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  <span class="keywordflow">return</span> std::addressof(r);</div> <div class="line"><a name="l00531"></a><span class="lineno"> 531</span>  }</div> -<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  <span class="keywordtype">void</span> destroy(pointer p)</div> -<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>  {</div> -<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>  traits_type::destroy(*<span class="keyword">this</span>, p);</div> -<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  }</div> -<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>  </div> -<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="preprocessor">#else // !RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>  </div> -<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::reference reference;</div> -<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::const_reference const_reference;</div> -<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  </div> -<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>  pointer address(reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>  {</div> -<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>  <span class="keywordflow">return</span> allocator_type::address(r);</div> -<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  }</div> -<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>  const_pointer address(const_reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>  {</div> -<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>  <span class="keywordflow">return</span> allocator_type::address(r);</div> -<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  }</div> -<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>  </div> -<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  size_type max_size() const RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>  {</div> -<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  <span class="keywordflow">return</span> allocator_type::max_size();</div> -<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  }</div> -<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  </div> -<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  <span class="keywordtype">void</span> construct(pointer p, const_reference r)</div> -<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  {</div> -<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>  allocator_type::construct(p, r);</div> -<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  }</div> -<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  <span class="keywordtype">void</span> destroy(pointer p)</div> -<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>  {</div> -<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>  allocator_type::destroy(p);</div> -<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  }</div> -<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  </div> -<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor">#endif // !RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  </div> +<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>  size_type max_size() const RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>  {</div> +<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  <span class="keywordflow">return</span> traits_type::max_size(*<span class="keyword">this</span>);</div> +<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>  }</div> +<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>  </div> +<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> ...Args></div> +<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  <span class="keywordtype">void</span> construct(pointer p, Args&&... args)</div> +<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>  {</div> +<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  traits_type::construct(*<span class="keyword">this</span>, p, std::forward<Args>(args)...);</div> +<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>  }</div> +<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>  <span class="keywordtype">void</span> destroy(pointer p)</div> +<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>  {</div> +<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  traits_type::destroy(*<span class="keyword">this</span>, p);</div> +<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>  }</div> +<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>  </div> +<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#else // !RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  </div> +<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::reference reference;</div> +<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::const_reference const_reference;</div> +<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>  </div> +<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  pointer address(reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  {</div> +<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  <span class="keywordflow">return</span> allocator_type::address(r);</div> +<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  }</div> +<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  const_pointer address(const_reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>  {</div> +<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  <span class="keywordflow">return</span> allocator_type::address(r);</div> +<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  }</div> +<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>  </div> +<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>  size_type max_size() const RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  {</div> +<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  <span class="keywordflow">return</span> allocator_type::max_size();</div> +<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  }</div> <div class="line"><a name="l00566"></a><span class="lineno"> 566</span>  </div> -<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  U* allocate(size_type n = 1, <span class="keyword">const</span> <span class="keywordtype">void</span>* = 0)</div> -<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  {</div> -<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  <span class="keywordflow">return</span> RAPIDJSON_NAMESPACE::Malloc<U>(baseAllocator_, n);</div> -<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>  }</div> -<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  <span class="keywordtype">void</span> deallocate(U* p, size_type n = 1)</div> -<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  {</div> -<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  RAPIDJSON_NAMESPACE::Free<U>(baseAllocator_, p, n);</div> -<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>  }</div> +<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  <span class="keywordtype">void</span> construct(pointer p, const_reference r)</div> +<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  {</div> +<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  allocator_type::construct(p, r);</div> +<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  }</div> +<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>  <span class="keywordtype">void</span> destroy(pointer p)</div> +<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>  {</div> +<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  allocator_type::destroy(p);</div> +<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  }</div> +<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  </div> +<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor">#endif // !RAPIDJSON_HAS_CXX11</span></div> <div class="line"><a name="l00577"></a><span class="lineno"> 577</span>  </div> -<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  pointer allocate(size_type n = 1, <span class="keyword">const</span> <span class="keywordtype">void</span>* = 0)</div> -<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  {</div> -<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  <span class="keywordflow">return</span> allocate<value_type>(n);</div> -<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>  }</div> -<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  <span class="keywordtype">void</span> deallocate(pointer p, size_type n = 1)</div> -<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  {</div> -<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>  deallocate<value_type>(p, n);</div> -<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>  }</div> -<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>  </div> -<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>  <span class="keyword">using</span> is_always_equal = std::is_empty<BaseAllocator>;</div> -<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>  </div> -<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> StdAllocator<U, BaseAllocator>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>  {</div> -<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>  <span class="keywordflow">return</span> baseAllocator_ == rhs.baseAllocator_;</div> -<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>  }</div> -<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> StdAllocator<U, BaseAllocator>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>  {</div> -<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>  <span class="keywordflow">return</span> !operator==(rhs);</div> -<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>  }</div> -<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="comment"></span> </div> -<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="comment"> //! rapidjson Allocator concept</span></div> -<div class="line"><a name="l00603"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c"> 603</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = BaseAllocator::kNeedFree;</div> -<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>  <span class="keywordtype">void</span>* Malloc(<span class="keywordtype">size_t</span> size)</div> -<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>  {</div> -<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>  <span class="keywordflow">return</span> baseAllocator_.Malloc(size);</div> -<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>  }</div> -<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>  <span class="keywordtype">void</span>* Realloc(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize)</div> +<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  U* allocate(size_type n = 1, <span class="keyword">const</span> <span class="keywordtype">void</span>* = 0)</div> +<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  {</div> +<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>  <span class="keywordflow">return</span> RAPIDJSON_NAMESPACE::Malloc<U>(baseAllocator_, n);</div> +<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  }</div> +<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>  <span class="keywordtype">void</span> deallocate(U* p, size_type n = 1)</div> +<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>  {</div> +<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>  RAPIDJSON_NAMESPACE::Free<U>(baseAllocator_, p, n);</div> +<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>  }</div> +<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>  </div> +<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>  pointer allocate(size_type n = 1, <span class="keyword">const</span> <span class="keywordtype">void</span>* = 0)</div> +<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>  {</div> +<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>  <span class="keywordflow">return</span> allocate<value_type>(n);</div> +<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  }</div> +<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>  <span class="keywordtype">void</span> deallocate(pointer p, size_type n = 1)</div> +<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>  {</div> +<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>  deallocate<value_type>(p, n);</div> +<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>  }</div> +<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>  </div> +<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>  <span class="keyword">using</span> is_always_equal = std::is_empty<BaseAllocator>;</div> +<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>  </div> +<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> StdAllocator<U, BaseAllocator>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>  {</div> +<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>  <span class="keywordflow">return</span> baseAllocator_ == rhs.baseAllocator_;</div> +<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>  }</div> +<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> StdAllocator<U, BaseAllocator>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> <div class="line"><a name="l00609"></a><span class="lineno"> 609</span>  {</div> -<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>  <span class="keywordflow">return</span> baseAllocator_.Realloc(originalPtr, originalSize, newSize);</div> +<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>  <span class="keywordflow">return</span> !operator==(rhs);</div> <div class="line"><a name="l00611"></a><span class="lineno"> 611</span>  }</div> -<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> Free(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00613"></a><span class="lineno"> 613</span>  {</div> -<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>  BaseAllocator::Free(ptr);</div> -<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>  }</div> -<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>  </div> -<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> -<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>  <span class="keyword">friend</span> <span class="keyword">class </span>StdAllocator; <span class="comment">// access to StdAllocator<!T>.*</span></div> -<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>  </div> -<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>  BaseAllocator baseAllocator_;</div> -<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> };</div> -<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>  </div> -<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="preprocessor">#if !RAPIDJSON_HAS_CXX17 // std::allocator<void> deprecated in C++17</span></div> -<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="keyword">template</span> <<span class="keyword">typename</span> BaseAllocator></div> -<div class="line"><a name="l00626"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html"> 626</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a><void, BaseAllocator> :</div> -<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>  <span class="keyword">public</span> std::allocator<void></div> -<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> {</div> -<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>  <span class="keyword">typedef</span> std::allocator<void> allocator_type;</div> -<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>  </div> -<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>  <span class="keyword">typedef</span> BaseAllocator BaseAllocatorType;</div> -<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>  </div> -<div class="line"><a name="l00634"></a><span class="lineno"> 634</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>  allocator_type(),</div> -<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>  baseAllocator_()</div> -<div class="line"><a name="l00637"></a><span class="lineno"> 637</span>  { }</div> -<div class="line"><a name="l00638"></a><span class="lineno"> 638</span>  </div> -<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00640"></a><span class="lineno"> 640</span>  allocator_type(rhs),</div> -<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  baseAllocator_(rhs.baseAllocator_)</div> -<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>  { }</div> -<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>  </div> -<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>  allocator_type(rhs),</div> -<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  baseAllocator_(rhs.baseAllocator_)</div> -<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>  { }</div> -<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>  </div> -<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>  <span class="comment">/* implicit */</span></div> -<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> BaseAllocator& allocator) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>  allocator_type(),</div> -<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>  baseAllocator_(allocator)</div> +<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="comment"></span> </div> +<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="comment"> //! rapidjson Allocator concept</span></div> +<div class="line"><a name="l00614"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c"> 614</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = BaseAllocator::kNeedFree;</div> +<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kRefCounted = <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">internal::IsRefCounted<BaseAllocator>::Value</a>;</div> +<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>  <span class="keywordtype">void</span>* Malloc(<span class="keywordtype">size_t</span> size)</div> +<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>  {</div> +<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>  <span class="keywordflow">return</span> baseAllocator_.Malloc(size);</div> +<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>  }</div> +<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>  <span class="keywordtype">void</span>* Realloc(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize)</div> +<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>  {</div> +<div class="line"><a name="l00622"></a><span class="lineno"> 622</span>  <span class="keywordflow">return</span> baseAllocator_.Realloc(originalPtr, originalSize, newSize);</div> +<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>  }</div> +<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> Free(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>  {</div> +<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>  BaseAllocator::Free(ptr);</div> +<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>  }</div> +<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>  </div> +<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> +<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>  <span class="keyword">friend</span> <span class="keyword">class </span>StdAllocator; <span class="comment">// access to StdAllocator<!T>.*</span></div> +<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>  </div> +<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>  BaseAllocator baseAllocator_;</div> +<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> };</div> +<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>  </div> +<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor">#if !RAPIDJSON_HAS_CXX17 // std::allocator<void> deprecated in C++17</span></div> +<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="keyword">template</span> <<span class="keyword">typename</span> BaseAllocator></div> +<div class="line"><a name="l00638"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html"> 638</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a><void, BaseAllocator> :</div> +<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>  <span class="keyword">public</span> std::allocator<void></div> +<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> {</div> +<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  <span class="keyword">typedef</span> std::allocator<void> allocator_type;</div> +<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>  </div> +<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>  <span class="keyword">typedef</span> BaseAllocator BaseAllocatorType;</div> +<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>  </div> +<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  allocator_type(),</div> +<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>  baseAllocator_()</div> +<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>  { }</div> +<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>  </div> +<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>  allocator_type(rhs),</div> +<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>  baseAllocator_(rhs.baseAllocator_)</div> <div class="line"><a name="l00654"></a><span class="lineno"> 654</span>  { }</div> <div class="line"><a name="l00655"></a><span class="lineno"> 655</span>  </div> -<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>  ~<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>  { }</div> -<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>  </div> -<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00660"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html"> 660</a></span>  <span class="keyword">struct </span>rebind {</div> -<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a> <a class="code" href="classrapidjson_1_1_std_allocator.html">other</a>;</div> -<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>  };</div> -<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>  </div> -<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::value_type value_type;</div> -<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>  </div> -<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> -<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>; <span class="comment">// access to StdAllocator<!T>.*</span></div> -<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>  </div> -<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>  BaseAllocator baseAllocator_;</div> -<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> };</div> -<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>  </div> -<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="preprocessor">#ifdef __GNUC__</span></div> -<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> RAPIDJSON_DIAG_POP</div> -<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>  allocator_type(rhs),</div> +<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>  baseAllocator_(rhs.baseAllocator_)</div> +<div class="line"><a name="l00660"></a><span class="lineno"> 660</span>  { }</div> +<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>  </div> +<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>  <span class="comment">/* implicit */</span></div> +<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> BaseAllocator& allocator) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>  allocator_type(),</div> +<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>  baseAllocator_(allocator)</div> +<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>  { }</div> +<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>  </div> +<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>  ~<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>  { }</div> +<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>  </div> +<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00672"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html"> 672</a></span>  <span class="keyword">struct </span>rebind {</div> +<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a> <a class="code" href="classrapidjson_1_1_std_allocator.html">other</a>;</div> +<div class="line"><a name="l00674"></a><span class="lineno"> 674</span>  };</div> +<div class="line"><a name="l00675"></a><span class="lineno"> 675</span>  </div> +<div class="line"><a name="l00676"></a><span class="lineno"> 676</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::value_type value_type;</div> <div class="line"><a name="l00677"></a><span class="lineno"> 677</span>  </div> -<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>  </div> -<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="preprocessor">#endif // RAPIDJSON_ENCODINGS_H_</span></div> +<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> +<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>; <span class="comment">// access to StdAllocator<!T>.*</span></div> +<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>  </div> +<div class="line"><a name="l00682"></a><span class="lineno"> 682</span>  BaseAllocator baseAllocator_;</div> +<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> };</div> +<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00685"></a><span class="lineno"> 685</span>  </div> +<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="preprocessor">#ifdef __GNUC__</span></div> +<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> RAPIDJSON_DIAG_POP</div> +<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00689"></a><span class="lineno"> 689</span>  </div> +<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00691"></a><span class="lineno"> 691</span>  </div> +<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="preprocessor">#endif // RAPIDJSON_ENCODINGS_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga860570d04d489be08b9835d2ec58bac5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5">RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</a></div><div class="ttdeci">#define RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</div><div class="ttdoc">User-defined kDefaultChunkCapacity definition.</div><div class="ttdef"><b>Definition:</b> allocators.h:70</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a880524b17bbecb5d2691b8075050d55d"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">rapidjson::MemoryPoolAllocator::Realloc</a></div><div class="ttdeci">void * Realloc(void *originalPtr, size_t originalSize, size_t newSize)</div><div class="ttdoc">Resizes a memory block (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:334</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_af1a56b28d5e0d75b628d448ceacd41fc"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">rapidjson::MemoryPoolAllocator::Shared</a></div><div class="ttdeci">bool Shared() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Whether the allocator is shared.</div><div class="ttdef"><b>Definition:</b> allocators.h:312</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_abcc572bdb6902c9d69711540db5098a7"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">rapidjson::MemoryPoolAllocator::MemoryPoolAllocator</a></div><div class="ttdeci">MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</div><div class="ttdoc">Constructor with user-supplied buffer.</div><div class="ttdef"><b>Definition:</b> allocators.h:198</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga860570d04d489be08b9835d2ec58bac5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5">RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</a></div><div class="ttdeci">#define RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</div><div class="ttdoc">User-defined kDefaultChunkCapacity definition.</div><div class="ttdef"><b>Definition:</b> allocators.h:71</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a880524b17bbecb5d2691b8075050d55d"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">rapidjson::MemoryPoolAllocator::Realloc</a></div><div class="ttdeci">void * Realloc(void *originalPtr, size_t originalSize, size_t newSize)</div><div class="ttdoc">Resizes a memory block (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:336</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_af1a56b28d5e0d75b628d448ceacd41fc"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">rapidjson::MemoryPoolAllocator::Shared</a></div><div class="ttdeci">bool Shared() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Whether the allocator is shared.</div><div class="ttdef"><b>Definition:</b> allocators.h:314</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_abcc572bdb6902c9d69711540db5098a7"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">rapidjson::MemoryPoolAllocator::MemoryPoolAllocator</a></div><div class="ttdeci">MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</div><div class="ttdoc">Constructor with user-supplied buffer.</div><div class="ttdef"><b>Definition:</b> allocators.h:200</div></div> <div class="ttc" id="arapidjson_8h_html"><div class="ttname"><a href="rapidjson_8h.html">rapidjson.h</a></div><div class="ttdoc">common definitions and configuration</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_ada927b87fb5640124aefeb07e3e23c99"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">rapidjson::MemoryPoolAllocator::operator!=</a></div><div class="ttdeci">bool operator!=(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Compare (inequality) with another MemoryPoolAllocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:378</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_afa5935b0dc40420085822bdb5a3f2840"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">rapidjson::MemoryPoolAllocator::Clear</a></div><div class="ttdeci">void Clear() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Deallocates all memory chunks, excluding the first/user one.</div><div class="ttdef"><b>Definition:</b> allocators.h:274</div></div> -<div class="ttc" id="aclassrapidjson_1_1_crt_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_crt_allocator.html">rapidjson::CrtAllocator</a></div><div class="ttdoc">C-runtime library allocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:81</div></div> -<div class="ttc" id="arapidjson_8h_html_aa2c0f2121d7803191a43609ea5d8dd67"><div class="ttname"><a href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67">RAPIDJSON_REALLOC</a></div><div class="ttdeci">#define RAPIDJSON_REALLOC(ptr, new_size)</div><div class="ttdoc">! customization point for global realloc</div><div class="ttdef"><b>Definition:</b> rapidjson.h:678</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_aa5b6810e88de0c46390525cd3a0bd700"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">rapidjson::MemoryPoolAllocator::~MemoryPoolAllocator</a></div><div class="ttdeci">~MemoryPoolAllocator() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> allocators.h:256</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a59d783f4feba17dcd35d9f25fcbc09f4"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">rapidjson::MemoryPoolAllocator::MemoryPoolAllocator</a></div><div class="ttdeci">MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</div><div class="ttdoc">Constructor with chunkSize.</div><div class="ttdef"><b>Definition:</b> allocators.h:167</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_ab7368f377dafc0ecad2c59814cdfe265"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">rapidjson::MemoryPoolAllocator::Size</a></div><div class="ttdeci">size_t Size() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Computes the memory blocks allocated.</div><div class="ttdef"><b>Definition:</b> allocators.h:301</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_aaadeb62f04e430ae1254a7e69d54d724"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">rapidjson::MemoryPoolAllocator::operator==</a></div><div class="ttdeci">bool operator==(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Compare (equality) with another MemoryPoolAllocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:372</div></div> -<div class="ttc" id="arapidjson_8h_html_a047ad77d620d1ae97c1bc70a9f316f27"><div class="ttname"><a href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27">RAPIDJSON_MALLOC</a></div><div class="ttdeci">#define RAPIDJSON_MALLOC(size)</div><div class="ttdoc">! customization point for global malloc</div><div class="ttdef"><b>Definition:</b> rapidjson.h:674</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a208c29e04b1d748bfe068444b7044344"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">rapidjson::MemoryPoolAllocator::Malloc</a></div><div class="ttdeci">void * Malloc(size_t size)</div><div class="ttdoc">Allocates a memory block. (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:318</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator</a></div><div class="ttdoc">Default memory allocator used by the parser and DOM.</div><div class="ttdef"><b>Definition:</b> allocators.h:128</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="aclassrapidjson_1_1_std_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator</a></div><div class="ttdef"><b>Definition:</b> allocators.h:447</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> -<div class="ttc" id="arapidjson_8h_html_aa6d5138eed2c5b311d9862d191393a5f"><div class="ttname"><a href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a></div><div class="ttdeci">#define RAPIDJSON_FREE(ptr)</div><div class="ttdoc">! customization point for global free</div><div class="ttdef"><b>Definition:</b> rapidjson.h:682</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_acf80d2330d6ae72643674a95ac62c0bd"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd">rapidjson::MemoryPoolAllocator::Capacity</a></div><div class="ttdeci">size_t Capacity() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Computes the total capacity of allocated memory chunks.</div><div class="ttdef"><b>Definition:</b> allocators.h:290</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga2b2a0d9143aa4fb31205a85b34c43952"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_NOEXCEPT_ASSERT(x)</div><div class="ttdoc">Assertion (in non-throwing contexts).</div><div class="ttdef"><b>Definition:</b> rapidjson.h:665</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga583915242504c7fdb36e826f02f76242"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a></div><div class="ttdeci">#define RAPIDJSON_ALIGN(x)</div><div class="ttdoc">Data alignment of the machine.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:289</div></div> -<div class="ttc" id="astructrapidjson_1_1_std_allocator_1_1rebind_html"><div class="ttname"><a href="structrapidjson_1_1_std_allocator_1_1rebind.html">rapidjson::StdAllocator::rebind</a></div><div class="ttdef"><b>Definition:</b> allocators.h:497</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a199ce203dde7f2b364b6b844a8af04ec"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">rapidjson::MemoryPoolAllocator::Free</a></div><div class="ttdeci">static void Free(void *ptr) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Frees a memory block (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:369</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_ada927b87fb5640124aefeb07e3e23c99"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">rapidjson::MemoryPoolAllocator::operator!=</a></div><div class="ttdeci">bool operator!=(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Compare (inequality) with another MemoryPoolAllocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:380</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_afa5935b0dc40420085822bdb5a3f2840"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">rapidjson::MemoryPoolAllocator::Clear</a></div><div class="ttdeci">void Clear() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Deallocates all memory chunks, excluding the first/user one.</div><div class="ttdef"><b>Definition:</b> allocators.h:276</div></div> +<div class="ttc" id="aclassrapidjson_1_1_crt_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_crt_allocator.html">rapidjson::CrtAllocator</a></div><div class="ttdoc">C-runtime library allocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:82</div></div> +<div class="ttc" id="arapidjson_8h_html_aa2c0f2121d7803191a43609ea5d8dd67"><div class="ttname"><a href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67">RAPIDJSON_REALLOC</a></div><div class="ttdeci">#define RAPIDJSON_REALLOC(ptr, new_size)</div><div class="ttdoc">! customization point for global realloc</div><div class="ttdef"><b>Definition:</b> rapidjson.h:700</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_aa5b6810e88de0c46390525cd3a0bd700"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">rapidjson::MemoryPoolAllocator::~MemoryPoolAllocator</a></div><div class="ttdeci">~MemoryPoolAllocator() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> allocators.h:258</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a59d783f4feba17dcd35d9f25fcbc09f4"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">rapidjson::MemoryPoolAllocator::MemoryPoolAllocator</a></div><div class="ttdeci">MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</div><div class="ttdoc">Constructor with chunkSize.</div><div class="ttdef"><b>Definition:</b> allocators.h:169</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_ab7368f377dafc0ecad2c59814cdfe265"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">rapidjson::MemoryPoolAllocator::Size</a></div><div class="ttdeci">size_t Size() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Computes the memory blocks allocated.</div><div class="ttdef"><b>Definition:</b> allocators.h:303</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_aaadeb62f04e430ae1254a7e69d54d724"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">rapidjson::MemoryPoolAllocator::operator==</a></div><div class="ttdeci">bool operator==(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Compare (equality) with another MemoryPoolAllocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:374</div></div> +<div class="ttc" id="arapidjson_8h_html_a047ad77d620d1ae97c1bc70a9f316f27"><div class="ttname"><a href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27">RAPIDJSON_MALLOC</a></div><div class="ttdeci">#define RAPIDJSON_MALLOC(size)</div><div class="ttdoc">! customization point for global malloc</div><div class="ttdef"><b>Definition:</b> rapidjson.h:696</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a208c29e04b1d748bfe068444b7044344"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">rapidjson::MemoryPoolAllocator::Malloc</a></div><div class="ttdeci">void * Malloc(size_t size)</div><div class="ttdoc">Allocates a memory block. (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:320</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator</a></div><div class="ttdoc">Default memory allocator used by the parser and DOM.</div><div class="ttdef"><b>Definition:</b> allocators.h:129</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="aclassrapidjson_1_1_std_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator</a></div><div class="ttdef"><b>Definition:</b> allocators.h:458</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> +<div class="ttc" id="arapidjson_8h_html_aa6d5138eed2c5b311d9862d191393a5f"><div class="ttname"><a href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a></div><div class="ttdeci">#define RAPIDJSON_FREE(ptr)</div><div class="ttdoc">! customization point for global free</div><div class="ttdef"><b>Definition:</b> rapidjson.h:704</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_acf80d2330d6ae72643674a95ac62c0bd"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd">rapidjson::MemoryPoolAllocator::Capacity</a></div><div class="ttdeci">size_t Capacity() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Computes the total capacity of allocated memory chunks.</div><div class="ttdef"><b>Definition:</b> allocators.h:292</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga2b2a0d9143aa4fb31205a85b34c43952"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_NOEXCEPT_ASSERT(x)</div><div class="ttdoc">Assertion (in non-throwing contexts).</div><div class="ttdef"><b>Definition:</b> rapidjson.h:687</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga583915242504c7fdb36e826f02f76242"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a></div><div class="ttdeci">#define RAPIDJSON_ALIGN(x)</div><div class="ttdoc">Data alignment of the machine.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:307</div></div> +<div class="ttc" id="astructrapidjson_1_1_std_allocator_1_1rebind_html"><div class="ttname"><a href="structrapidjson_1_1_std_allocator_1_1rebind.html">rapidjson::StdAllocator::rebind</a></div><div class="ttdef"><b>Definition:</b> allocators.h:508</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a199ce203dde7f2b364b6b844a8af04ec"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">rapidjson::MemoryPoolAllocator::Free</a></div><div class="ttdeci">static void Free(void *ptr) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Frees a memory block (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:371</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/biginteger_8h_source.html b/biginteger_8h_source.html index c58f2c5b..ca81cdc9 100644 --- a/biginteger_8h_source.html +++ b/biginteger_8h_source.html @@ -380,9 +380,9 @@ $(document).ready(function(){initNavTree('biginteger_8h_source.html','');}); <div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor">#endif // RAPIDJSON_BIGINTEGER_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/classrapidjson_1_1_generic_document-members.html b/classrapidjson_1_1_generic_document-members.html index 4398a67f..3e65a51d 100644 --- a/classrapidjson_1_1_generic_document-members.html +++ b/classrapidjson_1_1_generic_document-members.html @@ -100,113 +100,124 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_generic_document.ht <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ConstObject</b> typedef (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7">ConstValueIterator</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>data_</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Double</b>(double d) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">EncodingType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>EndArray</b>(SizeType elementCount) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>EndObject</b>(SizeType memberCount) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">GenericDocument</a>(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">GenericDocument</a>(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GenericValue</b> (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">rapidjson::GenericValue::GenericValue</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">rapidjson::GenericValue::GenericValue</a>(Type type) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">rapidjson::GenericValue::GenericValue</a>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">rapidjson::GenericValue::GenericValue</a>(bool b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">rapidjson::GenericValue::GenericValue</a>(int i) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">rapidjson::GenericValue::GenericValue</a>(unsigned u) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">rapidjson::GenericValue::GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">rapidjson::GenericValue::GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">rapidjson::GenericValue::GenericValue</a>(double d) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">rapidjson::GenericValue::GenericValue</a>(float f) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">rapidjson::GenericValue::GenericValue</a>(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">rapidjson::GenericValue::GenericValue</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">rapidjson::GenericValue::GenericValue</a>(const Ch *s, SizeType length, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">rapidjson::GenericValue::GenericValue</a>(const Ch *s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">rapidjson::GenericValue::GenericValue</a>(const std::basic_string< Ch > &s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">rapidjson::GenericValue::GenericValue</a>(Array a) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">rapidjson::GenericValue::GenericValue</a>(Object o) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">GetAllocator</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetElementsPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">GetErrorOffset</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetMembersPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">GetParseError</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">GetStackCapacity</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GetStringPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">HasParseError</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Int</b>(int i) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Int64</b>(int64_t i) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kArrayFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kBoolFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kConstStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kCopyFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kCopyStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDefaultArrayCapacity</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kDefaultObjectCapacity</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDoubleFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Key</b>(const Ch *str, SizeType length, bool copy) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kFalseFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kInlineStrFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kInt64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kIntFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNullFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberAnyFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberDoubleFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberInt64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberIntFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberUint64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberUintFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kObjectFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kShortStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kTrueFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kTypeMask</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kUint64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kUintFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Null</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Object</b> typedef (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974">operator ParseResult</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">rapidjson::GenericValue::operator=</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">rapidjson::GenericValue::operator=</a>(StringRefType str) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">Parse</a>(const typename SourceEncoding::Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">Parse</a>(const Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">Parse</a>(const Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const typename SourceEncoding::Ch *str, size_t length) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const Ch *str, size_t length) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DataString</b>(const Data &data) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DataStringLength</b>(const Data &data) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoAddMember</b>(GenericValue &name, GenericValue &value, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoAllocMembers</b>(SizeType capacity, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoClearMembers</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoCopyMembers</b>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoEraseMembers</b>(ConstMemberIterator first, ConstMemberIterator last) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoFindMember</b>(const GenericValue< Encoding, SourceAllocator > &name) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoFreeMembers</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoRemoveMember</b>(MemberIterator m) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoReserveMembers</b>(SizeType newCapacity, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Double</b>(double d) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">EncodingType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>EndArray</b>(SizeType elementCount) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>EndObject</b>(SizeType memberCount) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">GenericDocument</a>(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">GenericDocument</a>(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenericValue</b> (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">rapidjson::GenericValue::GenericValue</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">rapidjson::GenericValue::GenericValue</a>(Type type) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">rapidjson::GenericValue::GenericValue</a>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">rapidjson::GenericValue::GenericValue</a>(bool b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">rapidjson::GenericValue::GenericValue</a>(int i) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">rapidjson::GenericValue::GenericValue</a>(unsigned u) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">rapidjson::GenericValue::GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">rapidjson::GenericValue::GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">rapidjson::GenericValue::GenericValue</a>(double d) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">rapidjson::GenericValue::GenericValue</a>(float f) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">rapidjson::GenericValue::GenericValue</a>(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">rapidjson::GenericValue::GenericValue</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">rapidjson::GenericValue::GenericValue</a>(const Ch *s, SizeType length, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">rapidjson::GenericValue::GenericValue</a>(const Ch *s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">rapidjson::GenericValue::GenericValue</a>(const std::basic_string< Ch > &s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">rapidjson::GenericValue::GenericValue</a>(Array a) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">rapidjson::GenericValue::GenericValue</a>(Object o) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">GetAllocator</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>GetElementsPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">GetErrorOffset</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>GetMembersPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">GetParseError</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">GetStackCapacity</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetStringPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">HasParseError</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Int</b>(int i) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Int64</b>(int64_t i) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kArrayFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kBoolFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kConstStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kCopyFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kCopyStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kDefaultArrayCapacity</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDefaultObjectCapacity</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kDoubleFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Key</b>(const Ch *str, SizeType length, bool copy) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kFalseFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kInlineStrFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kInt64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kIntFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNullFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberAnyFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberDoubleFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberInt64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberIntFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberUint64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberUintFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kObjectFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kShortStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kTrueFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kTypeMask</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kUint64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kUintFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Null</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Object</b> typedef (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974">operator ParseResult</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">rapidjson::GenericValue::operator=</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">rapidjson::GenericValue::operator=</a>(StringRefType str) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">Parse</a>(const typename SourceEncoding::Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">Parse</a>(const Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">Parse</a>(const Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const typename SourceEncoding::Ch *str, size_t length) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const Ch *str, size_t length) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const std::basic_string< typename SourceEncoding::Ch > &str) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const std::basic_string< Ch > &str) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const Ch *str, size_t length) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const std::basic_string< typename SourceEncoding::Ch > &str) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const std::basic_string< Ch > &str) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">ParseInsitu</a>(Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">ParseInsitu</a>(Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">Populate</a>(Generator &g)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0">RAPIDJSON_DISABLEIF_RETURN</a>((internal::IsPointer< T >),(GenericValue &)) operator</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>RawNumber</b>(const Ch *str, SizeType length, bool copy) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetArrayRaw</b>(GenericValue *values, SizeType count, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>SetElementsPointer</b>(GenericValue *elements) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetMembersPointer</b>(Member *members) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(Member *members, SizeType count, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetStringPointer</b>(const Ch *str) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(StringRefType s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>StartArray</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StartObject</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>String</b>(const Ch *str, SizeType length, bool copy) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StringEqual</b>(const GenericValue< Encoding, SourceAllocator > &rhs) const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">swap</a>(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const std::basic_string< Ch > &str) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">ParseInsitu</a>(Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">ParseInsitu</a>(Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">Populate</a>(Generator &g)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0">RAPIDJSON_DISABLEIF_RETURN</a>((internal::IsPointer< T >),(GenericValue &)) operator</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>RawNumber</b>(const Ch *str, SizeType length, bool copy) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetArrayRaw</b>(GenericValue *values, SizeType count, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetElementsPointer</b>(GenericValue *elements) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetMembersPointer</b>(Member *members) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(Member *members, SizeType count, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetStringPointer</b>(const Ch *str) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(StringRefType s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StartArray</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StartObject</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>String</b>(const Ch *str, SizeType length, bool copy) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StringEqual</b>(const GenericValue< Encoding, SourceAllocator > &rhs) const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">Swap</a>(GenericDocument &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Uint</b>(unsigned i) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Uint64</b>(uint64_t i) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">ValueType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~GenericDocument</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">swap</a>(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Uint</b>(unsigned i) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Uint64</b>(uint64_t i) (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">ValueType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>~GenericDocument</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> </table></div><!-- contents --> </div><!-- doc-content --> <!-- HTML footer for doxygen 1.8.7--> diff --git a/classrapidjson_1_1_generic_document.html b/classrapidjson_1_1_generic_document.html index c4e28d26..203716ee 100644 --- a/classrapidjson_1_1_generic_document.html +++ b/classrapidjson_1_1_generic_document.html @@ -373,6 +373,35 @@ RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html# <tr class="memitem:a19199230941f1fe59b5b6a27281fcd1b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a19199230941f1fe59b5b6a27281fcd1b"></a> RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> * </td><td class="memItemRight" valign="bottom"><b>SetMembersPointer</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> *members)</td></tr> <tr class="separator:a19199230941f1fe59b5b6a27281fcd1b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9125585f7d3315da5e9aec2b5587bb7d inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a9125585f7d3315da5e9aec2b5587bb7d"></a> +RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> * </td><td class="memItemRight" valign="bottom"><b>DoAllocMembers</b> (<a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:a9125585f7d3315da5e9aec2b5587bb7d inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad4451b6417bf2ada4d8b56ba0b3b6031 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="ad4451b6417bf2ada4d8b56ba0b3b6031"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoReserveMembers</b> (<a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:ad4451b6417bf2ada4d8b56ba0b3b6031 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a94105ff1a8eeb895cee95fb4eca7781b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memTemplParams" colspan="2"><a id="a94105ff1a8eeb895cee95fb4eca7781b"></a> +template<typename SourceAllocator > </td></tr> +<tr class="memitem:a94105ff1a8eeb895cee95fb4eca7781b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memTemplItemRight" valign="bottom"><b>DoFindMember</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &name)</td></tr> +<tr class="separator:a94105ff1a8eeb895cee95fb4eca7781b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a1c2162a0a065a59bf465497e5110788c inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a1c2162a0a065a59bf465497e5110788c"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoClearMembers</b> ()</td></tr> +<tr class="separator:a1c2162a0a065a59bf465497e5110788c inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a7e5cf02ff6ee4938b672d98258a79546 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a7e5cf02ff6ee4938b672d98258a79546"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoFreeMembers</b> ()</td></tr> +<tr class="separator:a7e5cf02ff6ee4938b672d98258a79546 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a92627391393b9aa6245275593040cf0a inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a92627391393b9aa6245275593040cf0a"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoAddMember</b> (<a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> &name, <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> &value, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:a92627391393b9aa6245275593040cf0a inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0655ea1a6fb2cf09f845a4e50b6b961f inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a0655ea1a6fb2cf09f845a4e50b6b961f"></a> +<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memItemRight" valign="bottom"><b>DoRemoveMember</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> m)</td></tr> +<tr class="separator:a0655ea1a6fb2cf09f845a4e50b6b961f inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a98ce0a47cc6951eb7ee106160e3b637a inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a98ce0a47cc6951eb7ee106160e3b637a"></a> +<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memItemRight" valign="bottom"><b>DoEraseMembers</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> first, <a class="el" href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> last)</td></tr> +<tr class="separator:a98ce0a47cc6951eb7ee106160e3b637a inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aca2fab62d3450b24d46cc9841ed8cfef inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memTemplParams" colspan="2"><a id="aca2fab62d3450b24d46cc9841ed8cfef"></a> +template<typename SourceAllocator > </td></tr> +<tr class="memitem:aca2fab62d3450b24d46cc9841ed8cfef inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>DoCopyMembers</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &rhs, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator, bool copyConstStrings)</td></tr> +<tr class="separator:aca2fab62d3450b24d46cc9841ed8cfef inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9cc2eb5c196affb861560219a4973dd0 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a9cc2eb5c196affb861560219a4973dd0"></a> void </td><td class="memItemRight" valign="bottom"><b>SetArrayRaw</b> (<a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> *values, <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> <tr class="separator:a9cc2eb5c196affb861560219a4973dd0 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> @@ -475,6 +504,13 @@ template<typename , typename > </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a> Additional Inherited Members</h2></td></tr> +<tr class="inherit_header pub_static_methods_classrapidjson_1_1_generic_value"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classrapidjson_1_1_generic_value')"><img src="closed.png" alt="-"/> Static Public Member Functions inherited from <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td></tr> +<tr class="memitem:a2c26a47d781359b9bd0e4b7b91948bc6 inherit pub_static_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a2c26a47d781359b9bd0e4b7b91948bc6"></a> +static const RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> * </td><td class="memItemRight" valign="bottom"><b>DataString</b> (const <a class="el" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> &data)</td></tr> +<tr class="separator:a2c26a47d781359b9bd0e4b7b91948bc6 inherit pub_static_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0012e161e17ef746c31b1985a3e34cc6 inherit pub_static_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a0012e161e17ef746c31b1985a3e34cc6"></a> +static RAPIDJSON_FORCEINLINE <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> </td><td class="memItemRight" valign="bottom"><b>DataStringLength</b> (const <a class="el" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> &data)</td></tr> +<tr class="separator:a0012e161e17ef746c31b1985a3e34cc6 inherit pub_static_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_attribs_classrapidjson_1_1_generic_value"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_classrapidjson_1_1_generic_value')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td></tr> <tr class="memitem:a45b0ddd23742e045ffe286f9ead712b7 inherit pub_attribs_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a45b0ddd23742e045ffe286f9ead712b7"></a> const typedef <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7">ConstValueIterator</a></td></tr> @@ -1137,8 +1173,8 @@ template<typename Encoding , typename Allocator = RAPIDJSON_DEFAULT_ALLOCATO </ul> </div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a0d63efcc43758ac3aed77e868233369d"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument::swap</a></div><div class="ttdeci">friend void swap(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> document.h:2320</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a0d63efcc43758ac3aed77e868233369d"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument::swap</a></div><div class="ttdeci">friend void swap(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> document.h:2587</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gabdaf1a7a4db30fb0e3d927fdf0fabe79"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79">rapidjson::GetParseError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)</div><div class="ttdoc">Maps error code of parsing into error message.</div><div class="ttdef"><b>Definition:</b> en.h:36</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> diff --git a/classrapidjson_1_1_generic_value-members.html b/classrapidjson_1_1_generic_value-members.html index e25bc951..d1c31e56 100644 --- a/classrapidjson_1_1_generic_value-members.html +++ b/classrapidjson_1_1_generic_value-members.html @@ -99,74 +99,85 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_generic_value.html' <tr bgcolor="#f0f0f0"><td class="entry"><b>ConstObject</b> typedef (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7">ConstValueIterator</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr bgcolor="#f0f0f0"><td class="entry"><b>data_</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">EncodingType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GenericDocument</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">GenericValue</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">GenericValue</a>(Type type) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">GenericValue</a>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a>(bool b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">GenericValue</a>(int i) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">GenericValue</a>(unsigned u) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">GenericValue</a>(double d) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">GenericValue</a>(float f) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">GenericValue</a>(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">GenericValue</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">GenericValue</a>(const Ch *s, SizeType length, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">GenericValue</a>(const Ch *s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">GenericValue</a>(const std::basic_string< Ch > &s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a>(Array a) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">GenericValue</a>(Object o) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GetElementsPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetMembersPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GetStringPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kArrayFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kBoolFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kConstStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kCopyFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kCopyStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kDefaultArrayCapacity</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDefaultObjectCapacity</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kDoubleFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kFalseFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kInlineStrFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kInt64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kIntFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNullFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberAnyFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberDoubleFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberInt64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberIntFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberUint64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberUintFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kObjectFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kShortStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kTrueFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kTypeMask</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kUint64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kUintFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Object</b> typedef (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">operator=</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">operator=</a>(StringRefType str) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0">RAPIDJSON_DISABLEIF_RETURN</a>((internal::IsPointer< T >),(GenericValue &)) operator</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetArrayRaw</b>(GenericValue *values, SizeType count, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>SetElementsPointer</b>(GenericValue *elements) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetMembersPointer</b>(Member *members) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(Member *members, SizeType count, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetStringPointer</b>(const Ch *str) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(StringRefType s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>StringEqual</b>(const GenericValue< Encoding, SourceAllocator > &rhs) const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DataString</b>(const Data &data) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DataStringLength</b>(const Data &data) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoAddMember</b>(GenericValue &name, GenericValue &value, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoAllocMembers</b>(SizeType capacity, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoClearMembers</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoCopyMembers</b>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoEraseMembers</b>(ConstMemberIterator first, ConstMemberIterator last) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoFindMember</b>(const GenericValue< Encoding, SourceAllocator > &name) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoFreeMembers</b>() (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoRemoveMember</b>(MemberIterator m) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoReserveMembers</b>(SizeType newCapacity, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">EncodingType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenericDocument</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">GenericValue</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">GenericValue</a>(Type type) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">GenericValue</a>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a>(bool b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">GenericValue</a>(int i) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">GenericValue</a>(unsigned u) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">GenericValue</a>(double d) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">GenericValue</a>(float f) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">GenericValue</a>(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">GenericValue</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">GenericValue</a>(const Ch *s, SizeType length, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">GenericValue</a>(const Ch *s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">GenericValue</a>(const std::basic_string< Ch > &s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a>(Array a) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">GenericValue</a>(Object o) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetElementsPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>GetMembersPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetStringPointer</b>() const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kArrayFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kBoolFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kConstStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kCopyFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kCopyStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDefaultArrayCapacity</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kDefaultObjectCapacity</b> (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDoubleFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kFalseFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kInlineStrFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kInt64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kIntFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNullFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberAnyFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberDoubleFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberInt64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberIntFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberUint64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberUintFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kObjectFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kShortStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kStringFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kTrueFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kTypeMask</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kUint64Flag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kUintFlag</b> enum value (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Object</b> typedef (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">operator=</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">operator=</a>(StringRefType str) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0">RAPIDJSON_DISABLEIF_RETURN</a>((internal::IsPointer< T >),(GenericValue &)) operator</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetArrayRaw</b>(GenericValue *values, SizeType count, Allocator &allocator) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetElementsPointer</b>(GenericValue *elements) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetMembersPointer</b>(Member *members) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(Member *members, SizeType count, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetStringPointer</b>(const Ch *str) (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(StringRefType s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StringEqual</b>(const GenericValue< Encoding, SourceAllocator > &rhs) const (defined in <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> </table></div><!-- contents --> </div><!-- doc-content --> <!-- HTML footer for doxygen 1.8.7--> diff --git a/classrapidjson_1_1_generic_value.html b/classrapidjson_1_1_generic_value.html index 9d2ff57b..9c8dec36 100644 --- a/classrapidjson_1_1_generic_value.html +++ b/classrapidjson_1_1_generic_value.html @@ -330,6 +330,35 @@ RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html# <tr class="memitem:a19199230941f1fe59b5b6a27281fcd1b"><td class="memItemLeft" align="right" valign="top"><a id="a19199230941f1fe59b5b6a27281fcd1b"></a> RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> * </td><td class="memItemRight" valign="bottom"><b>SetMembersPointer</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> *members)</td></tr> <tr class="separator:a19199230941f1fe59b5b6a27281fcd1b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9125585f7d3315da5e9aec2b5587bb7d"><td class="memItemLeft" align="right" valign="top"><a id="a9125585f7d3315da5e9aec2b5587bb7d"></a> +RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> * </td><td class="memItemRight" valign="bottom"><b>DoAllocMembers</b> (<a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:a9125585f7d3315da5e9aec2b5587bb7d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad4451b6417bf2ada4d8b56ba0b3b6031"><td class="memItemLeft" align="right" valign="top"><a id="ad4451b6417bf2ada4d8b56ba0b3b6031"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoReserveMembers</b> (<a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:ad4451b6417bf2ada4d8b56ba0b3b6031"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a94105ff1a8eeb895cee95fb4eca7781b"><td class="memTemplParams" colspan="2"><a id="a94105ff1a8eeb895cee95fb4eca7781b"></a> +template<typename SourceAllocator > </td></tr> +<tr class="memitem:a94105ff1a8eeb895cee95fb4eca7781b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memTemplItemRight" valign="bottom"><b>DoFindMember</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &name)</td></tr> +<tr class="separator:a94105ff1a8eeb895cee95fb4eca7781b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a1c2162a0a065a59bf465497e5110788c"><td class="memItemLeft" align="right" valign="top"><a id="a1c2162a0a065a59bf465497e5110788c"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoClearMembers</b> ()</td></tr> +<tr class="separator:a1c2162a0a065a59bf465497e5110788c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a7e5cf02ff6ee4938b672d98258a79546"><td class="memItemLeft" align="right" valign="top"><a id="a7e5cf02ff6ee4938b672d98258a79546"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoFreeMembers</b> ()</td></tr> +<tr class="separator:a7e5cf02ff6ee4938b672d98258a79546"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a92627391393b9aa6245275593040cf0a"><td class="memItemLeft" align="right" valign="top"><a id="a92627391393b9aa6245275593040cf0a"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoAddMember</b> (<a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> &name, <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> &value, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:a92627391393b9aa6245275593040cf0a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0655ea1a6fb2cf09f845a4e50b6b961f"><td class="memItemLeft" align="right" valign="top"><a id="a0655ea1a6fb2cf09f845a4e50b6b961f"></a> +<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memItemRight" valign="bottom"><b>DoRemoveMember</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> m)</td></tr> +<tr class="separator:a0655ea1a6fb2cf09f845a4e50b6b961f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a98ce0a47cc6951eb7ee106160e3b637a"><td class="memItemLeft" align="right" valign="top"><a id="a98ce0a47cc6951eb7ee106160e3b637a"></a> +<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memItemRight" valign="bottom"><b>DoEraseMembers</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> first, <a class="el" href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> last)</td></tr> +<tr class="separator:a98ce0a47cc6951eb7ee106160e3b637a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aca2fab62d3450b24d46cc9841ed8cfef"><td class="memTemplParams" colspan="2"><a id="aca2fab62d3450b24d46cc9841ed8cfef"></a> +template<typename SourceAllocator > </td></tr> +<tr class="memitem:aca2fab62d3450b24d46cc9841ed8cfef"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>DoCopyMembers</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &rhs, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator, bool copyConstStrings)</td></tr> +<tr class="separator:aca2fab62d3450b24d46cc9841ed8cfef"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9cc2eb5c196affb861560219a4973dd0"><td class="memItemLeft" align="right" valign="top"><a id="a9cc2eb5c196affb861560219a4973dd0"></a> void </td><td class="memItemRight" valign="bottom"><b>SetArrayRaw</b> (<a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> *values, <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> <tr class="separator:a9cc2eb5c196affb861560219a4973dd0"><td class="memSeparator" colspan="2"> </td></tr> @@ -353,6 +382,12 @@ void </td><td class="memItemRight" valign="bottom"><a class="el" href="clas template<typename SourceAllocator > </td></tr> <tr class="memitem:a19e954a8f4731fea785abe0defa0ac44"><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><b>StringEqual</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &rhs) const</td></tr> <tr class="separator:a19e954a8f4731fea785abe0defa0ac44"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a2c26a47d781359b9bd0e4b7b91948bc6"><td class="memItemLeft" align="right" valign="top"><a id="a2c26a47d781359b9bd0e4b7b91948bc6"></a> +static const RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> * </td><td class="memItemRight" valign="bottom"><b>DataString</b> (const <a class="el" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> &data)</td></tr> +<tr class="separator:a2c26a47d781359b9bd0e4b7b91948bc6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0012e161e17ef746c31b1985a3e34cc6"><td class="memItemLeft" align="right" valign="top"><a id="a0012e161e17ef746c31b1985a3e34cc6"></a> +static RAPIDJSON_FORCEINLINE <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> </td><td class="memItemRight" valign="bottom"><b>DataStringLength</b> (const <a class="el" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> &data)</td></tr> +<tr class="separator:a0012e161e17ef746c31b1985a3e34cc6"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<typename Encoding, typename Allocator = RAPIDJSON_DEFAULT_ALLOCATOR><br /> diff --git a/classrapidjson_1_1_generic_value.js b/classrapidjson_1_1_generic_value.js index 0247114c..76c7e85f 100644 --- a/classrapidjson_1_1_generic_value.js +++ b/classrapidjson_1_1_generic_value.js @@ -63,6 +63,15 @@ var classrapidjson_1_1_generic_value = [ "GenericValue", "classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8", null ], [ "GenericValue", "classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e", null ], [ "~GenericValue", "classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437", null ], + [ "DoAddMember", "classrapidjson_1_1_generic_value.html#a92627391393b9aa6245275593040cf0a", null ], + [ "DoAllocMembers", "classrapidjson_1_1_generic_value.html#a9125585f7d3315da5e9aec2b5587bb7d", null ], + [ "DoClearMembers", "classrapidjson_1_1_generic_value.html#a1c2162a0a065a59bf465497e5110788c", null ], + [ "DoCopyMembers", "classrapidjson_1_1_generic_value.html#aca2fab62d3450b24d46cc9841ed8cfef", null ], + [ "DoEraseMembers", "classrapidjson_1_1_generic_value.html#a98ce0a47cc6951eb7ee106160e3b637a", null ], + [ "DoFindMember", "classrapidjson_1_1_generic_value.html#a94105ff1a8eeb895cee95fb4eca7781b", null ], + [ "DoFreeMembers", "classrapidjson_1_1_generic_value.html#a7e5cf02ff6ee4938b672d98258a79546", null ], + [ "DoRemoveMember", "classrapidjson_1_1_generic_value.html#a0655ea1a6fb2cf09f845a4e50b6b961f", null ], + [ "DoReserveMembers", "classrapidjson_1_1_generic_value.html#ad4451b6417bf2ada4d8b56ba0b3b6031", null ], [ "GetElementsPointer", "classrapidjson_1_1_generic_value.html#af2475845538fccc217d8cf3e94d6a5e0", null ], [ "GetMembersPointer", "classrapidjson_1_1_generic_value.html#a1f56ed626112cc824a93b6c29afc0cea", null ], [ "GetStringPointer", "classrapidjson_1_1_generic_value.html#ab562c68bda956d38f6c5bd1c47e20213", null ], diff --git a/classrapidjson_1_1_handler.html b/classrapidjson_1_1_handler.html index a0091d75..744d7cd3 100644 --- a/classrapidjson_1_1_handler.html +++ b/classrapidjson_1_1_handler.html @@ -119,7 +119,7 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_handler.html','');} </ul> </div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_handler_html"><div class="ttname"><a href="classrapidjson_1_1_handler.html">Handler</a></div><div class="ttdoc">Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> diff --git a/classrapidjson_1_1_memory_pool_allocator-members.html b/classrapidjson_1_1_memory_pool_allocator-members.html index 615ec3ce..19859ee7 100644 --- a/classrapidjson_1_1_memory_pool_allocator-members.html +++ b/classrapidjson_1_1_memory_pool_allocator-members.html @@ -95,17 +95,18 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_memory_pool_allocat <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">Clear</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">Free</a>(void *ptr) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29">kNeedFree</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">Malloc</a>(size_t size)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">MemoryPoolAllocator</a>(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">MemoryPoolAllocator</a>(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>MemoryPoolAllocator</b>(const MemoryPoolAllocator &rhs) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">operator!=</a>(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const MemoryPoolAllocator &rhs) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">operator==</a>(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">Realloc</a>(void *originalPtr, size_t originalSize, size_t newSize)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">Shared</a>() const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">Size</a>() const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">~MemoryPoolAllocator</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496">kRefCounted</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">Malloc</a>(size_t size)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">MemoryPoolAllocator</a>(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">MemoryPoolAllocator</a>(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MemoryPoolAllocator</b>(const MemoryPoolAllocator &rhs) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">operator!=</a>(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const MemoryPoolAllocator &rhs) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">operator==</a>(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">Realloc</a>(void *originalPtr, size_t originalSize, size_t newSize)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">Shared</a>() const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">Size</a>() const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">~MemoryPoolAllocator</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> </table></div><!-- contents --> </div><!-- doc-content --> <!-- HTML footer for doxygen 1.8.7--> diff --git a/classrapidjson_1_1_memory_pool_allocator.html b/classrapidjson_1_1_memory_pool_allocator.html index 864681db..2746ca38 100644 --- a/classrapidjson_1_1_memory_pool_allocator.html +++ b/classrapidjson_1_1_memory_pool_allocator.html @@ -160,6 +160,10 @@ Static Public Attributes</h2></td></tr> static const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29">kNeedFree</a> = false</td></tr> <tr class="memdesc:a2606d96e19bcfc9d4bf58aefe55c1b29"><td class="mdescLeft"> </td><td class="mdescRight">Tell users that no need to call <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec" title="Frees a memory block (concept Allocator)">Free()</a> with this allocator. (concept <a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a>) <br /></td></tr> <tr class="separator:a2606d96e19bcfc9d4bf58aefe55c1b29"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a285002fe7283af29c222adf63c9c6496"><td class="memItemLeft" align="right" valign="top"><a id="a285002fe7283af29c222adf63c9c6496"></a> +static const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496">kRefCounted</a> = true</td></tr> +<tr class="memdesc:a285002fe7283af29c222adf63c9c6496"><td class="mdescLeft"> </td><td class="mdescRight">Tell users that this allocator is reference counted on copy. <br /></td></tr> +<tr class="separator:a285002fe7283af29c222adf63c9c6496"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<typename BaseAllocator = CrtAllocator><br /> diff --git a/classrapidjson_1_1_std_allocator-members.html b/classrapidjson_1_1_std_allocator-members.html index 9caab3f7..54ddf31e 100644 --- a/classrapidjson_1_1_std_allocator-members.html +++ b/classrapidjson_1_1_std_allocator-members.html @@ -105,21 +105,22 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_std_allocator.html' <tr bgcolor="#f0f0f0"><td class="entry"><b>difference_type</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Free</b>(void *ptr) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> <tr><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c">kNeedFree</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Malloc</b>(size_t size) (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>max_size</b>() const RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator!=</b>(const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>operator==</b>(const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>pointer</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Realloc</b>(void *originalPtr, size_t originalSize, size_t newSize) (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reference</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>size_type</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b> (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b>() RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b>(const StdAllocator &rhs) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b>(const StdAllocator< U, BaseAllocator > &rhs) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b>(const BaseAllocator &allocator) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>value_type</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~StdAllocator</b>() RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kRefCounted</b> (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Malloc</b>(size_t size) (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>max_size</b>() const RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>operator!=</b>(const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator==</b>(const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>pointer</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Realloc</b>(void *originalPtr, size_t originalSize, size_t newSize) (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>reference</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>size_type</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b> (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b>() RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b>(const StdAllocator &rhs) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b>(const StdAllocator< U, BaseAllocator > &rhs) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b>(const BaseAllocator &allocator) RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_type</b> typedef (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>~StdAllocator</b>() RAPIDJSON_NOEXCEPT (defined in <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> </table></div><!-- contents --> </div><!-- doc-content --> <!-- HTML footer for doxygen 1.8.7--> diff --git a/classrapidjson_1_1_std_allocator.html b/classrapidjson_1_1_std_allocator.html index 9ddede0f..9a2fffe3 100644 --- a/classrapidjson_1_1_std_allocator.html +++ b/classrapidjson_1_1_std_allocator.html @@ -203,6 +203,9 @@ Static Public Attributes</h2></td></tr> static const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c">kNeedFree</a> = BaseAllocator::kNeedFree</td></tr> <tr class="memdesc:a000e9708918f813fc151020c0a03c62c"><td class="mdescLeft"> </td><td class="mdescRight">rapidjson <a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> concept <br /></td></tr> <tr class="separator:a000e9708918f813fc151020c0a03c62c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad348d692cc81c18d7c195a2c8fe2a9b2"><td class="memItemLeft" align="right" valign="top"><a id="ad348d692cc81c18d7c195a2c8fe2a9b2"></a> +static const bool </td><td class="memItemRight" valign="bottom"><b>kRefCounted</b> = internal::IsRefCounted<BaseAllocator>::<a class="el" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a></td></tr> +<tr class="separator:ad348d692cc81c18d7c195a2c8fe2a9b2"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a> Friends</h2></td></tr> diff --git a/clzll_8h_source.html b/clzll_8h_source.html index 3ce11e3a..d31c584e 100644 --- a/clzll_8h_source.html +++ b/clzll_8h_source.html @@ -161,7 +161,7 @@ $(document).ready(function(){initNavTree('clzll_8h_source.html','');}); <div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">#endif // RAPIDJSON_CLZLL_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/diyfp_8h_source.html b/diyfp_8h_source.html index d56f5f73..836d5f2d 100644 --- a/diyfp_8h_source.html +++ b/diyfp_8h_source.html @@ -347,8 +347,8 @@ $(document).ready(function(){initNavTree('diyfp_8h_source.html','');}); <div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor">#endif // RAPIDJSON_DIYFP_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/document_8h_source.html b/document_8h_source.html index d1e4091a..0dbdb6ce 100644 --- a/document_8h_source.html +++ b/document_8h_source.html @@ -136,8 +136,8 @@ $(document).ready(function(){initNavTree('document_8h_source.html','');}); <div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor">#include <iterator></span> <span class="comment">// std::random_access_iterator_tag</span></div> <div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  </div> -<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#include <utility></span> <span class="comment">// std::move</span></div> +<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#include <map></span> <span class="comment">// std::multimap</span></div> <div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  </div> <div class="line"><a name="l00053"></a><span class="lineno"> 53</span> RAPIDJSON_NAMESPACE_BEGIN</div> @@ -822,2145 +822,2414 @@ $(document).ready(function(){initNavTree('document_8h_source.html','');}); <div class="line"><a name="l00732"></a><span class="lineno"> 732</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> <div class="line"><a name="l00733"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac"> 733</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding,SourceAllocator></a>& rhs, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator, <span class="keywordtype">bool</span> copyConstStrings = <span class="keyword">false</span>) {</div> <div class="line"><a name="l00734"></a><span class="lineno"> 734</span>  <span class="keywordflow">switch</span> (rhs.GetType()) {</div> -<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>: {</div> -<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count = rhs.data_.o.size;</div> -<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* lm = reinterpret_cast<Member*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>)));</div> -<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>  <span class="keyword">const</span> <span class="keyword">typename</span> <a class="code" href="classrapidjson_1_1_generic_member.html">GenericValue<Encoding,SourceAllocator>::Member</a>* rm = rhs.GetMembersPointer();</div> -<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++) {</div> -<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  <span class="keyword">new</span> (&lm[i].<a class="code" href="classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607">name</a>) <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(rm[i].name, allocator, copyConstStrings);</div> -<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>  <span class="keyword">new</span> (&lm[i].<a class="code" href="classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6">value</a>) <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(rm[i].value, allocator, copyConstStrings);</div> -<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>  }</div> -<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>  data_.f.flags = kObjectFlag;</div> -<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>  data_.o.size = data_.o.capacity = count;</div> -<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>  SetMembersPointer(lm);</div> -<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>  }</div> -<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>: {</div> -<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count = rhs.data_.a.size;</div> -<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* le = reinterpret_cast<GenericValue*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>)));</div> -<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>  <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding,SourceAllocator></a>* re = rhs.GetElementsPointer();</div> -<div class="line"><a name="l00752"></a><span class="lineno"> 752</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++)</div> -<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>  <span class="keyword">new</span> (&le[i]) <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(re[i], allocator, copyConstStrings);</div> -<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>  data_.f.flags = kArrayFlag;</div> -<div class="line"><a name="l00755"></a><span class="lineno"> 755</span>  data_.a.size = data_.a.capacity = count;</div> -<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>  SetElementsPointer(le);</div> -<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>  }</div> -<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> -<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>  <span class="keywordflow">if</span> (rhs.data_.f.flags == kConstStringFlag && !copyConstStrings) {</div> -<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>  data_.f.flags = rhs.data_.f.flags;</div> -<div class="line"><a name="l00762"></a><span class="lineno"> 762</span>  data_ = *reinterpret_cast<const Data*>(&rhs.data_);</div> -<div class="line"><a name="l00763"></a><span class="lineno"> 763</span>  }</div> -<div class="line"><a name="l00764"></a><span class="lineno"> 764</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l00765"></a><span class="lineno"> 765</span>  SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs.GetString(), rhs.GetStringLength()), allocator);</div> -<div class="line"><a name="l00766"></a><span class="lineno"> 766</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00767"></a><span class="lineno"> 767</span>  <span class="keywordflow">default</span>:</div> -<div class="line"><a name="l00768"></a><span class="lineno"> 768</span>  data_.f.flags = rhs.data_.f.flags;</div> -<div class="line"><a name="l00769"></a><span class="lineno"> 769</span>  data_ = *reinterpret_cast<const Data*>(&rhs.data_);</div> -<div class="line"><a name="l00770"></a><span class="lineno"> 770</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00771"></a><span class="lineno"> 771</span>  }</div> -<div class="line"><a name="l00772"></a><span class="lineno"> 772</span>  }</div> -<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="comment"></span> </div> -<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> <span class="comment"> //! Constructor for boolean value.</span></div> -<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="comment"></span><span class="comment"> /*! \param b Boolean value</span></div> -<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> <span class="comment"> \note This constructor is limited to \em real boolean values and rejects</span></div> -<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="comment"> implicitly converted types like arbitrary pointers. Use an explicit cast</span></div> -<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="comment"> to \c bool, if you want to construct a boolean JSON value in such cases.</span></div> -<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="preprocessor">#ifndef RAPIDJSON_DOXYGEN_RUNNING // hide SFINAE from Doxygen</span></div> -<div class="line"><a name="l00781"></a><span class="lineno"> 781</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l00782"></a><span class="lineno"> 782</span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(T b, RAPIDJSON_ENABLEIF((internal::IsSame<bool, T>))) RAPIDJSON_NOEXCEPT <span class="comment">// See #472</span></div> -<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00784"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9"> 784</a></span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a>(<span class="keywordtype">bool</span> b) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00786"></a><span class="lineno"> 786</span>  : data_() {</div> -<div class="line"><a name="l00787"></a><span class="lineno"> 787</span>  <span class="comment">// safe-guard against failing SFINAE</span></div> -<div class="line"><a name="l00788"></a><span class="lineno"> 788</span>  <a class="code" href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a>((<a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">internal::IsSame<bool,T>::Value</a>));</div> -<div class="line"><a name="l00789"></a><span class="lineno"> 789</span>  data_.f.flags = b ? kTrueFlag : kFalseFlag;</div> -<div class="line"><a name="l00790"></a><span class="lineno"> 790</span>  }</div> -<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="comment"></span> </div> -<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="comment"> //! Constructor for int value.</span></div> -<div class="line"><a name="l00793"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19"> 793</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">GenericValue</a>(<span class="keywordtype">int</span> i) RAPIDJSON_NOEXCEPT : data_() {</div> -<div class="line"><a name="l00794"></a><span class="lineno"> 794</span>  data_.n.i64 = i;</div> -<div class="line"><a name="l00795"></a><span class="lineno"> 795</span>  data_.f.flags = (i >= 0) ? (kNumberIntFlag | kUintFlag | kUint64Flag) : kNumberIntFlag;</div> -<div class="line"><a name="l00796"></a><span class="lineno"> 796</span>  }</div> -<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="comment"></span> </div> -<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="comment"> //! Constructor for unsigned value.</span></div> -<div class="line"><a name="l00799"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6"> 799</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">GenericValue</a>(<span class="keywordtype">unsigned</span> u) RAPIDJSON_NOEXCEPT : data_() {</div> -<div class="line"><a name="l00800"></a><span class="lineno"> 800</span>  data_.n.u64 = u; </div> -<div class="line"><a name="l00801"></a><span class="lineno"> 801</span>  data_.f.flags = (u & 0x80000000) ? kNumberUintFlag : (kNumberUintFlag | kIntFlag | kInt64Flag);</div> -<div class="line"><a name="l00802"></a><span class="lineno"> 802</span>  }</div> -<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="comment"></span> </div> -<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="comment"> //! Constructor for int64_t value.</span></div> -<div class="line"><a name="l00805"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8"> 805</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT : data_() {</div> -<div class="line"><a name="l00806"></a><span class="lineno"> 806</span>  data_.n.i64 = i64;</div> -<div class="line"><a name="l00807"></a><span class="lineno"> 807</span>  data_.f.flags = kNumberInt64Flag;</div> -<div class="line"><a name="l00808"></a><span class="lineno"> 808</span>  <span class="keywordflow">if</span> (i64 >= 0) {</div> -<div class="line"><a name="l00809"></a><span class="lineno"> 809</span>  data_.f.flags |= kNumberUint64Flag;</div> -<div class="line"><a name="l00810"></a><span class="lineno"> 810</span>  <span class="keywordflow">if</span> (!(static_cast<uint64_t>(i64) & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x00000000)))</div> -<div class="line"><a name="l00811"></a><span class="lineno"> 811</span>  data_.f.flags |= kUintFlag;</div> -<div class="line"><a name="l00812"></a><span class="lineno"> 812</span>  <span class="keywordflow">if</span> (!(static_cast<uint64_t>(i64) & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> -<div class="line"><a name="l00813"></a><span class="lineno"> 813</span>  data_.f.flags |= kIntFlag;</div> -<div class="line"><a name="l00814"></a><span class="lineno"> 814</span>  }</div> -<div class="line"><a name="l00815"></a><span class="lineno"> 815</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (i64 >= static_cast<int64_t>(<a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> -<div class="line"><a name="l00816"></a><span class="lineno"> 816</span>  data_.f.flags |= kIntFlag;</div> -<div class="line"><a name="l00817"></a><span class="lineno"> 817</span>  }</div> -<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="comment"></span> </div> -<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="comment"> //! Constructor for uint64_t value.</span></div> -<div class="line"><a name="l00820"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563"> 820</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT : data_() {</div> -<div class="line"><a name="l00821"></a><span class="lineno"> 821</span>  data_.n.u64 = u64;</div> -<div class="line"><a name="l00822"></a><span class="lineno"> 822</span>  data_.f.flags = kNumberUint64Flag;</div> -<div class="line"><a name="l00823"></a><span class="lineno"> 823</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0x80000000, 0x00000000)))</div> -<div class="line"><a name="l00824"></a><span class="lineno"> 824</span>  data_.f.flags |= kInt64Flag;</div> -<div class="line"><a name="l00825"></a><span class="lineno"> 825</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x00000000)))</div> -<div class="line"><a name="l00826"></a><span class="lineno"> 826</span>  data_.f.flags |= kUintFlag;</div> -<div class="line"><a name="l00827"></a><span class="lineno"> 827</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> -<div class="line"><a name="l00828"></a><span class="lineno"> 828</span>  data_.f.flags |= kIntFlag;</div> -<div class="line"><a name="l00829"></a><span class="lineno"> 829</span>  }</div> -<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> <span class="comment"></span> </div> -<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="comment"> //! Constructor for double value.</span></div> -<div class="line"><a name="l00832"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a"> 832</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">GenericValue</a>(<span class="keywordtype">double</span> d) RAPIDJSON_NOEXCEPT : data_() { data_.n.d = d; data_.f.flags = kNumberDoubleFlag; }</div> -<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="comment"></span> </div> -<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="comment"> //! Constructor for float value.</span></div> -<div class="line"><a name="l00835"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b"> 835</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">GenericValue</a>(<span class="keywordtype">float</span> f) RAPIDJSON_NOEXCEPT : data_() { data_.n.d = static_cast<double>(f); data_.f.flags = kNumberDoubleFlag; }</div> -<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="comment"></span> </div> -<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="comment"> //! Constructor for constant string (i.e. do not make a copy of string)</span></div> -<div class="line"><a name="l00838"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1"> 838</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) RAPIDJSON_NOEXCEPT : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length)); }</div> -<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="comment"></span> </div> -<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="comment"> //! Constructor for constant string (i.e. do not make a copy of string)</span></div> -<div class="line"><a name="l00841"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941"> 841</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">GenericValue</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s) RAPIDJSON_NOEXCEPT : data_() { SetStringRaw(s); }</div> -<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="comment"></span> </div> -<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> <span class="comment"> //! Constructor for copy-string (i.e. do make a copy of string)</span></div> -<div class="line"><a name="l00844"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2"> 844</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length), allocator); }</div> +<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>:</div> +<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>  DoCopyMembers(rhs, allocator, copyConstStrings);</div> +<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>: {</div> +<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count = rhs.data_.a.size;</div> +<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* le = reinterpret_cast<GenericValue*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>)));</div> +<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>  <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding,SourceAllocator></a>* re = rhs.GetElementsPointer();</div> +<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++)</div> +<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>  <span class="keyword">new</span> (&le[i]) <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(re[i], allocator, copyConstStrings);</div> +<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>  data_.f.flags = kArrayFlag;</div> +<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>  data_.a.size = data_.a.capacity = count;</div> +<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>  SetElementsPointer(le);</div> +<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>  }</div> +<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> +<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>  <span class="keywordflow">if</span> (rhs.data_.f.flags == kConstStringFlag && !copyConstStrings) {</div> +<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>  data_.f.flags = rhs.data_.f.flags;</div> +<div class="line"><a name="l00752"></a><span class="lineno"> 752</span>  data_ = *reinterpret_cast<const Data*>(&rhs.data_);</div> +<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>  }</div> +<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l00755"></a><span class="lineno"> 755</span>  SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs.GetString(), rhs.GetStringLength()), allocator);</div> +<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>  <span class="keywordflow">default</span>:</div> +<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>  data_.f.flags = rhs.data_.f.flags;</div> +<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>  data_ = *reinterpret_cast<const Data*>(&rhs.data_);</div> +<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>  }</div> +<div class="line"><a name="l00762"></a><span class="lineno"> 762</span>  }</div> +<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="comment"></span> </div> +<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <span class="comment"> //! Constructor for boolean value.</span></div> +<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="comment"></span><span class="comment"> /*! \param b Boolean value</span></div> +<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="comment"> \note This constructor is limited to \em real boolean values and rejects</span></div> +<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="comment"> implicitly converted types like arbitrary pointers. Use an explicit cast</span></div> +<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <span class="comment"> to \c bool, if you want to construct a boolean JSON value in such cases.</span></div> +<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <span class="preprocessor">#ifndef RAPIDJSON_DOXYGEN_RUNNING // hide SFINAE from Doxygen</span></div> +<div class="line"><a name="l00771"></a><span class="lineno"> 771</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l00772"></a><span class="lineno"> 772</span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(T b, RAPIDJSON_ENABLEIF((internal::IsSame<bool, T>))) RAPIDJSON_NOEXCEPT <span class="comment">// See #472</span></div> +<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00774"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9"> 774</a></span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a>(<span class="keywordtype">bool</span> b) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00776"></a><span class="lineno"> 776</span>  : data_() {</div> +<div class="line"><a name="l00777"></a><span class="lineno"> 777</span>  <span class="comment">// safe-guard against failing SFINAE</span></div> +<div class="line"><a name="l00778"></a><span class="lineno"> 778</span>  <a class="code" href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a>((<a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">internal::IsSame<bool,T>::Value</a>));</div> +<div class="line"><a name="l00779"></a><span class="lineno"> 779</span>  data_.f.flags = b ? kTrueFlag : kFalseFlag;</div> +<div class="line"><a name="l00780"></a><span class="lineno"> 780</span>  }</div> +<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="comment"></span> </div> +<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> <span class="comment"> //! Constructor for int value.</span></div> +<div class="line"><a name="l00783"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19"> 783</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">GenericValue</a>(<span class="keywordtype">int</span> i) RAPIDJSON_NOEXCEPT : data_() {</div> +<div class="line"><a name="l00784"></a><span class="lineno"> 784</span>  data_.n.i64 = i;</div> +<div class="line"><a name="l00785"></a><span class="lineno"> 785</span>  data_.f.flags = (i >= 0) ? (kNumberIntFlag | kUintFlag | kUint64Flag) : kNumberIntFlag;</div> +<div class="line"><a name="l00786"></a><span class="lineno"> 786</span>  }</div> +<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> <span class="comment"></span> </div> +<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> <span class="comment"> //! Constructor for unsigned value.</span></div> +<div class="line"><a name="l00789"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6"> 789</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">GenericValue</a>(<span class="keywordtype">unsigned</span> u) RAPIDJSON_NOEXCEPT : data_() {</div> +<div class="line"><a name="l00790"></a><span class="lineno"> 790</span>  data_.n.u64 = u; </div> +<div class="line"><a name="l00791"></a><span class="lineno"> 791</span>  data_.f.flags = (u & 0x80000000) ? kNumberUintFlag : (kNumberUintFlag | kIntFlag | kInt64Flag);</div> +<div class="line"><a name="l00792"></a><span class="lineno"> 792</span>  }</div> +<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="comment"></span> </div> +<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> <span class="comment"> //! Constructor for int64_t value.</span></div> +<div class="line"><a name="l00795"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8"> 795</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT : data_() {</div> +<div class="line"><a name="l00796"></a><span class="lineno"> 796</span>  data_.n.i64 = i64;</div> +<div class="line"><a name="l00797"></a><span class="lineno"> 797</span>  data_.f.flags = kNumberInt64Flag;</div> +<div class="line"><a name="l00798"></a><span class="lineno"> 798</span>  <span class="keywordflow">if</span> (i64 >= 0) {</div> +<div class="line"><a name="l00799"></a><span class="lineno"> 799</span>  data_.f.flags |= kNumberUint64Flag;</div> +<div class="line"><a name="l00800"></a><span class="lineno"> 800</span>  <span class="keywordflow">if</span> (!(static_cast<uint64_t>(i64) & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x00000000)))</div> +<div class="line"><a name="l00801"></a><span class="lineno"> 801</span>  data_.f.flags |= kUintFlag;</div> +<div class="line"><a name="l00802"></a><span class="lineno"> 802</span>  <span class="keywordflow">if</span> (!(static_cast<uint64_t>(i64) & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> +<div class="line"><a name="l00803"></a><span class="lineno"> 803</span>  data_.f.flags |= kIntFlag;</div> +<div class="line"><a name="l00804"></a><span class="lineno"> 804</span>  }</div> +<div class="line"><a name="l00805"></a><span class="lineno"> 805</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (i64 >= static_cast<int64_t>(<a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> +<div class="line"><a name="l00806"></a><span class="lineno"> 806</span>  data_.f.flags |= kIntFlag;</div> +<div class="line"><a name="l00807"></a><span class="lineno"> 807</span>  }</div> +<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="comment"></span> </div> +<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> <span class="comment"> //! Constructor for uint64_t value.</span></div> +<div class="line"><a name="l00810"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563"> 810</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT : data_() {</div> +<div class="line"><a name="l00811"></a><span class="lineno"> 811</span>  data_.n.u64 = u64;</div> +<div class="line"><a name="l00812"></a><span class="lineno"> 812</span>  data_.f.flags = kNumberUint64Flag;</div> +<div class="line"><a name="l00813"></a><span class="lineno"> 813</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0x80000000, 0x00000000)))</div> +<div class="line"><a name="l00814"></a><span class="lineno"> 814</span>  data_.f.flags |= kInt64Flag;</div> +<div class="line"><a name="l00815"></a><span class="lineno"> 815</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x00000000)))</div> +<div class="line"><a name="l00816"></a><span class="lineno"> 816</span>  data_.f.flags |= kUintFlag;</div> +<div class="line"><a name="l00817"></a><span class="lineno"> 817</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> +<div class="line"><a name="l00818"></a><span class="lineno"> 818</span>  data_.f.flags |= kIntFlag;</div> +<div class="line"><a name="l00819"></a><span class="lineno"> 819</span>  }</div> +<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="comment"></span> </div> +<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="comment"> //! Constructor for double value.</span></div> +<div class="line"><a name="l00822"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a"> 822</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">GenericValue</a>(<span class="keywordtype">double</span> d) RAPIDJSON_NOEXCEPT : data_() { data_.n.d = d; data_.f.flags = kNumberDoubleFlag; }</div> +<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="comment"></span> </div> +<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="comment"> //! Constructor for float value.</span></div> +<div class="line"><a name="l00825"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b"> 825</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">GenericValue</a>(<span class="keywordtype">float</span> f) RAPIDJSON_NOEXCEPT : data_() { data_.n.d = static_cast<double>(f); data_.f.flags = kNumberDoubleFlag; }</div> +<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="comment"></span> </div> +<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="comment"> //! Constructor for constant string (i.e. do not make a copy of string)</span></div> +<div class="line"><a name="l00828"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1"> 828</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) RAPIDJSON_NOEXCEPT : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length)); }</div> +<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="comment"></span> </div> +<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> <span class="comment"> //! Constructor for constant string (i.e. do not make a copy of string)</span></div> +<div class="line"><a name="l00831"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941"> 831</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">GenericValue</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s) RAPIDJSON_NOEXCEPT : data_() { SetStringRaw(s); }</div> +<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="comment"></span> </div> +<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="comment"> //! Constructor for copy-string (i.e. do make a copy of string)</span></div> +<div class="line"><a name="l00834"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2"> 834</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length), allocator); }</div> +<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="comment"></span> </div> +<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="comment"> //! Constructor for copy-string (i.e. do make a copy of string)</span></div> +<div class="line"><a name="l00837"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f"> 837</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>*s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> +<div class="line"><a name="l00838"></a><span class="lineno"> 838</span>  </div> +<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="comment"> //! Constructor for copy-string from a string object (i.e. do make a copy of string)</span></div> +<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> <span class="comment"></span><span class="comment"> /*! \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> +<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00843"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc"> 843</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">GenericValue</a>(<span class="keyword">const</span> std::basic_string<Ch>& s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> +<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00845"></a><span class="lineno"> 845</span> <span class="comment"></span> </div> -<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="comment"> //! Constructor for copy-string (i.e. do make a copy of string)</span></div> -<div class="line"><a name="l00847"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f"> 847</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>*s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> -<div class="line"><a name="l00848"></a><span class="lineno"> 848</span>  </div> -<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="comment"> //! Constructor for copy-string from a string object (i.e. do make a copy of string)</span></div> -<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> <span class="comment"></span><span class="comment"> /*! \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> -<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00853"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc"> 853</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">GenericValue</a>(<span class="keyword">const</span> std::basic_string<Ch>& s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> -<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <span class="comment"></span> </div> -<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="comment"> //! Constructor for Array.</span></div> -<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="comment"> \param a An array obtained by \c GetArray().</span></div> -<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="comment"> \note \c Array is always pass-by-value.</span></div> -<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <span class="comment"> \note the source array is moved into this value and the sourec array becomes empty.</span></div> -<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00862"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8"> 862</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a>(<a class="code" href="classrapidjson_1_1_generic_array.html">Array</a> a) RAPIDJSON_NOEXCEPT : data_(a.value_.data_) {</div> -<div class="line"><a name="l00863"></a><span class="lineno"> 863</span>  a.value_.data_ = Data();</div> -<div class="line"><a name="l00864"></a><span class="lineno"> 864</span>  a.value_.data_.f.flags = kArrayFlag;</div> -<div class="line"><a name="l00865"></a><span class="lineno"> 865</span>  }</div> -<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> <span class="comment"></span> </div> -<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="comment"> //! Constructor for Object.</span></div> -<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="comment"> \param o An object obtained by \c GetObject().</span></div> -<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="comment"> \note \c Object is always pass-by-value.</span></div> -<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> <span class="comment"> \note the source object is moved into this value and the sourec object becomes empty.</span></div> -<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00873"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e"> 873</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">GenericValue</a>(<a class="code" href="classrapidjson_1_1_generic_object.html">Object</a> o) RAPIDJSON_NOEXCEPT : data_(o.value_.data_) {</div> -<div class="line"><a name="l00874"></a><span class="lineno"> 874</span>  o.value_.data_ = Data();</div> -<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>  o.value_.data_.f.flags = kObjectFlag;</div> -<div class="line"><a name="l00876"></a><span class="lineno"> 876</span>  }</div> -<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="comment"></span> </div> -<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="comment"> //! Destructor.</span></div> -<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="comment"></span><span class="comment"> /*! Need to destruct elements of array, members of object, or copy-string.</span></div> -<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00881"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437"> 881</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>() {</div> -<div class="line"><a name="l00882"></a><span class="lineno"> 882</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree) { <span class="comment">// Shortcut by Allocator's trait</span></div> -<div class="line"><a name="l00883"></a><span class="lineno"> 883</span>  <span class="keywordflow">switch</span>(data_.f.flags) {</div> -<div class="line"><a name="l00884"></a><span class="lineno"> 884</span>  <span class="keywordflow">case</span> kArrayFlag:</div> -<div class="line"><a name="l00885"></a><span class="lineno"> 885</span>  {</div> -<div class="line"><a name="l00886"></a><span class="lineno"> 886</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* e = GetElementsPointer();</div> -<div class="line"><a name="l00887"></a><span class="lineno"> 887</span>  <span class="keywordflow">for</span> (<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* v = e; v != e + data_.a.size; ++v)</div> -<div class="line"><a name="l00888"></a><span class="lineno"> 888</span>  v->~GenericValue();</div> -<div class="line"><a name="l00889"></a><span class="lineno"> 889</span>  Allocator::Free(e);</div> -<div class="line"><a name="l00890"></a><span class="lineno"> 890</span>  }</div> -<div class="line"><a name="l00891"></a><span class="lineno"> 891</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00892"></a><span class="lineno"> 892</span>  </div> -<div class="line"><a name="l00893"></a><span class="lineno"> 893</span>  <span class="keywordflow">case</span> kObjectFlag:</div> -<div class="line"><a name="l00894"></a><span class="lineno"> 894</span>  <span class="keywordflow">for</span> (<a class="code" href="classrapidjson_1_1_generic_member_iterator.html">MemberIterator</a> m = MemberBegin(); m != MemberEnd(); ++m)</div> -<div class="line"><a name="l00895"></a><span class="lineno"> 895</span>  m->~Member();</div> -<div class="line"><a name="l00896"></a><span class="lineno"> 896</span>  Allocator::Free(GetMembersPointer());</div> -<div class="line"><a name="l00897"></a><span class="lineno"> 897</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00898"></a><span class="lineno"> 898</span>  </div> -<div class="line"><a name="l00899"></a><span class="lineno"> 899</span>  <span class="keywordflow">case</span> kCopyStringFlag:</div> -<div class="line"><a name="l00900"></a><span class="lineno"> 900</span>  Allocator::Free(const_cast<Ch*>(GetStringPointer()));</div> -<div class="line"><a name="l00901"></a><span class="lineno"> 901</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00902"></a><span class="lineno"> 902</span>  </div> -<div class="line"><a name="l00903"></a><span class="lineno"> 903</span>  <span class="keywordflow">default</span>:</div> -<div class="line"><a name="l00904"></a><span class="lineno"> 904</span>  <span class="keywordflow">break</span>; <span class="comment">// Do nothing for other types.</span></div> -<div class="line"><a name="l00905"></a><span class="lineno"> 905</span>  }</div> -<div class="line"><a name="l00906"></a><span class="lineno"> 906</span>  }</div> -<div class="line"><a name="l00907"></a><span class="lineno"> 907</span>  }</div> -<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="comment"></span> </div> -<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="comment"> //!@name Assignment operators</span></div> -<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> <span class="comment"> //! Assignment with move semantics.</span></div> -<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> <span class="comment"></span><span class="comment"> /*! \param rhs Source of the assignment. It will become a null value after assignment.</span></div> -<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00917"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac"> 917</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& <a class="code" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">operator=</a>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& rhs) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00918"></a><span class="lineno"> 918</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a>(<span class="keyword">this</span> != &rhs)) {</div> -<div class="line"><a name="l00919"></a><span class="lineno"> 919</span>  <span class="comment">// Can't destroy "this" before assigning "rhs", otherwise "rhs"</span></div> -<div class="line"><a name="l00920"></a><span class="lineno"> 920</span>  <span class="comment">// could be used after free if it's an sub-Value of "this",</span></div> -<div class="line"><a name="l00921"></a><span class="lineno"> 921</span>  <span class="comment">// hence the temporary danse.</span></div> -<div class="line"><a name="l00922"></a><span class="lineno"> 922</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> temp;</div> -<div class="line"><a name="l00923"></a><span class="lineno"> 923</span>  temp.<a class="code" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(rhs);</div> -<div class="line"><a name="l00924"></a><span class="lineno"> 924</span>  this->~<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>();</div> -<div class="line"><a name="l00925"></a><span class="lineno"> 925</span>  RawAssign(temp);</div> -<div class="line"><a name="l00926"></a><span class="lineno"> 926</span>  }</div> -<div class="line"><a name="l00927"></a><span class="lineno"> 927</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00928"></a><span class="lineno"> 928</span>  }</div> -<div class="line"><a name="l00929"></a><span class="lineno"> 929</span>  </div> -<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> <span class="comment"> //! Move assignment in C++11</span></div> -<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& operator=(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>&& rhs) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00933"></a><span class="lineno"> 933</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = rhs.Move();</div> -<div class="line"><a name="l00934"></a><span class="lineno"> 934</span>  }</div> -<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> <span class="comment"></span> </div> -<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> <span class="comment"> //! Assignment of constant string reference (no copy)</span></div> -<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> <span class="comment"></span><span class="comment"> /*! \param str Constant string reference to be assigned</span></div> -<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type assignment overload below.</span></div> -<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> <span class="comment"> \see GenericStringRef, operator=(T)</span></div> -<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00942"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c"> 942</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& <a class="code" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">operator=</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> str) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00943"></a><span class="lineno"> 943</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> s(str);</div> -<div class="line"><a name="l00944"></a><span class="lineno"> 944</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = s;</div> -<div class="line"><a name="l00945"></a><span class="lineno"> 945</span>  }</div> -<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="comment"></span> </div> -<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> <span class="comment"> //! Assignment with primitive types.</span></div> -<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> -<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> <span class="comment"> \param value The value to be assigned.</span></div> -<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="comment"></span> </div> -<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> -<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> -<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> -<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> <span class="comment"> \ref SetString(const Ch*, Allocator&) (for copying) or</span></div> -<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="comment"> \ref StringRef() (to explicitly mark the pointer as constant) instead.</span></div> -<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> -<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> <span class="comment"> use \ref SetBool() instead.</span></div> -<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l00960"></a><span class="lineno"> 960</span>  RAPIDJSON_DISABLEIF_RETURN((internal::IsPointer<T>), (<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>&))</div> -<div class="line"><a name="l00961"></a><span class="lineno"> 961</span>  operator=(T value) {</div> -<div class="line"><a name="l00962"></a><span class="lineno"> 962</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> v(value);</div> -<div class="line"><a name="l00963"></a><span class="lineno"> 963</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = v;</div> -<div class="line"><a name="l00964"></a><span class="lineno"> 964</span>  }</div> -<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="comment"></span> </div> -<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="comment"> //! Deep-copy assignment from Value</span></div> -<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="comment"></span><span class="comment"> /*! Assigns a \b copy of the Value to the current Value object</span></div> -<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="comment"> \tparam SourceAllocator Allocator type of \c rhs</span></div> -<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="comment"> \param rhs Value to copy from (read-only)</span></div> -<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> <span class="comment"> \param allocator Allocator to use for copying</span></div> -<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> <span class="comment"> \param copyConstStrings Force copying of constant strings (e.g. referencing an in-situ buffer)</span></div> -<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00973"></a><span class="lineno"> 973</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l00974"></a><span class="lineno"> 974</span>  GenericValue& CopyFrom(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator, <span class="keywordtype">bool</span> copyConstStrings = <span class="keyword">false</span>) {</div> -<div class="line"><a name="l00975"></a><span class="lineno"> 975</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(static_cast<void*>(<span class="keyword">this</span>) != static_cast<void const*>(&rhs));</div> -<div class="line"><a name="l00976"></a><span class="lineno"> 976</span>  this->~GenericValue();</div> -<div class="line"><a name="l00977"></a><span class="lineno"> 977</span>  <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(rhs, allocator, copyConstStrings);</div> -<div class="line"><a name="l00978"></a><span class="lineno"> 978</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00979"></a><span class="lineno"> 979</span>  }</div> -<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="comment"></span> </div> -<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> <span class="comment"> //! Exchange the contents of this value with those of other.</span></div> -<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="comment"> \param other Another value.</span></div> -<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> <span class="comment"> \note Constant complexity.</span></div> -<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00986"></a><span class="lineno"> 986</span>  GenericValue& Swap(GenericValue& other) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00987"></a><span class="lineno"> 987</span>  GenericValue temp;</div> -<div class="line"><a name="l00988"></a><span class="lineno"> 988</span>  temp.RawAssign(*<span class="keyword">this</span>);</div> -<div class="line"><a name="l00989"></a><span class="lineno"> 989</span>  RawAssign(other);</div> -<div class="line"><a name="l00990"></a><span class="lineno"> 990</span>  other.RawAssign(temp);</div> -<div class="line"><a name="l00991"></a><span class="lineno"> 991</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00992"></a><span class="lineno"> 992</span>  }</div> -<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="comment"></span> </div> -<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="comment"> //! free-standing swap function helper</span></div> -<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="comment"> Helper function to enable support for common swap implementation pattern based on \c std::swap:</span></div> -<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="comment"> void swap(MyClass& a, MyClass& b) {</span></div> -<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="comment"> using std::swap;</span></div> -<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="comment"> swap(a.value, b.value);</span></div> -<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> <span class="comment"> // ...</span></div> -<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="comment"> }</span></div> -<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="comment"> \see Swap()</span></div> -<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>  <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> swap(GenericValue& a, GenericValue& b) RAPIDJSON_NOEXCEPT { a.Swap(b); }</div> -<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="comment"></span> </div> -<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="comment"> //! Prepare Value for move semantics</span></div> -<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <span class="comment"></span><span class="comment"> /*! \return *this */</span></div> -<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>  GenericValue& Move() RAPIDJSON_NOEXCEPT { <span class="keywordflow">return</span> *<span class="keyword">this</span>; }<span class="comment"></span></div> -<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="comment"> //!@name Equal-to and not-equal-to operators</span></div> -<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="comment"></span><span class="comment"> //! Equal-to operator</span></div> -<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> <span class="comment"> \note If an object contains duplicated named member, comparing equality with any object is always \c false.</span></div> -<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> <span class="comment"> \note Complexity is quadratic in Object's member number and linear for the rest (number of all values in the subtree and total lengths of all strings).</span></div> -<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs)<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>  <span class="keyword">typedef</span> GenericValue<Encoding, SourceAllocator> RhsType;</div> -<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>  <span class="keywordflow">if</span> (GetType() != rhs.GetType())</div> -<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>  </div> -<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>  <span class="keywordflow">switch</span> (GetType()) {</div> -<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>: <span class="comment">// Warning: O(n^2) inner-loop</span></div> -<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>  <span class="keywordflow">if</span> (data_.o.size != rhs.data_.o.size)</div> -<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>; </div> -<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>  <span class="keywordflow">for</span> (ConstMemberIterator lhsMemberItr = MemberBegin(); lhsMemberItr != MemberEnd(); ++lhsMemberItr) {</div> -<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>  <span class="keyword">typename</span> RhsType::ConstMemberIterator rhsMemberItr = rhs.FindMember(lhsMemberItr->name);</div> -<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>  <span class="keywordflow">if</span> (rhsMemberItr == rhs.MemberEnd() || lhsMemberItr->value != rhsMemberItr->value)</div> -<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>  }</div> -<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>  </div> -<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>:</div> -<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>  <span class="keywordflow">if</span> (data_.a.size != rhs.data_.a.size)</div> -<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < data_.a.size; i++)</div> -<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>  <span class="keywordflow">if</span> ((*<span class="keyword">this</span>)[i] != rhs[i])</div> -<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>  </div> -<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> -<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>  <span class="keywordflow">return</span> StringEqual(rhs);</div> -<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>  </div> -<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>:</div> -<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>  <span class="keywordflow">if</span> (IsDouble() || rhs.IsDouble()) {</div> -<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>  <span class="keywordtype">double</span> a = GetDouble(); <span class="comment">// May convert from integer to double.</span></div> -<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>  <span class="keywordtype">double</span> b = rhs.GetDouble(); <span class="comment">// Ditto</span></div> -<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>  <span class="keywordflow">return</span> a >= b && a <= b; <span class="comment">// Prevent -Wfloat-equal</span></div> -<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>  }</div> -<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>  <span class="keywordflow">return</span> data_.n.u64 == rhs.data_.n.u64;</div> -<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>  </div> -<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>  <span class="keywordflow">default</span>:</div> -<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>  }</div> -<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>  }</div> -<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="comment"></span> </div> -<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <span class="comment"> //! Equal-to operator with const C-string pointer</span></div> -<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="comment"></span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Ch* rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs)); }</div> -<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>  </div> -<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="comment"> //! Equal-to operator with string object</span></div> -<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="comment"></span><span class="comment"> /*! \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> -<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> std::basic_string<Ch>& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs)); }</div> -<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="comment"> //! Constructor for Array.</span></div> +<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> <span class="comment"> \param a An array obtained by \c GetArray().</span></div> +<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="comment"> \note \c Array is always pass-by-value.</span></div> +<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="comment"> \note the source array is moved into this value and the sourec array becomes empty.</span></div> +<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00852"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8"> 852</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a>(<a class="code" href="classrapidjson_1_1_generic_array.html">Array</a> a) RAPIDJSON_NOEXCEPT : data_(a.value_.data_) {</div> +<div class="line"><a name="l00853"></a><span class="lineno"> 853</span>  a.value_.data_ = Data();</div> +<div class="line"><a name="l00854"></a><span class="lineno"> 854</span>  a.value_.data_.f.flags = kArrayFlag;</div> +<div class="line"><a name="l00855"></a><span class="lineno"> 855</span>  }</div> +<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="comment"></span> </div> +<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="comment"> //! Constructor for Object.</span></div> +<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="comment"> \param o An object obtained by \c GetObject().</span></div> +<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <span class="comment"> \note \c Object is always pass-by-value.</span></div> +<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> <span class="comment"> \note the source object is moved into this value and the sourec object becomes empty.</span></div> +<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00863"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e"> 863</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">GenericValue</a>(<a class="code" href="classrapidjson_1_1_generic_object.html">Object</a> o) RAPIDJSON_NOEXCEPT : data_(o.value_.data_) {</div> +<div class="line"><a name="l00864"></a><span class="lineno"> 864</span>  o.value_.data_ = Data();</div> +<div class="line"><a name="l00865"></a><span class="lineno"> 865</span>  o.value_.data_.f.flags = kObjectFlag;</div> +<div class="line"><a name="l00866"></a><span class="lineno"> 866</span>  }</div> +<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="comment"></span> </div> +<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="comment"> //! Destructor.</span></div> +<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="comment"></span><span class="comment"> /*! Need to destruct elements of array, members of object, or copy-string.</span></div> +<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00871"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437"> 871</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>() {</div> +<div class="line"><a name="l00872"></a><span class="lineno"> 872</span>  <span class="comment">// With RAPIDJSON_USE_MEMBERSMAP, the maps need to be destroyed to release</span></div> +<div class="line"><a name="l00873"></a><span class="lineno"> 873</span>  <span class="comment">// their Allocator if it's refcounted (e.g. MemoryPoolAllocator).</span></div> +<div class="line"><a name="l00874"></a><span class="lineno"> 874</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree || (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">RAPIDJSON_USE_MEMBERSMAP</a>+0 &&</div> +<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>  <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">internal::IsRefCounted<Allocator>::Value</a>)) {</div> +<div class="line"><a name="l00876"></a><span class="lineno"> 876</span>  <span class="keywordflow">switch</span>(data_.f.flags) {</div> +<div class="line"><a name="l00877"></a><span class="lineno"> 877</span>  <span class="keywordflow">case</span> kArrayFlag:</div> +<div class="line"><a name="l00878"></a><span class="lineno"> 878</span>  {</div> +<div class="line"><a name="l00879"></a><span class="lineno"> 879</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* e = GetElementsPointer();</div> +<div class="line"><a name="l00880"></a><span class="lineno"> 880</span>  <span class="keywordflow">for</span> (<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* v = e; v != e + data_.a.size; ++v)</div> +<div class="line"><a name="l00881"></a><span class="lineno"> 881</span>  v->~GenericValue();</div> +<div class="line"><a name="l00882"></a><span class="lineno"> 882</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree) { <span class="comment">// Shortcut by Allocator's trait</span></div> +<div class="line"><a name="l00883"></a><span class="lineno"> 883</span>  Allocator::Free(e);</div> +<div class="line"><a name="l00884"></a><span class="lineno"> 884</span>  }</div> +<div class="line"><a name="l00885"></a><span class="lineno"> 885</span>  }</div> +<div class="line"><a name="l00886"></a><span class="lineno"> 886</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00887"></a><span class="lineno"> 887</span>  </div> +<div class="line"><a name="l00888"></a><span class="lineno"> 888</span>  <span class="keywordflow">case</span> kObjectFlag:</div> +<div class="line"><a name="l00889"></a><span class="lineno"> 889</span>  DoFreeMembers();</div> +<div class="line"><a name="l00890"></a><span class="lineno"> 890</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00891"></a><span class="lineno"> 891</span>  </div> +<div class="line"><a name="l00892"></a><span class="lineno"> 892</span>  <span class="keywordflow">case</span> kCopyStringFlag:</div> +<div class="line"><a name="l00893"></a><span class="lineno"> 893</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree) { <span class="comment">// Shortcut by Allocator's trait</span></div> +<div class="line"><a name="l00894"></a><span class="lineno"> 894</span>  Allocator::Free(const_cast<Ch*>(GetStringPointer()));</div> +<div class="line"><a name="l00895"></a><span class="lineno"> 895</span>  }</div> +<div class="line"><a name="l00896"></a><span class="lineno"> 896</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00897"></a><span class="lineno"> 897</span>  </div> +<div class="line"><a name="l00898"></a><span class="lineno"> 898</span>  <span class="keywordflow">default</span>:</div> +<div class="line"><a name="l00899"></a><span class="lineno"> 899</span>  <span class="keywordflow">break</span>; <span class="comment">// Do nothing for other types.</span></div> +<div class="line"><a name="l00900"></a><span class="lineno"> 900</span>  }</div> +<div class="line"><a name="l00901"></a><span class="lineno"> 901</span>  }</div> +<div class="line"><a name="l00902"></a><span class="lineno"> 902</span>  }</div> +<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> <span class="comment"></span> </div> +<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <span class="comment"> //!@name Assignment operators</span></div> +<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="comment"> //! Assignment with move semantics.</span></div> +<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="comment"></span><span class="comment"> /*! \param rhs Source of the assignment. It will become a null value after assignment.</span></div> +<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00912"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac"> 912</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& <a class="code" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">operator=</a>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& rhs) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00913"></a><span class="lineno"> 913</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a>(<span class="keyword">this</span> != &rhs)) {</div> +<div class="line"><a name="l00914"></a><span class="lineno"> 914</span>  <span class="comment">// Can't destroy "this" before assigning "rhs", otherwise "rhs"</span></div> +<div class="line"><a name="l00915"></a><span class="lineno"> 915</span>  <span class="comment">// could be used after free if it's an sub-Value of "this",</span></div> +<div class="line"><a name="l00916"></a><span class="lineno"> 916</span>  <span class="comment">// hence the temporary danse.</span></div> +<div class="line"><a name="l00917"></a><span class="lineno"> 917</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> temp;</div> +<div class="line"><a name="l00918"></a><span class="lineno"> 918</span>  temp.<a class="code" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(rhs);</div> +<div class="line"><a name="l00919"></a><span class="lineno"> 919</span>  this->~<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>();</div> +<div class="line"><a name="l00920"></a><span class="lineno"> 920</span>  RawAssign(temp);</div> +<div class="line"><a name="l00921"></a><span class="lineno"> 921</span>  }</div> +<div class="line"><a name="l00922"></a><span class="lineno"> 922</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00923"></a><span class="lineno"> 923</span>  }</div> +<div class="line"><a name="l00924"></a><span class="lineno"> 924</span>  </div> +<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> <span class="comment"> //! Move assignment in C++11</span></div> +<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& operator=(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>&& rhs) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00928"></a><span class="lineno"> 928</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = rhs.Move();</div> +<div class="line"><a name="l00929"></a><span class="lineno"> 929</span>  }</div> +<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> <span class="comment"></span> </div> +<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="comment"> //! Assignment of constant string reference (no copy)</span></div> +<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="comment"></span><span class="comment"> /*! \param str Constant string reference to be assigned</span></div> +<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type assignment overload below.</span></div> +<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="comment"> \see GenericStringRef, operator=(T)</span></div> +<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00937"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c"> 937</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& <a class="code" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">operator=</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> str) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00938"></a><span class="lineno"> 938</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> s(str);</div> +<div class="line"><a name="l00939"></a><span class="lineno"> 939</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = s;</div> +<div class="line"><a name="l00940"></a><span class="lineno"> 940</span>  }</div> +<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="comment"></span> </div> +<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> <span class="comment"> //! Assignment with primitive types.</span></div> +<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> +<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> <span class="comment"> \param value The value to be assigned.</span></div> +<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> <span class="comment"></span> </div> +<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> +<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> +<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> +<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> <span class="comment"> \ref SetString(const Ch*, Allocator&) (for copying) or</span></div> +<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="comment"> \ref StringRef() (to explicitly mark the pointer as constant) instead.</span></div> +<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> +<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="comment"> use \ref SetBool() instead.</span></div> +<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00954"></a><span class="lineno"> 954</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l00955"></a><span class="lineno"> 955</span>  RAPIDJSON_DISABLEIF_RETURN((internal::IsPointer<T>), (<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>&))</div> +<div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  operator=(T value) {</div> +<div class="line"><a name="l00957"></a><span class="lineno"> 957</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> v(value);</div> +<div class="line"><a name="l00958"></a><span class="lineno"> 958</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = v;</div> +<div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  }</div> +<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="comment"></span> </div> +<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> <span class="comment"> //! Deep-copy assignment from Value</span></div> +<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="comment"></span><span class="comment"> /*! Assigns a \b copy of the Value to the current Value object</span></div> +<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="comment"> \tparam SourceAllocator Allocator type of \c rhs</span></div> +<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="comment"> \param rhs Value to copy from (read-only)</span></div> +<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="comment"> \param allocator Allocator to use for copying</span></div> +<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="comment"> \param copyConstStrings Force copying of constant strings (e.g. referencing an in-situ buffer)</span></div> +<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00968"></a><span class="lineno"> 968</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l00969"></a><span class="lineno"> 969</span>  GenericValue& CopyFrom(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator, <span class="keywordtype">bool</span> copyConstStrings = <span class="keyword">false</span>) {</div> +<div class="line"><a name="l00970"></a><span class="lineno"> 970</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(static_cast<void*>(<span class="keyword">this</span>) != static_cast<void const*>(&rhs));</div> +<div class="line"><a name="l00971"></a><span class="lineno"> 971</span>  this->~GenericValue();</div> +<div class="line"><a name="l00972"></a><span class="lineno"> 972</span>  <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(rhs, allocator, copyConstStrings);</div> +<div class="line"><a name="l00973"></a><span class="lineno"> 973</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00974"></a><span class="lineno"> 974</span>  }</div> +<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="comment"></span> </div> +<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="comment"> //! Exchange the contents of this value with those of other.</span></div> +<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> <span class="comment"> \param other Another value.</span></div> +<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="comment"> \note Constant complexity.</span></div> +<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00981"></a><span class="lineno"> 981</span>  GenericValue& Swap(GenericValue& other) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00982"></a><span class="lineno"> 982</span>  GenericValue temp;</div> +<div class="line"><a name="l00983"></a><span class="lineno"> 983</span>  temp.RawAssign(*<span class="keyword">this</span>);</div> +<div class="line"><a name="l00984"></a><span class="lineno"> 984</span>  RawAssign(other);</div> +<div class="line"><a name="l00985"></a><span class="lineno"> 985</span>  other.RawAssign(temp);</div> +<div class="line"><a name="l00986"></a><span class="lineno"> 986</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00987"></a><span class="lineno"> 987</span>  }</div> +<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <span class="comment"></span> </div> +<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> <span class="comment"> //! free-standing swap function helper</span></div> +<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> <span class="comment"> Helper function to enable support for common swap implementation pattern based on \c std::swap:</span></div> +<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="comment"> void swap(MyClass& a, MyClass& b) {</span></div> +<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="comment"> using std::swap;</span></div> +<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="comment"> swap(a.value, b.value);</span></div> +<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="comment"> // ...</span></div> +<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> <span class="comment"> }</span></div> +<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="comment"> \see Swap()</span></div> +<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>  <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> swap(GenericValue& a, GenericValue& b) RAPIDJSON_NOEXCEPT { a.Swap(b); }</div> +<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="comment"></span> </div> +<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> <span class="comment"> //! Prepare Value for move semantics</span></div> +<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="comment"></span><span class="comment"> /*! \return *this */</span></div> +<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>  GenericValue& Move() RAPIDJSON_NOEXCEPT { <span class="keywordflow">return</span> *<span class="keyword">this</span>; }<span class="comment"></span></div> +<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="comment"> //!@name Equal-to and not-equal-to operators</span></div> +<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> <span class="comment"></span><span class="comment"> //! Equal-to operator</span></div> +<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> <span class="comment"> \note If an object contains duplicated named member, comparing equality with any object is always \c false.</span></div> +<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="comment"> \note Complexity is quadratic in Object's member number and linear for the rest (number of all values in the subtree and total lengths of all strings).</span></div> +<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs)<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>  <span class="keyword">typedef</span> GenericValue<Encoding, SourceAllocator> RhsType;</div> +<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>  <span class="keywordflow">if</span> (GetType() != rhs.GetType())</div> +<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>  </div> +<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>  <span class="keywordflow">switch</span> (GetType()) {</div> +<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>: <span class="comment">// Warning: O(n^2) inner-loop</span></div> +<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>  <span class="keywordflow">if</span> (data_.o.size != rhs.data_.o.size)</div> +<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>; </div> +<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>  <span class="keywordflow">for</span> (ConstMemberIterator lhsMemberItr = MemberBegin(); lhsMemberItr != MemberEnd(); ++lhsMemberItr) {</div> +<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>  <span class="keyword">typename</span> RhsType::ConstMemberIterator rhsMemberItr = rhs.FindMember(lhsMemberItr->name);</div> +<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>  <span class="keywordflow">if</span> (rhsMemberItr == rhs.MemberEnd() || lhsMemberItr->value != rhsMemberItr->value)</div> +<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>  }</div> +<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>  </div> +<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>:</div> +<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>  <span class="keywordflow">if</span> (data_.a.size != rhs.data_.a.size)</div> +<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < data_.a.size; i++)</div> +<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>  <span class="keywordflow">if</span> ((*<span class="keyword">this</span>)[i] != rhs[i])</div> +<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>  </div> +<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> +<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>  <span class="keywordflow">return</span> StringEqual(rhs);</div> +<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>  </div> +<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>:</div> +<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>  <span class="keywordflow">if</span> (IsDouble() || rhs.IsDouble()) {</div> +<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>  <span class="keywordtype">double</span> a = GetDouble(); <span class="comment">// May convert from integer to double.</span></div> +<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>  <span class="keywordtype">double</span> b = rhs.GetDouble(); <span class="comment">// Ditto</span></div> +<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>  <span class="keywordflow">return</span> a >= b && a <= b; <span class="comment">// Prevent -Wfloat-equal</span></div> +<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>  }</div> +<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>  <span class="keywordflow">return</span> data_.n.u64 == rhs.data_.n.u64;</div> +<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>  </div> +<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>  <span class="keywordflow">default</span>:</div> +<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>  }</div> +<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>  }</div> +<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> <span class="comment"></span> </div> +<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <span class="comment"> //! Equal-to operator with const C-string pointer</span></div> +<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> <span class="comment"></span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Ch* rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs)); }</div> +<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>  </div> +<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="comment"> //! Equal-to operator with string object</span></div> +<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <span class="comment"></span><span class="comment"> /*! \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> +<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> std::basic_string<Ch>& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs)); }</div> +<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="comment"></span> </div> +<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="comment"> //! Equal-to operator with primitive types</span></div> +<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t, \c double, \c true, \c false</span></div> +<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>,internal::IsGenericValue<T> >), (<span class="keywordtype">bool</span>)) operator==(<span class="keyword">const</span> T& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(rhs); }</div> <div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> <span class="comment"></span> </div> -<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> <span class="comment"> //! Equal-to operator with primitive types</span></div> -<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t, \c double, \c true, \c false</span></div> -<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>,internal::IsGenericValue<T> >), (<span class="keywordtype">bool</span>)) operator==(<span class="keyword">const</span> T& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(rhs); }</div> -<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> <span class="comment"></span> </div> -<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> <span class="comment"> //! Not-equal-to operator</span></div> -<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> <span class="comment"></span><span class="comment"> /*! \return !(*this == rhs)</span></div> -<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> -<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="comment"></span> </div> -<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="comment"> //! Not-equal-to operator with const C-string pointer</span></div> -<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> <span class="comment"></span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Ch* rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> -<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> <span class="comment"></span> </div> -<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="comment"> //! Not-equal-to operator with arbitrary types</span></div> -<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> <span class="comment"></span><span class="comment"> /*! \return !(*this == rhs)</span></div> -<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator!=(<span class="keyword">const</span> T& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> -<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>  </div> -<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> <span class="preprocessor">#ifndef __cpp_lib_three_way_comparison</span></div> -<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="comment"> //! Equal-to operator with arbitrary types (symmetric version)</span></div> -<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> <span class="comment"></span><span class="comment"> /*! \return (rhs == lhs)</span></div> +<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> <span class="comment"> //! Not-equal-to operator</span></div> +<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <span class="comment"></span><span class="comment"> /*! \return !(*this == rhs)</span></div> +<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> +<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> <span class="comment"></span> </div> +<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> <span class="comment"> //! Not-equal-to operator with const C-string pointer</span></div> +<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <span class="comment"></span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Ch* rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> +<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> <span class="comment"></span> </div> +<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> <span class="comment"> //! Not-equal-to operator with arbitrary types</span></div> +<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="comment"></span><span class="comment"> /*! \return !(*this == rhs)</span></div> +<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator!=(<span class="keyword">const</span> T& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> +<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>  </div> +<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="preprocessor">#ifndef __cpp_lib_three_way_comparison</span></div> +<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> <span class="comment"> //! Equal-to operator with arbitrary types (symmetric version)</span></div> +<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="comment"></span><span class="comment"> /*! \return (rhs == lhs)</span></div> +<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> <span class="keyword">friend</span> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator==(<span class="keyword">const</span> T& lhs, <span class="keyword">const</span> GenericValue& rhs) { <span class="keywordflow">return</span> rhs == lhs; }</div> +<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> <span class="comment"></span> </div> +<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="comment"> //! Not-Equal-to operator with arbitrary types (symmetric version)</span></div> +<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> <span class="comment"></span><span class="comment"> /*! \return !(rhs == lhs)</span></div> <div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> <span class="keyword">friend</span> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator==(<span class="keyword">const</span> T& lhs, <span class="keyword">const</span> GenericValue& rhs) { <span class="keywordflow">return</span> rhs == lhs; }</div> -<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> <span class="comment"></span> </div> -<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> <span class="comment"> //! Not-Equal-to operator with arbitrary types (symmetric version)</span></div> -<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="comment"></span><span class="comment"> /*! \return !(rhs == lhs)</span></div> -<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> <span class="keyword">friend</span> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator!=(<span class="keyword">const</span> T& lhs, <span class="keyword">const</span> GenericValue& rhs) { <span class="keywordflow">return</span> !(rhs == lhs); }<span class="comment"></span></div> -<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> <span class="comment"></span> </div> -<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> <span class="comment"> //!@name Type</span></div> -<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> <span class="comment"></span> </div> -<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>  <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> GetType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> static_cast<Type>(data_.f.flags & kTypeMask); }</div> -<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>  <span class="keywordtype">bool</span> IsNull()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kNullFlag; }</div> -<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>  <span class="keywordtype">bool</span> IsFalse()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kFalseFlag; }</div> -<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>  <span class="keywordtype">bool</span> IsTrue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kTrueFlag; }</div> -<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>  <span class="keywordtype">bool</span> IsBool()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kBoolFlag) != 0; }</div> -<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>  <span class="keywordtype">bool</span> IsObject()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kObjectFlag; }</div> -<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>  <span class="keywordtype">bool</span> IsArray()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kArrayFlag; }</div> -<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>  <span class="keywordtype">bool</span> IsNumber()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kNumberFlag) != 0; }</div> -<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>  <span class="keywordtype">bool</span> IsInt()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kIntFlag) != 0; }</div> -<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>  <span class="keywordtype">bool</span> IsUint()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kUintFlag) != 0; }</div> -<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>  <span class="keywordtype">bool</span> IsInt64()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kInt64Flag) != 0; }</div> -<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>  <span class="keywordtype">bool</span> IsUint64()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kUint64Flag) != 0; }</div> -<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>  <span class="keywordtype">bool</span> IsDouble()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kDoubleFlag) != 0; }</div> -<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>  <span class="keywordtype">bool</span> IsString()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kStringFlag) != 0; }</div> -<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>  </div> -<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>  <span class="comment">// Checks whether a number can be losslessly converted to a double.</span></div> -<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>  <span class="keywordtype">bool</span> IsLosslessDouble()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>  <span class="keywordflow">if</span> (!IsNumber()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>  <span class="keywordflow">if</span> (IsUint64()) {</div> -<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>  uint64_t u = GetUint64();</div> -<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>  <span class="keyword">volatile</span> <span class="keywordtype">double</span> d = static_cast<double>(u);</div> -<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>  <span class="keywordflow">return</span> (d >= 0.0)</div> -<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>  && (d < static_cast<double>((std::numeric_limits<uint64_t>::max)()))</div> -<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>  && (u == static_cast<uint64_t>(d));</div> -<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>  }</div> -<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>  <span class="keywordflow">if</span> (IsInt64()) {</div> -<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>  int64_t i = GetInt64();</div> -<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>  <span class="keyword">volatile</span> <span class="keywordtype">double</span> d = static_cast<double>(i);</div> -<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>  <span class="keywordflow">return</span> (d >= static_cast<double>((std::numeric_limits<int64_t>::min)()))</div> -<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>  && (d < static_cast<double>((std::numeric_limits<int64_t>::max)()))</div> -<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>  && (i == static_cast<int64_t>(d));</div> -<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>  }</div> -<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>; <span class="comment">// double, int, uint are always lossless</span></div> -<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>  }</div> -<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>  </div> -<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>  <span class="comment">// Checks whether a number is a float (possible lossy).</span></div> -<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>  <span class="keywordtype">bool</span> IsFloat()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>  <span class="keywordflow">if</span> ((data_.f.flags & kDoubleFlag) == 0)</div> -<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>  <span class="keywordtype">double</span> d = GetDouble();</div> -<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>  <span class="keywordflow">return</span> d >= -3.4028234e38 && d <= 3.4028234e38;</div> -<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>  }</div> -<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>  <span class="comment">// Checks whether a number can be losslessly converted to a float.</span></div> -<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>  <span class="keywordtype">bool</span> IsLosslessFloat()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>  <span class="keywordflow">if</span> (!IsNumber()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>  <span class="keywordtype">double</span> a = GetDouble();</div> -<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>  <span class="keywordflow">if</span> (a < static_cast<double>(-(std::numeric_limits<float>::max)())</div> -<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>  || a > static_cast<double>((std::numeric_limits<float>::max)()))</div> -<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>  <span class="keywordtype">double</span> b = static_cast<double>(static_cast<float>(a));</div> -<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>  <span class="keywordflow">return</span> a >= b && a <= b; <span class="comment">// Prevent -Wfloat-equal</span></div> -<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>  }</div> +<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> <span class="keyword">friend</span> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator!=(<span class="keyword">const</span> T& lhs, <span class="keyword">const</span> GenericValue& rhs) { <span class="keywordflow">return</span> !(rhs == lhs); }<span class="comment"></span></div> +<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="comment"></span> </div> +<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> <span class="comment"> //!@name Type</span></div> +<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> <span class="comment"></span> </div> +<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>  <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> GetType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> static_cast<Type>(data_.f.flags & kTypeMask); }</div> +<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>  <span class="keywordtype">bool</span> IsNull()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kNullFlag; }</div> +<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>  <span class="keywordtype">bool</span> IsFalse()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kFalseFlag; }</div> +<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>  <span class="keywordtype">bool</span> IsTrue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kTrueFlag; }</div> +<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>  <span class="keywordtype">bool</span> IsBool()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kBoolFlag) != 0; }</div> +<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>  <span class="keywordtype">bool</span> IsObject()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kObjectFlag; }</div> +<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>  <span class="keywordtype">bool</span> IsArray()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kArrayFlag; }</div> +<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>  <span class="keywordtype">bool</span> IsNumber()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kNumberFlag) != 0; }</div> +<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>  <span class="keywordtype">bool</span> IsInt()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kIntFlag) != 0; }</div> +<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>  <span class="keywordtype">bool</span> IsUint()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kUintFlag) != 0; }</div> +<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>  <span class="keywordtype">bool</span> IsInt64()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kInt64Flag) != 0; }</div> +<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>  <span class="keywordtype">bool</span> IsUint64()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kUint64Flag) != 0; }</div> +<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>  <span class="keywordtype">bool</span> IsDouble()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kDoubleFlag) != 0; }</div> +<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>  <span class="keywordtype">bool</span> IsString()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kStringFlag) != 0; }</div> +<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>  </div> +<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>  <span class="comment">// Checks whether a number can be losslessly converted to a double.</span></div> +<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>  <span class="keywordtype">bool</span> IsLosslessDouble()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>  <span class="keywordflow">if</span> (!IsNumber()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>  <span class="keywordflow">if</span> (IsUint64()) {</div> +<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>  uint64_t u = GetUint64();</div> +<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>  <span class="keyword">volatile</span> <span class="keywordtype">double</span> d = static_cast<double>(u);</div> +<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>  <span class="keywordflow">return</span> (d >= 0.0)</div> +<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>  && (d < static_cast<double>((std::numeric_limits<uint64_t>::max)()))</div> +<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>  && (u == static_cast<uint64_t>(d));</div> +<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>  }</div> +<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>  <span class="keywordflow">if</span> (IsInt64()) {</div> +<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>  int64_t i = GetInt64();</div> +<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>  <span class="keyword">volatile</span> <span class="keywordtype">double</span> d = static_cast<double>(i);</div> +<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>  <span class="keywordflow">return</span> (d >= static_cast<double>((std::numeric_limits<int64_t>::min)()))</div> +<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>  && (d < static_cast<double>((std::numeric_limits<int64_t>::max)()))</div> +<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>  && (i == static_cast<int64_t>(d));</div> +<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>  }</div> +<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>; <span class="comment">// double, int, uint are always lossless</span></div> +<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>  }</div> +<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>  </div> +<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>  <span class="comment">// Checks whether a number is a float (possible lossy).</span></div> +<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>  <span class="keywordtype">bool</span> IsFloat()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>  <span class="keywordflow">if</span> ((data_.f.flags & kDoubleFlag) == 0)</div> +<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>  <span class="keywordtype">double</span> d = GetDouble();</div> +<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>  <span class="keywordflow">return</span> d >= -3.4028234e38 && d <= 3.4028234e38;</div> +<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>  }</div> +<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>  <span class="comment">// Checks whether a number can be losslessly converted to a float.</span></div> +<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>  <span class="keywordtype">bool</span> IsLosslessFloat()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>  <span class="keywordflow">if</span> (!IsNumber()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>  <span class="keywordtype">double</span> a = GetDouble();</div> +<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>  <span class="keywordflow">if</span> (a < static_cast<double>(-(std::numeric_limits<float>::max)())</div> +<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>  || a > static_cast<double>((std::numeric_limits<float>::max)()))</div> +<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>  <span class="keywordtype">double</span> b = static_cast<double>(static_cast<float>(a));</div> +<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>  <span class="keywordflow">return</span> a >= b && a <= b; <span class="comment">// Prevent -Wfloat-equal</span></div> +<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>  }</div> +<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> <span class="comment"></span> </div> +<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> <span class="comment"> //!@name Null</span></div> +<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> <span class="comment"></span><span class="comment"> //@{</span></div> <div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> <span class="comment"></span> </div> -<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> <span class="comment"> //!@name Null</span></div> -<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="comment"></span> </div> -<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>  GenericValue& SetNull() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>  GenericValue& SetNull() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="comment"></span> </div> +<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="comment"> //!@name Bool</span></div> +<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> <span class="comment"></span><span class="comment"> //@{</span></div> <div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> <span class="comment"></span> </div> -<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="comment"> //!@name Bool</span></div> -<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>  <span class="keywordtype">bool</span> GetBool()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsBool()); <span class="keywordflow">return</span> data_.f.flags == kTrueFlag; }<span class="comment"></span></div> +<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> <span class="comment"> //!< Set boolean value</span></div> +<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="comment"></span><span class="comment"> /*! \post IsBool() == true */</span></div> +<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>  GenericValue& SetBool(<span class="keywordtype">bool</span> b) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(b); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> <div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> <span class="comment"></span> </div> -<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>  <span class="keywordtype">bool</span> GetBool()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsBool()); <span class="keywordflow">return</span> data_.f.flags == kTrueFlag; }<span class="comment"></span></div> -<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="comment"> //!< Set boolean value</span></div> -<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> <span class="comment"></span><span class="comment"> /*! \post IsBool() == true */</span></div> -<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>  GenericValue& SetBool(<span class="keywordtype">bool</span> b) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(b); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <span class="comment"></span> </div> -<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> <span class="comment"> //!@name Object</span></div> -<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> <span class="comment"> //! Set this value as an empty object.</span></div> -<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> <span class="comment"></span><span class="comment"> /*! \post IsObject() == true */</span></div> -<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>  GenericValue& SetObject() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> <span class="comment"></span> </div> -<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> <span class="comment"> //! Get the number of members in the object.</span></div> -<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCount()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.size; }</div> -<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> <span class="comment"></span> </div> -<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> <span class="comment"> //! Get the capacity of object.</span></div> -<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCapacity()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.capacity; }</div> -<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> <span class="comment"></span> </div> -<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> <span class="comment"> //! Check whether the object is empty.</span></div> -<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> <span class="comment"></span> <span class="keywordtype">bool</span> ObjectEmpty()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.size == 0; }</div> -<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="comment"></span> </div> -<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <span class="comment"> //! Get a value from an object associated with the name.</span></div> -<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true</span></div> -<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <span class="comment"> \tparam T Either \c Ch or \c const \c Ch (template used for disambiguation with \ref operator[](SizeType))</span></div> -<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> <span class="comment"> \note In version 0.1x, if the member is not found, this function returns a null value. This makes issue 7.</span></div> -<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> <span class="comment"> Since 0.2, if the name is not correct, it will assert.</span></div> -<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> <span class="comment"> If user is unsure whether a member exists, user should use HasMember() first.</span></div> -<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> <span class="comment"> A better approach is to use FindMember().</span></div> -<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> <span class="comment"> //!@name Object</span></div> +<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="comment"> //! Set this value as an empty object.</span></div> +<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> <span class="comment"></span><span class="comment"> /*! \post IsObject() == true */</span></div> +<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>  GenericValue& SetObject() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> <span class="comment"></span> </div> +<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> <span class="comment"> //! Get the number of members in the object.</span></div> +<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCount()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.size; }</div> +<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> <span class="comment"></span> </div> +<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> <span class="comment"> //! Get the capacity of object.</span></div> +<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCapacity()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.capacity; }</div> +<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> <span class="comment"></span> </div> +<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> <span class="comment"> //! Check whether the object is empty.</span></div> +<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> <span class="comment"></span> <span class="keywordtype">bool</span> ObjectEmpty()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.size == 0; }</div> +<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> <span class="comment"></span> </div> +<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> <span class="comment"> //! Get a value from an object associated with the name.</span></div> +<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true</span></div> +<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> <span class="comment"> \tparam T Either \c Ch or \c const \c Ch (template used for disambiguation with \ref operator[](SizeType))</span></div> +<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> <span class="comment"> \note In version 0.1x, if the member is not found, this function returns a null value. This makes issue 7.</span></div> +<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="comment"> Since 0.2, if the name is not correct, it will assert.</span></div> +<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <span class="comment"> If user is unsure whether a member exists, user should use HasMember() first.</span></div> +<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> <span class="comment"> A better approach is to use FindMember().</span></div> +<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>  RAPIDJSON_DISABLEIF_RETURN((internal::NotExpr<internal::IsSame<<span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::RemoveConst<T>::Type</a>, Ch> >),(GenericValue&)) operator[](T* name) {</div> +<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> +<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>  <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[n];</div> +<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>  }</div> <div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>  RAPIDJSON_DISABLEIF_RETURN((internal::NotExpr<internal::IsSame<<span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::RemoveConst<T>::Type</a>, Ch> >),(GenericValue&)) operator[](T* name) {</div> -<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> -<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>  <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[n];</div> -<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>  }</div> -<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>  RAPIDJSON_DISABLEIF_RETURN((internal::NotExpr<internal::IsSame<<span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::RemoveConst<T>::Type</a>, Ch> >),(<span class="keyword">const</span> GenericValue&)) operator[](T* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[name]; }</div> -<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <span class="comment"></span> </div> -<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="comment"> //! Get a value from an object associated with the name.</span></div> -<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true</span></div> -<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> <span class="comment"> \tparam SourceAllocator Allocator of the \c name value</span></div> -<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="comment"></span> </div> -<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> <span class="comment"> \note Compared to \ref operator[](T*), this version is faster because it does not need a StrLen().</span></div> -<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> <span class="comment"> And it can also handle strings with embedded null characters.</span></div> -<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> <span class="comment"></span> </div> -<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>  GenericValue& operator[](<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> -<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>  MemberIterator member = FindMember(name);</div> -<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>  <span class="keywordflow">if</span> (member != MemberEnd())</div> -<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>  <span class="keywordflow">return</span> member->value;</div> -<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>  <span class="keywordflow">else</span> {</div> -<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(<span class="keyword">false</span>); <span class="comment">// see above note</span></div> -<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>  </div> -<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>  <span class="comment">// This will generate -Wexit-time-destructors in clang</span></div> -<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>  <span class="comment">// static GenericValue NullValue;</span></div> -<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>  <span class="comment">// return NullValue;</span></div> -<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>  </div> -<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>  <span class="comment">// Use static buffer and placement-new to prevent destruction</span></div> -<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>  <span class="keyword">static</span> <span class="keywordtype">char</span> buffer[<span class="keyword">sizeof</span>(GenericValue)];</div> -<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>  <span class="keywordflow">return</span> *<span class="keyword">new</span> (buffer) GenericValue();</div> -<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>  }</div> -<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>  }</div> -<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>  <span class="keyword">const</span> GenericValue& operator[](<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[name]; }</div> -<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>  </div> -<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> <span class="comment"> //! Get a value from an object associated with name (string object).</span></div> -<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="comment"></span> GenericValue& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))]; }</div> -<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>  <span class="keyword">const</span> GenericValue& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))]; }</div> -<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> <span class="comment"></span> </div> -<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> <span class="comment"> //! Const member iterator</span></div> -<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> -<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>  ConstMemberIterator MemberBegin()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstMemberIterator(GetMembersPointer()); }<span class="comment"></span></div> -<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> <span class="comment"> //! Const \em past-the-end member iterator</span></div> -<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> -<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>  ConstMemberIterator MemberEnd()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstMemberIterator(GetMembersPointer() + data_.o.size); }<span class="comment"></span></div> -<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span> <span class="comment"> //! Member iterator</span></div> -<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> -<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>  MemberIterator MemberBegin() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> MemberIterator(GetMembersPointer()); }<span class="comment"></span></div> -<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> <span class="comment"> //! \em Past-the-end member iterator</span></div> -<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> -<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>  MemberIterator MemberEnd() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> MemberIterator(GetMembersPointer() + data_.o.size); }</div> -<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="comment"></span> </div> -<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> <span class="comment"> //! Request the object to have enough capacity to store members.</span></div> -<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> <span class="comment"></span><span class="comment"> /*! \param newCapacity The capacity that the object at least need to have.</span></div> -<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>  GenericValue& MemberReserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator) {</div> -<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>  <span class="keywordflow">if</span> (newCapacity > data_.o.capacity) {</div> -<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>  SetMembersPointer(reinterpret_cast<Member*>(allocator.Realloc(GetMembersPointer(), data_.o.capacity * <span class="keyword">sizeof</span>(Member), newCapacity * <span class="keyword">sizeof</span>(Member))));</div> -<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>  data_.o.capacity = newCapacity;</div> -<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>  }</div> -<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>  }</div> -<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> <span class="comment"></span> </div> -<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> <span class="comment"> //! Check whether a member exists in the object.</span></div> -<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> <span class="comment"> \return Whether a member with that name exists.</span></div> -<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> -<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> -<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>  </div> -<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> <span class="comment"> //! Check whether a member exists in the object with string object.</span></div> -<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> <span class="comment"> \return Whether a member with that name exists.</span></div> -<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> -<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> -<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span> <span class="comment"></span> </div> -<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span> <span class="comment"> //! Check whether a member exists in the object with GenericValue name.</span></div> -<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span> <span class="comment"> This version is faster because it does not need a StrLen(). It can also handle string with null character.</span></div> -<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> <span class="comment"> \return Whether a member with that name exists.</span></div> -<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> -<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> -<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> <span class="comment"></span> </div> -<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="comment"> //! Find member by name.</span></div> -<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> -<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> -<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span> <span class="comment"></span> </div> -<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span> <span class="comment"> \note Earlier versions of Rapidjson returned a \c NULL pointer, in case</span></div> -<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span> <span class="comment"> the requested member doesn't exist. For consistency with e.g.</span></div> -<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> <span class="comment"> \c std::map, this has been changed to MemberEnd() now.</span></div> -<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>  MemberIterator FindMember(<span class="keyword">const</span> Ch* name) {</div> -<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> -<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>  <span class="keywordflow">return</span> FindMember(n);</div> -<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>  }</div> -<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>  </div> -<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>  ConstMemberIterator FindMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).FindMember(name); }</div> +<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>  RAPIDJSON_DISABLEIF_RETURN((internal::NotExpr<internal::IsSame<<span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::RemoveConst<T>::Type</a>, Ch> >),(<span class="keyword">const</span> GenericValue&)) operator[](T* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[name]; }</div> +<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> <span class="comment"></span> </div> +<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> <span class="comment"> //! Get a value from an object associated with the name.</span></div> +<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true</span></div> +<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> <span class="comment"> \tparam SourceAllocator Allocator of the \c name value</span></div> +<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> <span class="comment"></span> </div> +<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <span class="comment"> \note Compared to \ref operator[](T*), this version is faster because it does not need a StrLen().</span></div> +<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="comment"> And it can also handle strings with embedded null characters.</span></div> +<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <span class="comment"></span> </div> +<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>  GenericValue& operator[](<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>  MemberIterator member = FindMember(name);</div> +<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>  <span class="keywordflow">if</span> (member != MemberEnd())</div> +<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>  <span class="keywordflow">return</span> member->value;</div> +<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>  <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(<span class="keyword">false</span>); <span class="comment">// see above note</span></div> +<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>  </div> +<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>  <span class="comment">// This will generate -Wexit-time-destructors in clang</span></div> +<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>  <span class="comment">// static GenericValue NullValue;</span></div> +<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>  <span class="comment">// return NullValue;</span></div> +<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>  </div> +<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>  <span class="comment">// Use static buffer and placement-new to prevent destruction</span></div> +<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>  <span class="keyword">static</span> <span class="keywordtype">char</span> buffer[<span class="keyword">sizeof</span>(GenericValue)];</div> +<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>  <span class="keywordflow">return</span> *<span class="keyword">new</span> (buffer) GenericValue();</div> +<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>  }</div> +<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>  }</div> +<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>  <span class="keyword">const</span> GenericValue& operator[](<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[name]; }</div> +<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>  </div> +<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> <span class="comment"> //! Get a value from an object associated with name (string object).</span></div> +<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> <span class="comment"></span> GenericValue& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))]; }</div> +<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>  <span class="keyword">const</span> GenericValue& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))]; }</div> +<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> <span class="comment"></span> </div> +<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> <span class="comment"> //! Const member iterator</span></div> +<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> +<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>  ConstMemberIterator MemberBegin()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstMemberIterator(GetMembersPointer()); }<span class="comment"></span></div> +<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> <span class="comment"> //! Const \em past-the-end member iterator</span></div> +<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> +<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>  ConstMemberIterator MemberEnd()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstMemberIterator(GetMembersPointer() + data_.o.size); }<span class="comment"></span></div> +<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="comment"> //! Member iterator</span></div> +<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> +<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>  MemberIterator MemberBegin() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> MemberIterator(GetMembersPointer()); }<span class="comment"></span></div> +<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> <span class="comment"> //! \em Past-the-end member iterator</span></div> +<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> +<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>  MemberIterator MemberEnd() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> MemberIterator(GetMembersPointer() + data_.o.size); }</div> +<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> <span class="comment"></span> </div> +<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span> <span class="comment"> //! Request the object to have enough capacity to store members.</span></div> +<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> <span class="comment"></span><span class="comment"> /*! \param newCapacity The capacity that the object at least need to have.</span></div> +<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>  GenericValue& MemberReserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator) {</div> +<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>  DoReserveMembers(newCapacity, allocator);</div> +<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>  }</div> +<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span> <span class="comment"></span> </div> +<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> <span class="comment"> //! Check whether a member exists in the object.</span></div> +<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span> <span class="comment"> \return Whether a member with that name exists.</span></div> +<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> +<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> +<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>  </div> +<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> <span class="comment"> //! Check whether a member exists in the object with string object.</span></div> +<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> <span class="comment"> \return Whether a member with that name exists.</span></div> +<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> +<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> +<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> <span class="comment"></span> </div> +<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="comment"> //! Check whether a member exists in the object with GenericValue name.</span></div> +<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> <span class="comment"> This version is faster because it does not need a StrLen(). It can also handle string with null character.</span></div> +<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span> <span class="comment"> \return Whether a member with that name exists.</span></div> +<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> +<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> +<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> <span class="comment"></span> </div> +<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span> <span class="comment"> //! Find member by name.</span></div> +<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> +<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> +<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span> <span class="comment"></span> </div> +<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> <span class="comment"> \note Earlier versions of Rapidjson returned a \c NULL pointer, in case</span></div> +<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="comment"> the requested member doesn't exist. For consistency with e.g.</span></div> +<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> <span class="comment"> \c std::map, this has been changed to MemberEnd() now.</span></div> +<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>  MemberIterator FindMember(<span class="keyword">const</span> Ch* name) {</div> +<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> +<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>  <span class="keywordflow">return</span> FindMember(n);</div> +<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>  }</div> +<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>  </div> +<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>  ConstMemberIterator FindMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).FindMember(name); }</div> +<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> <span class="comment"></span> </div> +<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> <span class="comment"> //! Find member by name.</span></div> +<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> <span class="comment"> This version is faster because it does not need a StrLen(). It can also handle string with null character.</span></div> +<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> +<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> <div class="line"><a name="l01327"></a><span class="lineno"> 1327</span> <span class="comment"></span> </div> -<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> <span class="comment"> //! Find member by name.</span></div> -<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="comment"> This version is faster because it does not need a StrLen(). It can also handle string with null character.</span></div> -<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> -<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> -<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span> <span class="comment"></span> </div> -<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> <span class="comment"> \note Earlier versions of Rapidjson returned a \c NULL pointer, in case</span></div> -<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> <span class="comment"> the requested member doesn't exist. For consistency with e.g.</span></div> -<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span> <span class="comment"> \c std::map, this has been changed to MemberEnd() now.</span></div> -<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>  MemberIterator FindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> -<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(name.IsString());</div> -<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>  MemberIterator member = MemberBegin();</div> -<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>  <span class="keywordflow">for</span> ( ; member != MemberEnd(); ++member)</div> -<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>  <span class="keywordflow">if</span> (name.StringEqual(member->name))</div> -<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>  <span class="keywordflow">return</span> member;</div> -<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>  }</div> -<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> ConstMemberIterator FindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).FindMember(name); }</div> -<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>  </div> -<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> <span class="comment"> //! Find member by string object name.</span></div> -<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> -<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> -<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>  MemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> FindMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>  ConstMemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> <span class="comment"></span> </div> -<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span> <span class="comment"> //! Add a member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> -<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span> <span class="comment"> \param value Value of any type.</span></div> -<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> <span class="comment"> \note The ownership of \c name and \c value will be transferred to this object on success.</span></div> -<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> <span class="comment"> \pre IsObject() && name.IsString()</span></div> -<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> <span class="comment"> \post name.IsNull() && value.IsNull()</span></div> -<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>  GenericValue& AddMember(GenericValue& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(name.IsString());</div> -<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>  </div> -<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>  ObjectData& o = data_.o;</div> -<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>  <span class="keywordflow">if</span> (o.size >= o.capacity)</div> -<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>  MemberReserve(o.capacity == 0 ? kDefaultObjectCapacity : (o.capacity + (o.capacity + 1) / 2), allocator);</div> -<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>  Member* members = GetMembersPointer();</div> -<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>  members[o.size].name.RawAssign(name);</div> -<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>  members[o.size].value.RawAssign(value);</div> -<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>  o.size++;</div> -<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>  }</div> -<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> <span class="comment"></span> </div> -<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="comment"> //! Add a constant string value as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> -<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> <span class="comment"> \param value constant string reference as value of member.</span></div> -<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(GenericValue&,T,Allocator&) overload below.</span></div> -<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>  GenericValue& AddMember(GenericValue& name, StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>  GenericValue v(value);</div> -<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> -<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>  }</div> -<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>  </div> -<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> <span class="comment"> //! Add a string object as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> -<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> <span class="comment"> \param value constant string reference as value of member.</span></div> -<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(GenericValue&,T,Allocator&) overload below.</span></div> -<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>  GenericValue& AddMember(GenericValue& name, std::basic_string<Ch>& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>  GenericValue v(value, allocator);</div> -<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> -<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>  }</div> -<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span> <span class="comment"></span> </div> -<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span> <span class="comment"> //! Add any primitive value as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> -<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span> <span class="comment"> \param name A string value as name of member.</span></div> -<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> <span class="comment"> \param value Value of primitive type \c T as value of member</span></div> -<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span> <span class="comment"> \param allocator Allocator for reallocating memory. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span> <span class="comment"></span> </div> -<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> -<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> -<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> -<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span> <span class="comment"> \ref AddMember(StringRefType, GenericValue&, Allocator&) or \ref</span></div> -<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span> <span class="comment"> AddMember(StringRefType, StringRefType, Allocator&).</span></div> -<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> -<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> -<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> -<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>  AddMember(GenericValue& name, T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>  GenericValue v(value);</div> -<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> -<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>  }</div> -<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>  </div> -<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>  GenericValue& AddMember(GenericValue&& name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> -<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>  }</div> -<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>  GenericValue& AddMember(GenericValue&& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> -<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>  }</div> -<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>  GenericValue& AddMember(GenericValue& name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> -<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>  }</div> -<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>  GenericValue& AddMember(StringRefType name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>  GenericValue n(name);</div> -<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> -<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>  }</div> -<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>  </div> -<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> <span class="comment"></span> </div> -<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> <span class="comment"> //! Add a member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> <span class="comment"></span><span class="comment"> /*! \param name A constant string reference as name of member.</span></div> -<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> <span class="comment"> \param value Value of any type.</span></div> -<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span> <span class="comment"> \note The ownership of \c value will be transferred to this object on success.</span></div> -<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span> <span class="comment"> \post value.IsNull()</span></div> -<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>  GenericValue& AddMember(StringRefType name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>  GenericValue n(name);</div> -<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> -<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>  }</div> -<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> <span class="comment"></span> </div> -<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> <span class="comment"> //! Add a constant string value as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> <span class="comment"></span><span class="comment"> /*! \param name A constant string reference as name of member.</span></div> -<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> <span class="comment"> \param value constant string reference as value of member.</span></div> -<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(StringRefType,T,Allocator&) overload below.</span></div> -<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>  GenericValue& AddMember(StringRefType name, StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>  GenericValue v(value);</div> -<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> -<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>  }</div> -<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span> <span class="comment"></span> </div> -<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span> <span class="comment"> //! Add any primitive value as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> -<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span> <span class="comment"> \param name A constant string reference as name of member.</span></div> -<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span> <span class="comment"> \param value Value of primitive type \c T as value of member</span></div> -<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> <span class="comment"> \param allocator Allocator for reallocating memory. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> <span class="comment"></span> </div> -<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> -<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> -<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> -<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span> <span class="comment"> \ref AddMember(StringRefType, GenericValue&, Allocator&) or \ref</span></div> -<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span> <span class="comment"> AddMember(StringRefType, StringRefType, Allocator&).</span></div> -<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> -<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> -<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> -<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>  AddMember(StringRefType name, T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>  GenericValue n(name);</div> -<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> -<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>  }</div> -<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span> <span class="comment"></span> </div> -<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span> <span class="comment"> //! Remove all members in the object.</span></div> -<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span> <span class="comment"></span><span class="comment"> /*! This function do not deallocate memory in the object, i.e. the capacity is unchanged.</span></div> -<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>  <span class="keywordtype">void</span> RemoveAllMembers() {</div> -<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); </div> -<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>  <span class="keywordflow">for</span> (MemberIterator m = MemberBegin(); m != MemberEnd(); ++m)</div> -<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>  m->~Member();</div> -<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>  data_.o.size = 0;</div> -<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>  }</div> -<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span> <span class="comment"></span> </div> -<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span> <span class="comment"> //! Remove a member in object by its name.</span></div> -<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span> <span class="comment"></span><span class="comment"> /*! \param name Name of member to be removed.</span></div> -<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span> <span class="comment"> \return Whether the member existed.</span></div> -<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span> <span class="comment"> \note This function may reorder the object members. Use \ref</span></div> -<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span> <span class="comment"> EraseMember(ConstMemberIterator) if you need to preserve the</span></div> -<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span> <span class="comment"> relative order of the remaining members.</span></div> -<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> Ch* name) {</div> -<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> -<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>  <span class="keywordflow">return</span> RemoveMember(n);</div> -<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>  }</div> -<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>  </div> -<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> RemoveMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>  </div> -<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> -<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>  MemberIterator m = FindMember(name);</div> -<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>  <span class="keywordflow">if</span> (m != MemberEnd()) {</div> -<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>  RemoveMember(m);</div> -<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>  }</div> -<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>  }</div> -<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span> <span class="comment"></span> </div> -<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span> <span class="comment"> //! Remove a member in object by iterator.</span></div> -<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span> <span class="comment"></span><span class="comment"> /*! \param m member iterator (obtained by FindMember() or MemberBegin()).</span></div> -<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span> <span class="comment"> \return the new iterator after removal.</span></div> -<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span> <span class="comment"> \note This function may reorder the object members. Use \ref</span></div> -<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span> <span class="comment"> EraseMember(ConstMemberIterator) if you need to preserve the</span></div> -<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span> <span class="comment"> relative order of the remaining members.</span></div> -<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span> <span class="comment"> \note Constant time complexity.</span></div> -<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>  MemberIterator RemoveMember(MemberIterator m) {</div> -<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.o.size > 0);</div> -<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetMembersPointer() != 0);</div> -<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(m >= MemberBegin() && m < MemberEnd());</div> -<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>  </div> -<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>  MemberIterator last(GetMembersPointer() + (data_.o.size - 1));</div> -<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>  <span class="keywordflow">if</span> (data_.o.size > 1 && m != last)</div> -<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>  *m = *last; <span class="comment">// Move the last one to this place</span></div> -<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>  m->~Member(); <span class="comment">// Only one left, just destroy</span></div> -<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>  --data_.o.size;</div> -<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>  <span class="keywordflow">return</span> m;</div> -<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>  }</div> -<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span> <span class="comment"></span> </div> -<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span> <span class="comment"> //! Remove a member from an object by iterator.</span></div> -<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span> <span class="comment"></span><span class="comment"> /*! \param pos iterator to the member to remove</span></div> -<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span> <span class="comment"> \pre IsObject() == true && \ref MemberBegin() <= \c pos < \ref MemberEnd()</span></div> -<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span> <span class="comment"> \return Iterator following the removed element.</span></div> -<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span> <span class="comment"> If the iterator \c pos refers to the last element, the \ref MemberEnd() iterator is returned.</span></div> -<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span> <span class="comment"> \note This function preserves the relative order of the remaining object</span></div> -<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span> <span class="comment"> members. If you do not need this, use the more efficient \ref RemoveMember(MemberIterator).</span></div> +<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> <span class="comment"> \note Earlier versions of Rapidjson returned a \c NULL pointer, in case</span></div> +<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> <span class="comment"> the requested member doesn't exist. For consistency with e.g.</span></div> +<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="comment"> \c std::map, this has been changed to MemberEnd() now.</span></div> +<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>  MemberIterator FindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(name.IsString());</div> +<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>  <span class="keywordflow">return</span> DoFindMember(name);</div> +<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>  }</div> +<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> ConstMemberIterator FindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).FindMember(name); }</div> +<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>  </div> +<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> <span class="comment"> //! Find member by string object name.</span></div> +<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> +<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> +<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>  MemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> FindMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>  ConstMemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> <span class="comment"></span> </div> +<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> <span class="comment"> //! Add a member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> +<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> <span class="comment"> \param value Value of any type.</span></div> +<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> <span class="comment"> \note The ownership of \c name and \c value will be transferred to this object on success.</span></div> +<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> <span class="comment"> \pre IsObject() && name.IsString()</span></div> +<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> <span class="comment"> \post name.IsNull() && value.IsNull()</span></div> +<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>  GenericValue& AddMember(GenericValue& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(name.IsString());</div> +<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>  DoAddMember(name, value, allocator);</div> +<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>  }</div> +<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> <span class="comment"></span> </div> +<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> <span class="comment"> //! Add a constant string value as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> +<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> <span class="comment"> \param value constant string reference as value of member.</span></div> +<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(GenericValue&,T,Allocator&) overload below.</span></div> +<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>  GenericValue& AddMember(GenericValue& name, StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>  GenericValue v(value);</div> +<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> +<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>  }</div> +<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>  </div> +<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span> <span class="comment"> //! Add a string object as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> +<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span> <span class="comment"> \param value constant string reference as value of member.</span></div> +<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(GenericValue&,T,Allocator&) overload below.</span></div> +<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>  GenericValue& AddMember(GenericValue& name, std::basic_string<Ch>& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>  GenericValue v(value, allocator);</div> +<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> +<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>  }</div> +<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span> <span class="comment"></span> </div> +<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span> <span class="comment"> //! Add any primitive value as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> +<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span> <span class="comment"> \param name A string value as name of member.</span></div> +<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> <span class="comment"> \param value Value of primitive type \c T as value of member</span></div> +<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> <span class="comment"> \param allocator Allocator for reallocating memory. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> <span class="comment"></span> </div> +<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> +<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> +<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> +<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> <span class="comment"> \ref AddMember(StringRefType, GenericValue&, Allocator&) or \ref</span></div> +<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> <span class="comment"> AddMember(StringRefType, StringRefType, Allocator&).</span></div> +<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> +<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> +<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> +<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>  AddMember(GenericValue& name, T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>  GenericValue v(value);</div> +<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> +<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>  }</div> +<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>  </div> +<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>  GenericValue& AddMember(GenericValue&& name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> +<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>  }</div> +<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>  GenericValue& AddMember(GenericValue&& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> +<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>  }</div> +<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>  GenericValue& AddMember(GenericValue& name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> +<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>  }</div> +<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>  GenericValue& AddMember(StringRefType name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>  GenericValue n(name);</div> +<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> +<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>  }</div> +<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>  </div> +<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span> <span class="comment"></span> </div> +<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span> <span class="comment"> //! Add a member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span> <span class="comment"></span><span class="comment"> /*! \param name A constant string reference as name of member.</span></div> +<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> <span class="comment"> \param value Value of any type.</span></div> +<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span> <span class="comment"> \note The ownership of \c value will be transferred to this object on success.</span></div> +<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span> <span class="comment"> \post value.IsNull()</span></div> +<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>  GenericValue& AddMember(StringRefType name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>  GenericValue n(name);</div> +<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> +<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>  }</div> +<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span> <span class="comment"></span> </div> +<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span> <span class="comment"> //! Add a constant string value as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> <span class="comment"></span><span class="comment"> /*! \param name A constant string reference as name of member.</span></div> +<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span> <span class="comment"> \param value constant string reference as value of member.</span></div> +<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(StringRefType,T,Allocator&) overload below.</span></div> +<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>  GenericValue& AddMember(StringRefType name, StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>  GenericValue v(value);</div> +<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> +<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>  }</div> +<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> <span class="comment"></span> </div> +<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span> <span class="comment"> //! Add any primitive value as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> +<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span> <span class="comment"> \param name A constant string reference as name of member.</span></div> +<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span> <span class="comment"> \param value Value of primitive type \c T as value of member</span></div> +<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> <span class="comment"> \param allocator Allocator for reallocating memory. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> <span class="comment"></span> </div> +<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> +<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> +<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> +<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> <span class="comment"> \ref AddMember(StringRefType, GenericValue&, Allocator&) or \ref</span></div> +<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> <span class="comment"> AddMember(StringRefType, StringRefType, Allocator&).</span></div> +<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> +<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> +<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> +<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>  AddMember(StringRefType name, T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>  GenericValue n(name);</div> +<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> +<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>  }</div> +<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> <span class="comment"></span> </div> +<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> <span class="comment"> //! Remove all members in the object.</span></div> +<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span> <span class="comment"></span><span class="comment"> /*! This function do not deallocate memory in the object, i.e. the capacity is unchanged.</span></div> +<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>  <span class="keywordtype">void</span> RemoveAllMembers() {</div> +<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); </div> +<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>  DoClearMembers();</div> +<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>  }</div> +<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span> <span class="comment"></span> </div> +<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span> <span class="comment"> //! Remove a member in object by its name.</span></div> +<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> <span class="comment"></span><span class="comment"> /*! \param name Name of member to be removed.</span></div> +<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> <span class="comment"> \return Whether the member existed.</span></div> +<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span> <span class="comment"> \note This function may reorder the object members. Use \ref</span></div> +<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span> <span class="comment"> EraseMember(ConstMemberIterator) if you need to preserve the</span></div> +<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span> <span class="comment"> relative order of the remaining members.</span></div> +<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> Ch* name) {</div> +<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> +<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>  <span class="keywordflow">return</span> RemoveMember(n);</div> +<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>  }</div> +<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>  </div> +<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> RemoveMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>  </div> +<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>  MemberIterator m = FindMember(name);</div> +<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>  <span class="keywordflow">if</span> (m != MemberEnd()) {</div> +<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>  RemoveMember(m);</div> +<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>  }</div> +<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>  }</div> +<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span> <span class="comment"></span> </div> +<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span> <span class="comment"> //! Remove a member in object by iterator.</span></div> +<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span> <span class="comment"></span><span class="comment"> /*! \param m member iterator (obtained by FindMember() or MemberBegin()).</span></div> +<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span> <span class="comment"> \return the new iterator after removal.</span></div> +<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span> <span class="comment"> \note This function may reorder the object members. Use \ref</span></div> +<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span> <span class="comment"> EraseMember(ConstMemberIterator) if you need to preserve the</span></div> +<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span> <span class="comment"> relative order of the remaining members.</span></div> +<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span> <span class="comment"> \note Constant time complexity.</span></div> +<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>  MemberIterator RemoveMember(MemberIterator m) {</div> +<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.o.size > 0);</div> +<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetMembersPointer() != 0);</div> +<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(m >= MemberBegin() && m < MemberEnd());</div> +<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>  <span class="keywordflow">return</span> DoRemoveMember(m);</div> +<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>  }</div> +<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span> <span class="comment"></span> </div> +<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span> <span class="comment"> //! Remove a member from an object by iterator.</span></div> +<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span> <span class="comment"></span><span class="comment"> /*! \param pos iterator to the member to remove</span></div> +<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span> <span class="comment"> \pre IsObject() == true && \ref MemberBegin() <= \c pos < \ref MemberEnd()</span></div> +<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span> <span class="comment"> \return Iterator following the removed element.</span></div> +<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span> <span class="comment"> If the iterator \c pos refers to the last element, the \ref MemberEnd() iterator is returned.</span></div> +<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span> <span class="comment"> \note This function preserves the relative order of the remaining object</span></div> +<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span> <span class="comment"> members. If you do not need this, use the more efficient \ref RemoveMember(MemberIterator).</span></div> +<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>  MemberIterator EraseMember(ConstMemberIterator pos) {</div> +<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>  <span class="keywordflow">return</span> EraseMember(pos, pos +1);</div> +<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>  }</div> +<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> <span class="comment"></span> </div> +<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span> <span class="comment"> //! Remove members in the range [first, last) from an object.</span></div> +<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span> <span class="comment"></span><span class="comment"> /*! \param first iterator to the first member to remove</span></div> +<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span> <span class="comment"> \param last iterator following the last member to remove</span></div> +<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span> <span class="comment"> \pre IsObject() == true && \ref MemberBegin() <= \c first <= \c last <= \ref MemberEnd()</span></div> +<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span> <span class="comment"> \return Iterator following the last removed element.</span></div> +<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span> <span class="comment"> \note This function preserves the relative order of the remaining object</span></div> +<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span> <span class="comment"> members.</span></div> +<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>  MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterator last) {</div> +<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.o.size > 0);</div> +<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetMembersPointer() != 0);</div> +<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first >= MemberBegin());</div> +<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first <= last);</div> +<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(last <= MemberEnd());</div> +<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>  <span class="keywordflow">return</span> DoEraseMembers(first, last);</div> +<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>  }</div> +<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span> <span class="comment"></span> </div> +<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span> <span class="comment"> //! Erase a member in object by its name.</span></div> +<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span> <span class="comment"></span><span class="comment"> /*! \param name Name of member to be removed.</span></div> +<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span> <span class="comment"> \return Whether the member existed.</span></div> <div class="line"><a name="l01582"></a><span class="lineno"> 1582</span> <span class="comment"> \note Linear time complexity.</span></div> <div class="line"><a name="l01583"></a><span class="lineno"> 1583</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>  MemberIterator EraseMember(ConstMemberIterator pos) {</div> -<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>  <span class="keywordflow">return</span> EraseMember(pos, pos +1);</div> -<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>  }</div> -<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span> <span class="comment"></span> </div> -<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span> <span class="comment"> //! Remove members in the range [first, last) from an object.</span></div> -<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span> <span class="comment"></span><span class="comment"> /*! \param first iterator to the first member to remove</span></div> -<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span> <span class="comment"> \param last iterator following the last member to remove</span></div> -<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span> <span class="comment"> \pre IsObject() == true && \ref MemberBegin() <= \c first <= \c last <= \ref MemberEnd()</span></div> -<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span> <span class="comment"> \return Iterator following the last removed element.</span></div> -<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span> <span class="comment"> \note This function preserves the relative order of the remaining object</span></div> -<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span> <span class="comment"> members.</span></div> -<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>  MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterator last) {</div> -<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.o.size > 0);</div> -<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetMembersPointer() != 0);</div> -<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first >= MemberBegin());</div> -<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first <= last);</div> -<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(last <= MemberEnd());</div> -<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>  </div> -<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>  MemberIterator pos = MemberBegin() + (first - MemberBegin());</div> -<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>  <span class="keywordflow">for</span> (MemberIterator itr = pos; itr != last; ++itr)</div> -<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>  itr->~Member();</div> -<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>  std::memmove(static_cast<void*>(&*pos), &*last, static_cast<size_t>(MemberEnd() - last) * <span class="keyword">sizeof</span>(Member));</div> -<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>  data_.o.size -= static_cast<SizeType>(last - first);</div> -<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>  <span class="keywordflow">return</span> pos;</div> -<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>  }</div> -<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> <span class="comment"></span> </div> -<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span> <span class="comment"> //! Erase a member in object by its name.</span></div> -<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span> <span class="comment"></span><span class="comment"> /*! \param name Name of member to be removed.</span></div> -<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> <span class="comment"> \return Whether the member existed.</span></div> -<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> Ch* name) {</div> -<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> -<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>  <span class="keywordflow">return</span> EraseMember(n);</div> -<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>  }</div> -<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>  </div> -<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> EraseMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>  </div> -<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> -<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>  MemberIterator m = FindMember(name);</div> -<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>  <span class="keywordflow">if</span> (m != MemberEnd()) {</div> -<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>  EraseMember(m);</div> -<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>  }</div> -<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span>  }</div> -<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>  </div> -<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>  Object GetObject() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> Object(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>  ConstObject GetObject()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstObject(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> <span class="comment"></span> </div> -<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span> <span class="comment"> //!@name Array</span></div> -<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span> <span class="comment"> //! Set this value as an empty array.</span></div> -<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span> <span class="comment"></span><span class="comment"> /*! \post IsArray == true */</span></div> -<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>  GenericValue& SetArray() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span> <span class="comment"></span> </div> -<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span> <span class="comment"> //! Get the number of elements in array.</span></div> -<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Size()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.size; }</div> -<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> <span class="comment"></span> </div> -<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> <span class="comment"> //! Get the capacity of array.</span></div> -<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Capacity()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.capacity; }</div> -<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span> <span class="comment"></span> </div> -<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span> <span class="comment"> //! Check whether the array is empty.</span></div> -<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span> <span class="comment"></span> <span class="keywordtype">bool</span> Empty()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.size == 0; }</div> -<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> <span class="comment"></span> </div> -<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span> <span class="comment"> //! Remove all elements in the array.</span></div> -<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span> <span class="comment"></span><span class="comment"> /*! This function do not deallocate memory in the array, i.e. the capacity is unchanged.</span></div> -<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>  <span class="keywordtype">void</span> Clear() {</div> -<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); </div> -<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>  GenericValue* e = GetElementsPointer();</div> -<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>  <span class="keywordflow">for</span> (GenericValue* v = e; v != e + data_.a.size; ++v)</div> -<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>  v->~GenericValue();</div> -<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>  data_.a.size = 0;</div> -<div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>  }</div> -<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span> <span class="comment"></span> </div> -<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span> <span class="comment"> //! Get an element from array by index.</span></div> -<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true</span></div> -<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span> <span class="comment"> \param index Zero-based index of element.</span></div> -<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span> <span class="comment"> \see operator[](T*)</span></div> -<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>  GenericValue& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index) {</div> -<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(index < data_.a.size);</div> -<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>  <span class="keywordflow">return</span> GetElementsPointer()[index];</div> -<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>  }</div> -<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>  <span class="keyword">const</span> GenericValue& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[index]; }</div> -<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> <span class="comment"></span> </div> -<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> <span class="comment"> //! Element iterator</span></div> -<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> -<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>  ValueIterator Begin() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> GetElementsPointer(); }<span class="comment"></span></div> -<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> <span class="comment"> //! \em Past-the-end element iterator</span></div> -<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> -<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>  ValueIterator End() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> GetElementsPointer() + data_.a.size; }<span class="comment"></span></div> -<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span> <span class="comment"> //! Constant element iterator</span></div> -<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> -<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>  ConstValueIterator Begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).Begin(); }<span class="comment"></span></div> -<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span> <span class="comment"> //! Constant \em past-the-end element iterator</span></div> -<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> -<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>  ConstValueIterator End()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).End(); }</div> -<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> <span class="comment"></span> </div> -<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span> <span class="comment"> //! Request the array to have enough capacity to store elements.</span></div> -<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span> <span class="comment"></span><span class="comment"> /*! \param newCapacity The capacity that the array at least need to have.</span></div> -<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>  GenericValue& Reserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator) {</div> -<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>  <span class="keywordflow">if</span> (newCapacity > data_.a.capacity) {</div> -<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>  SetElementsPointer(reinterpret_cast<GenericValue*>(allocator.Realloc(GetElementsPointer(), data_.a.capacity * <span class="keyword">sizeof</span>(GenericValue), newCapacity * <span class="keyword">sizeof</span>(GenericValue))));</div> -<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>  data_.a.capacity = newCapacity;</div> -<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>  }</div> -<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>  }</div> -<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span> <span class="comment"></span> </div> -<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span> <span class="comment"> //! Append a GenericValue at the end of the array.</span></div> -<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span> <span class="comment"></span><span class="comment"> /*! \param value Value to be appended.</span></div> -<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span> <span class="comment"> \pre IsArray() == true</span></div> -<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> <span class="comment"> \post value.IsNull() == true</span></div> -<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> <span class="comment"> \note The ownership of \c value will be transferred to this array on success.</span></div> -<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> -<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> <span class="comment"> \note Amortized constant time complexity.</span></div> -<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>  GenericValue& PushBack(GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>  <span class="keywordflow">if</span> (data_.a.size >= data_.a.capacity)</div> -<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>  Reserve(data_.a.capacity == 0 ? kDefaultArrayCapacity : (data_.a.capacity + (data_.a.capacity + 1) / 2), allocator);</div> -<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>  GetElementsPointer()[data_.a.size++].RawAssign(value);</div> -<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>  }</div> -<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>  </div> -<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>  GenericValue& PushBack(GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>  <span class="keywordflow">return</span> PushBack(value, allocator);</div> -<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>  }</div> -<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span> <span class="comment"></span> </div> -<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span> <span class="comment"> //! Append a constant string reference at the end of the array.</span></div> -<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span> <span class="comment"></span><span class="comment"> /*! \param value Constant string reference to be appended.</span></div> -<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one used previously. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> <span class="comment"> \pre IsArray() == true</span></div> -<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> -<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span> <span class="comment"> \note Amortized constant time complexity.</span></div> -<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span> <span class="comment"> \see GenericStringRef</span></div> -<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>  GenericValue& PushBack(StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>  <span class="keywordflow">return</span> (*this).template PushBack<StringRefType>(value, allocator);</div> -<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>  }</div> -<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span> <span class="comment"></span> </div> -<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> <span class="comment"> //! Append a primitive value at the end of the array.</span></div> -<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> -<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> <span class="comment"> \param value Value of primitive type T to be appended.</span></div> -<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> <span class="comment"> \pre IsArray() == true</span></div> -<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> -<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span> <span class="comment"></span> </div> -<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> -<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> -<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> -<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> <span class="comment"> \ref PushBack(GenericValue&, Allocator&) or \ref</span></div> -<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span> <span class="comment"> PushBack(StringRefType, Allocator&).</span></div> -<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> -<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> -<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span> <span class="comment"> \note Amortized constant time complexity.</span></div> -<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> -<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>  PushBack(T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>  GenericValue v(value);</div> -<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>  <span class="keywordflow">return</span> PushBack(v, allocator);</div> -<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>  }</div> -<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span> <span class="comment"></span> </div> -<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span> <span class="comment"> //! Remove the last element in the array.</span></div> -<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span> <span class="comment"> \note Constant time complexity.</span></div> -<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>  GenericValue& PopBack() {</div> -<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!Empty());</div> -<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>  GetElementsPointer()[--data_.a.size].~GenericValue();</div> -<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> Ch* name) {</div> +<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> +<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>  <span class="keywordflow">return</span> EraseMember(n);</div> +<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>  }</div> +<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>  </div> +<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> EraseMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>  </div> +<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>  MemberIterator m = FindMember(name);</div> +<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>  <span class="keywordflow">if</span> (m != MemberEnd()) {</div> +<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>  EraseMember(m);</div> +<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>  }</div> +<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>  }</div> +<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>  </div> +<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>  Object GetObject() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> Object(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>  ConstObject GetObject()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstObject(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span> <span class="comment"></span> </div> +<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span> <span class="comment"> //!@name Array</span></div> +<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> <span class="comment"> //! Set this value as an empty array.</span></div> +<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span> <span class="comment"></span><span class="comment"> /*! \post IsArray == true */</span></div> +<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>  GenericValue& SetArray() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> <span class="comment"></span> </div> +<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> <span class="comment"> //! Get the number of elements in array.</span></div> +<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Size()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.size; }</div> +<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span> <span class="comment"></span> </div> +<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span> <span class="comment"> //! Get the capacity of array.</span></div> +<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Capacity()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.capacity; }</div> +<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span> <span class="comment"></span> </div> +<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span> <span class="comment"> //! Check whether the array is empty.</span></div> +<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> <span class="comment"></span> <span class="keywordtype">bool</span> Empty()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.size == 0; }</div> +<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span> <span class="comment"></span> </div> +<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span> <span class="comment"> //! Remove all elements in the array.</span></div> +<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span> <span class="comment"></span><span class="comment"> /*! This function do not deallocate memory in the array, i.e. the capacity is unchanged.</span></div> +<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>  <span class="keywordtype">void</span> Clear() {</div> +<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); </div> +<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>  GenericValue* e = GetElementsPointer();</div> +<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>  <span class="keywordflow">for</span> (GenericValue* v = e; v != e + data_.a.size; ++v)</div> +<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>  v->~GenericValue();</div> +<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>  data_.a.size = 0;</div> +<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>  }</div> +<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span> <span class="comment"></span> </div> +<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span> <span class="comment"> //! Get an element from array by index.</span></div> +<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true</span></div> +<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span> <span class="comment"> \param index Zero-based index of element.</span></div> +<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> <span class="comment"> \see operator[](T*)</span></div> +<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>  GenericValue& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index) {</div> +<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(index < data_.a.size);</div> +<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>  <span class="keywordflow">return</span> GetElementsPointer()[index];</div> +<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>  }</div> +<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>  <span class="keyword">const</span> GenericValue& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[index]; }</div> +<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span> <span class="comment"></span> </div> +<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span> <span class="comment"> //! Element iterator</span></div> +<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> +<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>  ValueIterator Begin() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> GetElementsPointer(); }<span class="comment"></span></div> +<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> <span class="comment"> //! \em Past-the-end element iterator</span></div> +<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> +<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>  ValueIterator End() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> GetElementsPointer() + data_.a.size; }<span class="comment"></span></div> +<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span> <span class="comment"> //! Constant element iterator</span></div> +<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> +<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>  ConstValueIterator Begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).Begin(); }<span class="comment"></span></div> +<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> <span class="comment"> //! Constant \em past-the-end element iterator</span></div> +<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> +<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>  ConstValueIterator End()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).End(); }</div> +<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span> <span class="comment"></span> </div> +<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> <span class="comment"> //! Request the array to have enough capacity to store elements.</span></div> +<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span> <span class="comment"></span><span class="comment"> /*! \param newCapacity The capacity that the array at least need to have.</span></div> +<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>  GenericValue& Reserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator) {</div> +<div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>  <span class="keywordflow">if</span> (newCapacity > data_.a.capacity) {</div> +<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>  SetElementsPointer(reinterpret_cast<GenericValue*>(allocator.Realloc(GetElementsPointer(), data_.a.capacity * <span class="keyword">sizeof</span>(GenericValue), newCapacity * <span class="keyword">sizeof</span>(GenericValue))));</div> +<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>  data_.a.capacity = newCapacity;</div> +<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>  }</div> +<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>  }</div> +<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span> <span class="comment"></span> </div> +<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span> <span class="comment"> //! Append a GenericValue at the end of the array.</span></div> +<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span> <span class="comment"></span><span class="comment"> /*! \param value Value to be appended.</span></div> +<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span> <span class="comment"> \pre IsArray() == true</span></div> +<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span> <span class="comment"> \post value.IsNull() == true</span></div> +<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> <span class="comment"> \note The ownership of \c value will be transferred to this array on success.</span></div> +<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> +<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span> <span class="comment"> \note Amortized constant time complexity.</span></div> +<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>  GenericValue& PushBack(GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>  <span class="keywordflow">if</span> (data_.a.size >= data_.a.capacity)</div> +<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>  Reserve(data_.a.capacity == 0 ? kDefaultArrayCapacity : (data_.a.capacity + (data_.a.capacity + 1) / 2), allocator);</div> +<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>  GetElementsPointer()[data_.a.size++].RawAssign(value);</div> +<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>  }</div> +<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>  </div> +<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>  GenericValue& PushBack(GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>  <span class="keywordflow">return</span> PushBack(value, allocator);</div> +<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>  }</div> +<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span> <span class="comment"></span> </div> +<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span> <span class="comment"> //! Append a constant string reference at the end of the array.</span></div> +<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span> <span class="comment"></span><span class="comment"> /*! \param value Constant string reference to be appended.</span></div> +<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one used previously. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span> <span class="comment"> \pre IsArray() == true</span></div> +<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> +<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span> <span class="comment"> \note Amortized constant time complexity.</span></div> +<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span> <span class="comment"> \see GenericStringRef</span></div> +<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>  GenericValue& PushBack(StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>  <span class="keywordflow">return</span> (*this).template PushBack<StringRefType>(value, allocator);</div> +<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>  }</div> +<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> <span class="comment"></span> </div> +<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span> <span class="comment"> //! Append a primitive value at the end of the array.</span></div> +<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> +<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span> <span class="comment"> \param value Value of primitive type T to be appended.</span></div> +<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span> <span class="comment"> \pre IsArray() == true</span></div> +<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> +<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span> <span class="comment"></span> </div> +<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> +<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> +<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> +<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span> <span class="comment"> \ref PushBack(GenericValue&, Allocator&) or \ref</span></div> +<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span> <span class="comment"> PushBack(StringRefType, Allocator&).</span></div> +<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> +<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> +<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span> <span class="comment"> \note Amortized constant time complexity.</span></div> +<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> +<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>  PushBack(T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>  GenericValue v(value);</div> +<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span>  <span class="keywordflow">return</span> PushBack(v, allocator);</div> +<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>  }</div> +<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span> <span class="comment"></span> </div> +<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> <span class="comment"> //! Remove the last element in the array.</span></div> +<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span> <span class="comment"> \note Constant time complexity.</span></div> +<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>  GenericValue& PopBack() {</div> +<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!Empty());</div> +<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>  GetElementsPointer()[--data_.a.size].~GenericValue();</div> +<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>  }</div> +<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> <span class="comment"></span> </div> +<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span> <span class="comment"> //! Remove an element of array by iterator.</span></div> +<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span> <span class="comment"> \param pos iterator to the element to remove</span></div> +<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> <span class="comment"> \pre IsArray() == true && \ref Begin() <= \c pos < \ref End()</span></div> +<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span> <span class="comment"> \return Iterator following the removed element. If the iterator pos refers to the last element, the End() iterator is returned.</span></div> +<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>  ValueIterator Erase(ConstValueIterator pos) {</div> +<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>  <span class="keywordflow">return</span> Erase(pos, pos + 1);</div> +<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>  }</div> +<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> <span class="comment"></span> </div> +<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span> <span class="comment"> //! Remove elements in the range [first, last) of the array.</span></div> +<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> <span class="comment"> \param first iterator to the first element to remove</span></div> +<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span> <span class="comment"> \param last iterator following the last element to remove</span></div> +<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span> <span class="comment"> \pre IsArray() == true && \ref Begin() <= \c first <= \c last <= \ref End()</span></div> +<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span> <span class="comment"> \return Iterator following the last removed element.</span></div> +<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>  ValueIterator Erase(ConstValueIterator first, ConstValueIterator last) {</div> +<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.a.size > 0);</div> +<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetElementsPointer() != 0);</div> +<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first >= Begin());</div> +<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first <= last);</div> +<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(last <= End());</div> +<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>  ValueIterator pos = Begin() + (first - Begin());</div> +<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>  <span class="keywordflow">for</span> (ValueIterator itr = pos; itr != last; ++itr)</div> +<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>  itr->~GenericValue();</div> +<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>  std::memmove(static_cast<void*>(pos), last, static_cast<size_t>(End() - last) * <span class="keyword">sizeof</span>(GenericValue));</div> +<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>  data_.a.size -= static_cast<SizeType>(last - first);</div> +<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>  <span class="keywordflow">return</span> pos;</div> <div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>  }</div> -<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span> <span class="comment"></span> </div> -<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span> <span class="comment"> //! Remove an element of array by iterator.</span></div> -<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span> <span class="comment"> \param pos iterator to the element to remove</span></div> -<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span> <span class="comment"> \pre IsArray() == true && \ref Begin() <= \c pos < \ref End()</span></div> -<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span> <span class="comment"> \return Iterator following the removed element. If the iterator pos refers to the last element, the End() iterator is returned.</span></div> -<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>  ValueIterator Erase(ConstValueIterator pos) {</div> -<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>  <span class="keywordflow">return</span> Erase(pos, pos + 1);</div> -<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>  }</div> -<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span> <span class="comment"></span> </div> -<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span> <span class="comment"> //! Remove elements in the range [first, last) of the array.</span></div> -<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span> <span class="comment"> \param first iterator to the first element to remove</span></div> -<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span> <span class="comment"> \param last iterator following the last element to remove</span></div> -<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span> <span class="comment"> \pre IsArray() == true && \ref Begin() <= \c first <= \c last <= \ref End()</span></div> -<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span> <span class="comment"> \return Iterator following the last removed element.</span></div> -<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>  ValueIterator Erase(ConstValueIterator first, ConstValueIterator last) {</div> -<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.a.size > 0);</div> -<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetElementsPointer() != 0);</div> -<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first >= Begin());</div> -<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first <= last);</div> -<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(last <= End());</div> -<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>  ValueIterator pos = Begin() + (first - Begin());</div> -<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>  <span class="keywordflow">for</span> (ValueIterator itr = pos; itr != last; ++itr)</div> -<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>  itr->~GenericValue();</div> -<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>  std::memmove(static_cast<void*>(pos), last, static_cast<size_t>(End() - last) * <span class="keyword">sizeof</span>(GenericValue));</div> -<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>  data_.a.size -= static_cast<SizeType>(last - first);</div> -<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>  <span class="keywordflow">return</span> pos;</div> -<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>  }</div> -<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>  </div> -<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>  Array GetArray() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> Array(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>  ConstArray GetArray()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> ConstArray(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span> <span class="comment"></span> </div> -<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span> <span class="comment"> //!@name Number</span></div> -<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span> <span class="comment"></span> </div> -<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>  <span class="keywordtype">int</span> GetInt()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kIntFlag); <span class="keywordflow">return</span> data_.n.i.i; }</div> -<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>  <span class="keywordtype">unsigned</span> GetUint()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kUintFlag); <span class="keywordflow">return</span> data_.n.u.u; }</div> -<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>  int64_t GetInt64()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kInt64Flag); <span class="keywordflow">return</span> data_.n.i64; }</div> -<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>  uint64_t GetUint64()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kUint64Flag); <span class="keywordflow">return</span> data_.n.u64; }</div> -<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span> <span class="comment"></span> </div> -<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span> <span class="comment"> //! Get the value as double type.</span></div> -<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span> <span class="comment"></span><span class="comment"> /*! \note If the value is 64-bit integer type, it may lose precision. Use \c IsLosslessDouble() to check whether the converison is lossless.</span></div> -<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>  <span class="keywordtype">double</span> GetDouble()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsNumber());</div> -<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>  <span class="keywordflow">if</span> ((data_.f.flags & kDoubleFlag) != 0) <span class="keywordflow">return</span> data_.n.d; <span class="comment">// exact type, no conversion.</span></div> -<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>  <span class="keywordflow">if</span> ((data_.f.flags & kIntFlag) != 0) <span class="keywordflow">return</span> data_.n.i.i; <span class="comment">// int -> double</span></div> -<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>  <span class="keywordflow">if</span> ((data_.f.flags & kUintFlag) != 0) <span class="keywordflow">return</span> data_.n.u.u; <span class="comment">// unsigned -> double</span></div> -<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>  <span class="keywordflow">if</span> ((data_.f.flags & kInt64Flag) != 0) <span class="keywordflow">return</span> static_cast<double>(data_.n.i64); <span class="comment">// int64_t -> double (may lose precision)</span></div> -<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>((data_.f.flags & kUint64Flag) != 0); <span class="keywordflow">return</span> static_cast<double>(data_.n.u64); <span class="comment">// uint64_t -> double (may lose precision)</span></div> -<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>  }</div> -<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> <span class="comment"></span> </div> -<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span> <span class="comment"> //! Get the value as float type.</span></div> -<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> <span class="comment"></span><span class="comment"> /*! \note If the value is 64-bit integer type, it may lose precision. Use \c IsLosslessFloat() to check whether the converison is lossless.</span></div> -<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>  <span class="keywordtype">float</span> GetFloat()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>  <span class="keywordflow">return</span> static_cast<float>(GetDouble());</div> -<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>  }</div> -<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>  </div> -<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>  GenericValue& SetInt(<span class="keywordtype">int</span> i) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(i); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>  GenericValue& SetUint(<span class="keywordtype">unsigned</span> u) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(u); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>  GenericValue& SetInt64(int64_t i64) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(i64); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>  GenericValue& SetUint64(uint64_t u64) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(u64); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>  GenericValue& SetDouble(<span class="keywordtype">double</span> d) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(d); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>  GenericValue& SetFloat(<span class="keywordtype">float</span> f) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(static_cast<double>(f)); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> <span class="comment"></span> </div> -<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> <span class="comment"> //!@name String</span></div> -<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>  </div> +<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>  Array GetArray() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> Array(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>  ConstArray GetArray()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> ConstArray(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span> <span class="comment"></span> </div> +<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span> <span class="comment"> //!@name Number</span></div> +<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span> <span class="comment"></span> </div> +<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>  <span class="keywordtype">int</span> GetInt()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kIntFlag); <span class="keywordflow">return</span> data_.n.i.i; }</div> +<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>  <span class="keywordtype">unsigned</span> GetUint()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kUintFlag); <span class="keywordflow">return</span> data_.n.u.u; }</div> +<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>  int64_t GetInt64()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kInt64Flag); <span class="keywordflow">return</span> data_.n.i64; }</div> +<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>  uint64_t GetUint64()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kUint64Flag); <span class="keywordflow">return</span> data_.n.u64; }</div> +<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span> <span class="comment"></span> </div> +<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span> <span class="comment"> //! Get the value as double type.</span></div> +<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span> <span class="comment"></span><span class="comment"> /*! \note If the value is 64-bit integer type, it may lose precision. Use \c IsLosslessDouble() to check whether the converison is lossless.</span></div> +<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>  <span class="keywordtype">double</span> GetDouble()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsNumber());</div> +<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>  <span class="keywordflow">if</span> ((data_.f.flags & kDoubleFlag) != 0) <span class="keywordflow">return</span> data_.n.d; <span class="comment">// exact type, no conversion.</span></div> +<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>  <span class="keywordflow">if</span> ((data_.f.flags & kIntFlag) != 0) <span class="keywordflow">return</span> data_.n.i.i; <span class="comment">// int -> double</span></div> +<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>  <span class="keywordflow">if</span> ((data_.f.flags & kUintFlag) != 0) <span class="keywordflow">return</span> data_.n.u.u; <span class="comment">// unsigned -> double</span></div> +<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>  <span class="keywordflow">if</span> ((data_.f.flags & kInt64Flag) != 0) <span class="keywordflow">return</span> static_cast<double>(data_.n.i64); <span class="comment">// int64_t -> double (may lose precision)</span></div> +<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>((data_.f.flags & kUint64Flag) != 0); <span class="keywordflow">return</span> static_cast<double>(data_.n.u64); <span class="comment">// uint64_t -> double (may lose precision)</span></div> +<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>  }</div> +<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span> <span class="comment"></span> </div> +<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span> <span class="comment"> //! Get the value as float type.</span></div> +<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span> <span class="comment"></span><span class="comment"> /*! \note If the value is 64-bit integer type, it may lose precision. Use \c IsLosslessFloat() to check whether the converison is lossless.</span></div> +<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>  <span class="keywordtype">float</span> GetFloat()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>  <span class="keywordflow">return</span> static_cast<float>(GetDouble());</div> +<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>  }</div> +<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>  </div> +<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>  GenericValue& SetInt(<span class="keywordtype">int</span> i) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(i); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>  GenericValue& SetUint(<span class="keywordtype">unsigned</span> u) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(u); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>  GenericValue& SetInt64(int64_t i64) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(i64); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>  GenericValue& SetUint64(uint64_t u64) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(u64); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>  GenericValue& SetDouble(<span class="keywordtype">double</span> d) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(d); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>  GenericValue& SetFloat(<span class="keywordtype">float</span> f) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(static_cast<double>(f)); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span> <span class="comment"></span> </div> +<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span> <span class="comment"> //!@name String</span></div> +<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span> <span class="comment"></span> </div> +<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>  <span class="keyword">const</span> Ch* GetString()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString()); <span class="keywordflow">return</span> DataString(data_); }</div> +<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span> <span class="comment"></span> </div> +<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span> <span class="comment"> //! Get the length of string.</span></div> +<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span> <span class="comment"></span><span class="comment"> /*! Since rapidjson permits "\\u0000" in the json string, strlen(v.GetString()) may not equal to v.GetStringLength().</span></div> +<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> GetStringLength()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString()); <span class="keywordflow">return</span> DataStringLength(data_); }</div> +<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span> <span class="comment"></span> </div> +<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span> <span class="comment"> //! Set this value as a string without copying source string.</span></div> +<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span> <span class="comment"></span><span class="comment"> /*! This version has better performance with supplied length, and also support string containing null character.</span></div> +<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span> <span class="comment"> \param s source string pointer. </span></div> +<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span> <span class="comment"> \param length The length of source string, excluding the trailing null terminator.</span></div> +<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span> <span class="comment"> \post IsString() == true && GetString() == s && GetStringLength() == length</span></div> +<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span> <span class="comment"> \see SetString(StringRefType)</span></div> +<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length)); }</div> +<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> <span class="comment"></span> </div> +<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> <span class="comment"> //! Set this value as a string without copying source string.</span></div> +<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span> <span class="comment"></span><span class="comment"> /*! \param s source string reference</span></div> +<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span> <span class="comment"> \post IsString() == true && GetString() == s && GetStringLength() == s.length</span></div> +<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>  GenericValue& SetString(StringRefType s) { this->~GenericValue(); SetStringRaw(s); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span> <span class="comment"></span> </div> +<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> +<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span> <span class="comment"></span><span class="comment"> /*! This version has better performance with supplied length, and also support string containing null character.</span></div> +<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span> <span class="comment"> \param s source string. </span></div> +<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span> <span class="comment"> \param length The length of source string, excluding the trailing null terminator.</span></div> +<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span> <span class="comment"> \post IsString() == true && GetString() != s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> +<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length), allocator); }</div> <div class="line"><a name="l01860"></a><span class="lineno"> 1860</span> <span class="comment"></span> </div> -<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>  <span class="keyword">const</span> Ch* GetString()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString()); <span class="keywordflow">return</span> (data_.f.flags & kInlineStrFlag) ? data_.ss.str : GetStringPointer(); }</div> -<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> <span class="comment"></span> </div> -<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> <span class="comment"> //! Get the length of string.</span></div> -<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span> <span class="comment"></span><span class="comment"> /*! Since rapidjson permits "\\u0000" in the json string, strlen(v.GetString()) may not equal to v.GetStringLength().</span></div> -<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> GetStringLength()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString()); <span class="keywordflow">return</span> ((data_.f.flags & kInlineStrFlag) ? (data_.ss.GetLength()) : data_.s.length); }</div> -<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span> <span class="comment"></span> </div> -<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span> <span class="comment"> //! Set this value as a string without copying source string.</span></div> -<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span> <span class="comment"></span><span class="comment"> /*! This version has better performance with supplied length, and also support string containing null character.</span></div> -<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> <span class="comment"> \param s source string pointer. </span></div> -<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> <span class="comment"> \param length The length of source string, excluding the trailing null terminator.</span></div> +<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> +<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> <span class="comment"></span><span class="comment"> /*! \param s source string. </span></div> +<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span> <span class="comment"> \post IsString() == true && GetString() != s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> +<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> +<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span> <span class="comment"></span> </div> +<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> +<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> <span class="comment"></span><span class="comment"> /*! \param s source string reference</span></div> +<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> <div class="line"><a name="l01872"></a><span class="lineno"> 1872</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span> <span class="comment"> \post IsString() == true && GetString() == s && GetStringLength() == length</span></div> -<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> <span class="comment"> \see SetString(StringRefType)</span></div> -<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length)); }</div> -<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span> <span class="comment"></span> </div> -<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> <span class="comment"> //! Set this value as a string without copying source string.</span></div> -<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> <span class="comment"></span><span class="comment"> /*! \param s source string reference</span></div> -<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span> <span class="comment"> \post IsString() == true && GetString() == s && GetStringLength() == s.length</span></div> -<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>  GenericValue& SetString(StringRefType s) { this->~GenericValue(); SetStringRaw(s); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span> <span class="comment"></span> </div> -<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> -<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span> <span class="comment"></span><span class="comment"> /*! This version has better performance with supplied length, and also support string containing null character.</span></div> -<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span> <span class="comment"> \param s source string. </span></div> -<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span> <span class="comment"> \param length The length of source string, excluding the trailing null terminator.</span></div> -<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span> <span class="comment"> \post IsString() == true && GetString() != s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> -<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length), allocator); }</div> -<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span> <span class="comment"></span> </div> -<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> -<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span> <span class="comment"></span><span class="comment"> /*! \param s source string. </span></div> -<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span> <span class="comment"> \post IsString() == true && GetString() != s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> -<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> -<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span> <span class="comment"></span> </div> -<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> -<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span> <span class="comment"></span><span class="comment"> /*! \param s source string reference</span></div> -<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span> <span class="comment"> \post IsString() == true && GetString() != s.s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> -<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>  GenericValue& SetString(StringRefType s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { this->~GenericValue(); SetStringRaw(s, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>  </div> -<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> -<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span> <span class="comment"></span><span class="comment"> /*! \param s source string.</span></div> -<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span> <span class="comment"> \post IsString() == true && GetString() != s.data() && strcmp(GetString(),s.data() == 0 && GetStringLength() == s.size()</span></div> -<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span> <span class="comment"> \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> -<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>  GenericValue& SetString(<span class="keyword">const</span> std::basic_string<Ch>& s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> -<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span> <span class="comment"></span> </div> -<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span> <span class="comment"> //!@name Array</span></div> -<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span> <span class="comment"> //! Templated version for checking whether this value is type T.</span></div> -<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span> <span class="comment"> \tparam T Either \c bool, \c int, \c unsigned, \c int64_t, \c uint64_t, \c double, \c float, \c const \c char*, \c std::basic_string<Ch></span></div> -<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>  <span class="keywordtype">bool</span> Is()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Is(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>  </div> -<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>  T Get()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Get(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>  </div> -<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>  T Get() { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Get(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span> <span class="comment"> \post IsString() == true && GetString() != s.s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> +<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>  GenericValue& SetString(StringRefType s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { this->~GenericValue(); SetStringRaw(s, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>  </div> +<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> +<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> <span class="comment"></span><span class="comment"> /*! \param s source string.</span></div> +<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> <span class="comment"> \post IsString() == true && GetString() != s.data() && strcmp(GetString(),s.data() == 0 && GetStringLength() == s.size()</span></div> +<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span> <span class="comment"> \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> +<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>  GenericValue& SetString(<span class="keyword">const</span> std::basic_string<Ch>& s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> +<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span> <span class="comment"></span> </div> +<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span> <span class="comment"> //!@name Array</span></div> +<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span> <span class="comment"> //! Templated version for checking whether this value is type T.</span></div> +<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span> <span class="comment"> \tparam T Either \c bool, \c int, \c unsigned, \c int64_t, \c uint64_t, \c double, \c float, \c const \c char*, \c std::basic_string<Ch></span></div> +<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>  <span class="keywordtype">bool</span> Is()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Is(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>  </div> +<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>  T Get()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Get(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>  </div> +<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>  T Get() { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Get(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>  </div> +<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>  ValueType& Set(<span class="keyword">const</span> T& data) { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Set(*<span class="keyword">this</span>, data); }</div> +<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>  </div> +<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>  ValueType& Set(<span class="keyword">const</span> T& data, AllocatorType& allocator) { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Set(*<span class="keyword">this</span>, data, allocator); }</div> +<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span> <span class="comment"></span> </div> +<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span> <span class="comment"> //! Generate events of this value to a Handler.</span></div> +<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span> <span class="comment"></span><span class="comment"> /*! This function adopts the GoF visitor pattern.</span></div> +<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span> <span class="comment"> Typical usage is to output this JSON value as JSON text via Writer, which is a Handler.</span></div> +<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span> <span class="comment"> It can also be used to deep clone this value via GenericDocument, which is also a Handler.</span></div> +<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span> <span class="comment"> \tparam Handler type of handler.</span></div> +<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span> <span class="comment"> \param handler An object implementing concept Handler.</span></div> +<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> Handler></div> +<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>  <span class="keywordtype">bool</span> Accept(<a class="code" href="classrapidjson_1_1_handler.html">Handler</a>& handler)<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>  <span class="keywordflow">switch</span>(GetType()) {</div> +<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a>: <span class="keywordflow">return</span> handler.Null();</div> +<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a>: <span class="keywordflow">return</span> handler.Bool(<span class="keyword">false</span>);</div> +<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a>: <span class="keywordflow">return</span> handler.Bool(<span class="keyword">true</span>);</div> +<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>  </div> +<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>:</div> +<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.StartObject()))</div> +<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>  <span class="keywordflow">for</span> (ConstMemberIterator m = MemberBegin(); m != MemberEnd(); ++m) {</div> +<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(m->name.IsString()); <span class="comment">// User may change the type of name by MemberIterator.</span></div> +<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.Key(m->name.GetString(), m->name.GetStringLength(), (m->name.data_.f.flags & kCopyFlag) != 0)))</div> +<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!m->value.Accept(handler)))</div> +<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>  }</div> +<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>  <span class="keywordflow">return</span> handler.EndObject(data_.o.size);</div> <div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>  </div> -<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>  ValueType& Set(<span class="keyword">const</span> T& data) { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Set(*<span class="keyword">this</span>, data); }</div> -<div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>  </div> -<div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>  ValueType& Set(<span class="keyword">const</span> T& data, AllocatorType& allocator) { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Set(*<span class="keyword">this</span>, data, allocator); }</div> -<div class="line"><a name="l01945"></a><span class="lineno"> 1945</span> <span class="comment"></span> </div> -<div class="line"><a name="l01946"></a><span class="lineno"> 1946</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01947"></a><span class="lineno"> 1947</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span> <span class="comment"> //! Generate events of this value to a Handler.</span></div> -<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span> <span class="comment"></span><span class="comment"> /*! This function adopts the GoF visitor pattern.</span></div> -<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span> <span class="comment"> Typical usage is to output this JSON value as JSON text via Writer, which is a Handler.</span></div> -<div class="line"><a name="l01951"></a><span class="lineno"> 1951</span> <span class="comment"> It can also be used to deep clone this value via GenericDocument, which is also a Handler.</span></div> -<div class="line"><a name="l01952"></a><span class="lineno"> 1952</span> <span class="comment"> \tparam Handler type of handler.</span></div> -<div class="line"><a name="l01953"></a><span class="lineno"> 1953</span> <span class="comment"> \param handler An object implementing concept Handler.</span></div> -<div class="line"><a name="l01954"></a><span class="lineno"> 1954</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> Handler></div> -<div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>  <span class="keywordtype">bool</span> Accept(<a class="code" href="classrapidjson_1_1_handler.html">Handler</a>& handler)<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>  <span class="keywordflow">switch</span>(GetType()) {</div> -<div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a>: <span class="keywordflow">return</span> handler.Null();</div> -<div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a>: <span class="keywordflow">return</span> handler.Bool(<span class="keyword">false</span>);</div> -<div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a>: <span class="keywordflow">return</span> handler.Bool(<span class="keyword">true</span>);</div> -<div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>  </div> -<div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>:</div> -<div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.StartObject()))</div> -<div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>  <span class="keywordflow">for</span> (ConstMemberIterator m = MemberBegin(); m != MemberEnd(); ++m) {</div> -<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(m->name.IsString()); <span class="comment">// User may change the type of name by MemberIterator.</span></div> -<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.Key(m->name.GetString(), m->name.GetStringLength(), (m->name.data_.f.flags & kCopyFlag) != 0)))</div> -<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!m->value.Accept(handler)))</div> -<div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>  }</div> -<div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>  <span class="keywordflow">return</span> handler.EndObject(data_.o.size);</div> -<div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>  </div> -<div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>:</div> -<div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.StartArray()))</div> -<div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> GenericValue* v = Begin(); v != End(); ++v)</div> -<div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!v->Accept(handler)))</div> -<div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>  <span class="keywordflow">return</span> handler.EndArray(data_.a.size);</div> -<div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>  </div> -<div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> -<div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>  <span class="keywordflow">return</span> handler.String(GetString(), GetStringLength(), (data_.f.flags & kCopyFlag) != 0);</div> -<div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>  </div> -<div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>  <span class="keywordflow">default</span>:</div> -<div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetType() == <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>);</div> -<div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>  <span class="keywordflow">if</span> (IsDouble()) <span class="keywordflow">return</span> handler.Double(data_.n.d);</div> -<div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsInt()) <span class="keywordflow">return</span> handler.Int(data_.n.i.i);</div> -<div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsUint()) <span class="keywordflow">return</span> handler.Uint(data_.n.u.u);</div> -<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsInt64()) <span class="keywordflow">return</span> handler.Int64(data_.n.i64);</div> -<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>  <span class="keywordflow">else</span> <span class="keywordflow">return</span> handler.Uint64(data_.n.u64);</div> -<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>  }</div> -<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>  }</div> -<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>  </div> -<div class="line"><a name="l01995"></a><span class="lineno"> 1995</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue;</div> -<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericDocument;</div> -<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>  </div> -<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>  <span class="keyword">enum</span> {</div> -<div class="line"><a name="l02000"></a><span class="lineno"> 2000</span>  kBoolFlag = 0x0008,</div> -<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>  kNumberFlag = 0x0010,</div> -<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>  kIntFlag = 0x0020,</div> -<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>  kUintFlag = 0x0040,</div> -<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>  kInt64Flag = 0x0080,</div> -<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>  kUint64Flag = 0x0100,</div> -<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>  kDoubleFlag = 0x0200,</div> -<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>  kStringFlag = 0x0400,</div> -<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>  kCopyFlag = 0x0800,</div> -<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>  kInlineStrFlag = 0x1000,</div> +<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>:</div> +<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.StartArray()))</div> +<div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> GenericValue* v = Begin(); v != End(); ++v)</div> +<div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!v->Accept(handler)))</div> +<div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>  <span class="keywordflow">return</span> handler.EndArray(data_.a.size);</div> +<div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>  </div> +<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> +<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>  <span class="keywordflow">return</span> handler.String(GetString(), GetStringLength(), (data_.f.flags & kCopyFlag) != 0);</div> +<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>  </div> +<div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>  <span class="keywordflow">default</span>:</div> +<div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetType() == <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>);</div> +<div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>  <span class="keywordflow">if</span> (IsDouble()) <span class="keywordflow">return</span> handler.Double(data_.n.d);</div> +<div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsInt()) <span class="keywordflow">return</span> handler.Int(data_.n.i.i);</div> +<div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsUint()) <span class="keywordflow">return</span> handler.Uint(data_.n.u.u);</div> +<div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsInt64()) <span class="keywordflow">return</span> handler.Int64(data_.n.i64);</div> +<div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>  <span class="keywordflow">else</span> <span class="keywordflow">return</span> handler.Uint64(data_.n.u64);</div> +<div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>  }</div> +<div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>  }</div> +<div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>  </div> +<div class="line"><a name="l01961"></a><span class="lineno"> 1961</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue;</div> +<div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericDocument;</div> +<div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>  </div> +<div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>  <span class="keyword">enum</span> {</div> +<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>  kBoolFlag = 0x0008,</div> +<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>  kNumberFlag = 0x0010,</div> +<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>  kIntFlag = 0x0020,</div> +<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>  kUintFlag = 0x0040,</div> +<div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>  kInt64Flag = 0x0080,</div> +<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>  kUint64Flag = 0x0100,</div> +<div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>  kDoubleFlag = 0x0200,</div> +<div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>  kStringFlag = 0x0400,</div> +<div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>  kCopyFlag = 0x0800,</div> +<div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>  kInlineStrFlag = 0x1000,</div> +<div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>  </div> +<div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>  <span class="comment">// Initial flags of different types.</span></div> +<div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>  kNullFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a>,</div> +<div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>  <span class="comment">// These casts are added to suppress the warning on MSVC about bitwise operations between enums of different types.</span></div> +<div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>  kTrueFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a>) | static_cast<int>(kBoolFlag),</div> +<div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>  kFalseFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a>) | static_cast<int>(kBoolFlag),</div> +<div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>  kNumberIntFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag),</div> +<div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>  kNumberUintFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kUintFlag | kUint64Flag | kInt64Flag),</div> +<div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>  kNumberInt64Flag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kInt64Flag),</div> +<div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>  kNumberUint64Flag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kUint64Flag),</div> +<div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>  kNumberDoubleFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kDoubleFlag),</div> +<div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>  kNumberAnyFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag | kUintFlag | kUint64Flag | kDoubleFlag),</div> +<div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>  kConstStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag),</div> +<div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>  kCopyStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag | kCopyFlag),</div> +<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>  kShortStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag | kCopyFlag | kInlineStrFlag),</div> +<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>  kObjectFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>,</div> +<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>  kArrayFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>,</div> +<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>  </div> +<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>  kTypeMask = 0x07</div> +<div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>  };</div> +<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>  </div> +<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> kDefaultArrayCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY</a>;</div> +<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> kDefaultObjectCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272">RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY</a>;</div> +<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>  </div> +<div class="line"><a name="l02000"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_flag.html"> 2000</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_flag.html">Flag</a> {</div> +<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span> <span class="preprocessor">#if RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + 6]; <span class="comment">// 2 x SizeType + lower 48-bit pointer</span></div> +<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span> <span class="preprocessor">#elif RAPIDJSON_64BIT</span></div> +<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) + 6]; <span class="comment">// 6 padding bytes</span></div> +<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) + 2]; <span class="comment">// 2 padding bytes</span></div> +<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>  uint16_t flags;</div> +<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>  };</div> <div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>  </div> -<div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>  <span class="comment">// Initial flags of different types.</span></div> -<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>  kNullFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a>,</div> -<div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>  <span class="comment">// These casts are added to suppress the warning on MSVC about bitwise operations between enums of different types.</span></div> -<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>  kTrueFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a>) | static_cast<int>(kBoolFlag),</div> -<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>  kFalseFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a>) | static_cast<int>(kBoolFlag),</div> -<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>  kNumberIntFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag),</div> -<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>  kNumberUintFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kUintFlag | kUint64Flag | kInt64Flag),</div> -<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>  kNumberInt64Flag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kInt64Flag),</div> -<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>  kNumberUint64Flag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kUint64Flag),</div> -<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>  kNumberDoubleFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kDoubleFlag),</div> -<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>  kNumberAnyFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag | kUintFlag | kUint64Flag | kDoubleFlag),</div> -<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>  kConstStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag),</div> -<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>  kCopyStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag | kCopyFlag),</div> -<div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>  kShortStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag | kCopyFlag | kInlineStrFlag),</div> -<div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>  kObjectFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>,</div> -<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>  kArrayFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>,</div> -<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>  </div> -<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>  kTypeMask = 0x07</div> -<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>  };</div> -<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>  </div> -<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> kDefaultArrayCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY</a>;</div> -<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> kDefaultObjectCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272">RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY</a>;</div> +<div class="line"><a name="l02011"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_string.html"> 2011</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html">String</a> {</div> +<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length;</div> +<div class="line"><a name="l02013"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260"> 2013</a></span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> <a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260">hashcode</a>; <span class="comment">//!< reserved</span></div> +<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span> <span class="comment"></span> <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str;</div> +<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> +<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>  </div> +<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>  <span class="comment">// implementation detail: ShortString can represent zero-terminated strings up to MaxSize chars</span></div> +<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>  <span class="comment">// (excluding the terminating zero) and store a value to determine the length of the contained</span></div> +<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>  <span class="comment">// string in the last character str[LenPos] by storing "MaxSize - length" there. If the string</span></div> +<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>  <span class="comment">// to store has the maximal length of MaxSize then str[LenPos] will be 0 and therefore act as</span></div> +<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>  <span class="comment">// the string terminator as well. For getting the string length back from that value just use</span></div> +<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>  <span class="comment">// "MaxSize - str[LenPos]".</span></div> +<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>  <span class="comment">// This allows to store 13-chars strings in 32-bit mode, 21-chars strings in 64-bit mode,</span></div> +<div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>  <span class="comment">// 13-chars strings for RAPIDJSON_48BITPOINTER_OPTIMIZATION=1 inline (for `UTF8`-encoded strings).</span></div> +<div class="line"><a name="l02025"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_short_string.html"> 2025</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_short_string.html">ShortString</a> {</div> +<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>  <span class="keyword">enum</span> { MaxChars = <span class="keyword">sizeof</span>(static_cast<Flag*>(0)->payload) / <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>), MaxSize = MaxChars - 1, LenPos = MaxSize };</div> +<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> str[MaxChars];</div> +<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>  </div> +<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>  <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> Usable(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len) { <span class="keywordflow">return</span> (MaxSize >= len); }</div> +<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>  <span class="keyword">inline</span> <span class="keywordtype">void</span> SetLength(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len) { str[LenPos] = static_cast<Ch>(MaxSize - len); }</div> +<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>  <span class="keyword">inline</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> GetLength()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> static_cast<SizeType>(MaxSize - str[LenPos]); }</div> +<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>  }; <span class="comment">// at most as many bytes as "String" above => 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> <div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>  </div> -<div class="line"><a name="l02034"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_flag.html"> 2034</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_flag.html">Flag</a> {</div> -<div class="line"><a name="l02035"></a><span class="lineno"> 2035</span> <span class="preprocessor">#if RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + 6]; <span class="comment">// 2 x SizeType + lower 48-bit pointer</span></div> -<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span> <span class="preprocessor">#elif RAPIDJSON_64BIT</span></div> -<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) + 6]; <span class="comment">// 6 padding bytes</span></div> -<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) + 2]; <span class="comment">// 2 padding bytes</span></div> -<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>  uint16_t flags;</div> -<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>  };</div> -<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>  </div> -<div class="line"><a name="l02045"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_string.html"> 2045</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html">String</a> {</div> -<div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length;</div> -<div class="line"><a name="l02047"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260"> 2047</a></span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> <a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260">hashcode</a>; <span class="comment">//!< reserved</span></div> -<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span> <span class="comment"></span> <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str;</div> -<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> -<div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>  </div> -<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>  <span class="comment">// implementation detail: ShortString can represent zero-terminated strings up to MaxSize chars</span></div> -<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>  <span class="comment">// (excluding the terminating zero) and store a value to determine the length of the contained</span></div> -<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>  <span class="comment">// string in the last character str[LenPos] by storing "MaxSize - length" there. If the string</span></div> -<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>  <span class="comment">// to store has the maximal length of MaxSize then str[LenPos] will be 0 and therefore act as</span></div> -<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>  <span class="comment">// the string terminator as well. For getting the string length back from that value just use</span></div> -<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>  <span class="comment">// "MaxSize - str[LenPos]".</span></div> -<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>  <span class="comment">// This allows to store 13-chars strings in 32-bit mode, 21-chars strings in 64-bit mode,</span></div> -<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>  <span class="comment">// 13-chars strings for RAPIDJSON_48BITPOINTER_OPTIMIZATION=1 inline (for `UTF8`-encoded strings).</span></div> -<div class="line"><a name="l02059"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_short_string.html"> 2059</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_short_string.html">ShortString</a> {</div> -<div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>  <span class="keyword">enum</span> { MaxChars = <span class="keyword">sizeof</span>(static_cast<Flag*>(0)->payload) / <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>), MaxSize = MaxChars - 1, LenPos = MaxSize };</div> -<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> str[MaxChars];</div> -<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>  </div> -<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>  <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> Usable(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len) { <span class="keywordflow">return</span> (MaxSize >= len); }</div> -<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>  <span class="keyword">inline</span> <span class="keywordtype">void</span> SetLength(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len) { str[LenPos] = static_cast<Ch>(MaxSize - len); }</div> -<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>  <span class="keyword">inline</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> GetLength()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> static_cast<SizeType>(MaxSize - str[LenPos]); }</div> -<div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>  }; <span class="comment">// at most as many bytes as "String" above => 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> -<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>  </div> -<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>  <span class="comment">// By using proper binary layout, retrieval of different integer types do not need conversions.</span></div> -<div class="line"><a name="l02069"></a><span class="lineno"><a class="line" href="unionrapidjson_1_1_generic_value_1_1_number.html"> 2069</a></span>  <span class="keyword">union </span><a class="code" href="unionrapidjson_1_1_generic_value_1_1_number.html">Number</a> {</div> -<div class="line"><a name="l02070"></a><span class="lineno"> 2070</span> <span class="preprocessor">#if RAPIDJSON_ENDIAN == RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">I</a> {</div> -<div class="line"><a name="l02072"></a><span class="lineno"> 2072</span>  <span class="keywordtype">int</span> i;</div> -<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>  <span class="keywordtype">char</span> padding[4];</div> -<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>  }i;</div> -<div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">U</a> {</div> -<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>  <span class="keywordtype">unsigned</span> u;</div> -<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>  <span class="keywordtype">char</span> padding2[4];</div> -<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>  }u;</div> -<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l02080"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html"> 2080</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">I</a> {</div> -<div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>  <span class="keywordtype">char</span> padding[4];</div> -<div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>  <span class="keywordtype">int</span> i;</div> -<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>  }i;</div> -<div class="line"><a name="l02084"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html"> 2084</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">U</a> {</div> -<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>  <span class="keywordtype">char</span> padding2[4];</div> -<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>  <span class="keywordtype">unsigned</span> u;</div> -<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>  }u;</div> -<div class="line"><a name="l02088"></a><span class="lineno"> 2088</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>  int64_t i64;</div> -<div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>  uint64_t u64;</div> -<div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>  <span class="keywordtype">double</span> d;</div> -<div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>  }; <span class="comment">// 8 bytes</span></div> -<div class="line"><a name="l02093"></a><span class="lineno"> 2093</span>  </div> -<div class="line"><a name="l02094"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_object_data.html"> 2094</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_object_data.html">ObjectData</a> {</div> -<div class="line"><a name="l02095"></a><span class="lineno"> 2095</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> size;</div> -<div class="line"><a name="l02096"></a><span class="lineno"> 2096</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity;</div> -<div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* members;</div> -<div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> -<div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>  </div> -<div class="line"><a name="l02100"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_array_data.html"> 2100</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_array_data.html">ArrayData</a> {</div> -<div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> size;</div> -<div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity;</div> -<div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* elements;</div> -<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> -<div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>  </div> -<div class="line"><a name="l02106"></a><span class="lineno"><a class="line" href="unionrapidjson_1_1_generic_value_1_1_data.html"> 2106</a></span>  <span class="keyword">union </span><a class="code" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> {</div> -<div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html">String</a> s;</div> -<div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_short_string.html">ShortString</a> ss;</div> -<div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>  <a class="code" href="unionrapidjson_1_1_generic_value_1_1_number.html">Number</a> n;</div> -<div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_object_data.html">ObjectData</a> o;</div> -<div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_array_data.html">ArrayData</a> a;</div> -<div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_flag.html">Flag</a> f;</div> -<div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>  }; <span class="comment">// 16 bytes in 32-bit mode, 24 bytes in 64-bit mode, 16 bytes in 64-bit with RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>  </div> -<div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>  RAPIDJSON_FORCEINLINE <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* GetStringPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>, data_.s.str); }</div> -<div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>  RAPIDJSON_FORCEINLINE <span class="keyword">const</span> Ch* SetStringPointer(<span class="keyword">const</span> Ch* str) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(Ch, data_.s.str, str); }</div> -<div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>  RAPIDJSON_FORCEINLINE GenericValue* GetElementsPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(GenericValue, data_.a.elements); }</div> -<div class="line"><a name="l02118"></a><span class="lineno"> 2118</span>  RAPIDJSON_FORCEINLINE GenericValue* SetElementsPointer(GenericValue* elements) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(GenericValue, data_.a.elements, elements); }</div> -<div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>  RAPIDJSON_FORCEINLINE Member* GetMembersPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(Member, data_.o.members); }</div> -<div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>  RAPIDJSON_FORCEINLINE Member* SetMembersPointer(Member* members) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(Member, data_.o.members, members); }</div> +<div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>  <span class="comment">// By using proper binary layout, retrieval of different integer types do not need conversions.</span></div> +<div class="line"><a name="l02035"></a><span class="lineno"><a class="line" href="unionrapidjson_1_1_generic_value_1_1_number.html"> 2035</a></span>  <span class="keyword">union </span><a class="code" href="unionrapidjson_1_1_generic_value_1_1_number.html">Number</a> {</div> +<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span> <span class="preprocessor">#if RAPIDJSON_ENDIAN == RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">I</a> {</div> +<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>  <span class="keywordtype">int</span> i;</div> +<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>  <span class="keywordtype">char</span> padding[4];</div> +<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>  }i;</div> +<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">U</a> {</div> +<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>  <span class="keywordtype">unsigned</span> u;</div> +<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>  <span class="keywordtype">char</span> padding2[4];</div> +<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>  }u;</div> +<div class="line"><a name="l02045"></a><span class="lineno"> 2045</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l02046"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html"> 2046</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">I</a> {</div> +<div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>  <span class="keywordtype">char</span> padding[4];</div> +<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>  <span class="keywordtype">int</span> i;</div> +<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>  }i;</div> +<div class="line"><a name="l02050"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html"> 2050</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">U</a> {</div> +<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>  <span class="keywordtype">char</span> padding2[4];</div> +<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>  <span class="keywordtype">unsigned</span> u;</div> +<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>  }u;</div> +<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>  int64_t i64;</div> +<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>  uint64_t u64;</div> +<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>  <span class="keywordtype">double</span> d;</div> +<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>  }; <span class="comment">// 8 bytes</span></div> +<div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>  </div> +<div class="line"><a name="l02060"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_object_data.html"> 2060</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_object_data.html">ObjectData</a> {</div> +<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> size;</div> +<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity;</div> +<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* members;</div> +<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> +<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>  </div> +<div class="line"><a name="l02066"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_array_data.html"> 2066</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_array_data.html">ArrayData</a> {</div> +<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> size;</div> +<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity;</div> +<div class="line"><a name="l02069"></a><span class="lineno"> 2069</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* elements;</div> +<div class="line"><a name="l02070"></a><span class="lineno"> 2070</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> +<div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>  </div> +<div class="line"><a name="l02072"></a><span class="lineno"><a class="line" href="unionrapidjson_1_1_generic_value_1_1_data.html"> 2072</a></span>  <span class="keyword">union </span><a class="code" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> {</div> +<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html">String</a> s;</div> +<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_short_string.html">ShortString</a> ss;</div> +<div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>  <a class="code" href="unionrapidjson_1_1_generic_value_1_1_number.html">Number</a> n;</div> +<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_object_data.html">ObjectData</a> o;</div> +<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_array_data.html">ArrayData</a> a;</div> +<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_flag.html">Flag</a> f;</div> +<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span>  }; <span class="comment">// 16 bytes in 32-bit mode, 24 bytes in 64-bit mode, 16 bytes in 64-bit with RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l02080"></a><span class="lineno"> 2080</span>  </div> +<div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* DataString(<span class="keyword">const</span> <a class="code" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a>& data) {</div> +<div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>  <span class="keywordflow">return</span> (data.f.flags & kInlineStrFlag) ? data.ss.str : RAPIDJSON_GETPOINTER(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>, data.s.str);</div> +<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>  }</div> +<div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> DataStringLength(<span class="keyword">const</span> Data& data) {</div> +<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>  <span class="keywordflow">return</span> (data.f.flags & kInlineStrFlag) ? data.ss.GetLength() : data.s.length;</div> +<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>  }</div> +<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>  </div> +<div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>  RAPIDJSON_FORCEINLINE <span class="keyword">const</span> Ch* GetStringPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(Ch, data_.s.str); }</div> +<div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>  RAPIDJSON_FORCEINLINE <span class="keyword">const</span> Ch* SetStringPointer(<span class="keyword">const</span> Ch* str) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(Ch, data_.s.str, str); }</div> +<div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>  RAPIDJSON_FORCEINLINE GenericValue* GetElementsPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(GenericValue, data_.a.elements); }</div> +<div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>  RAPIDJSON_FORCEINLINE GenericValue* SetElementsPointer(GenericValue* elements) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(GenericValue, data_.a.elements, elements); }</div> +<div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>  RAPIDJSON_FORCEINLINE Member* GetMembersPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(Member, data_.o.members); }</div> +<div class="line"><a name="l02093"></a><span class="lineno"> 2093</span>  RAPIDJSON_FORCEINLINE Member* SetMembersPointer(Member* members) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(Member, data_.o.members, members); }</div> +<div class="line"><a name="l02094"></a><span class="lineno"> 2094</span>  </div> +<div class="line"><a name="l02095"></a><span class="lineno"> 2095</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02096"></a><span class="lineno"> 2096</span>  </div> +<div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>  <span class="keyword">struct </span>MapTraits {</div> +<div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>  <span class="keyword">struct </span>Less {</div> +<div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>  <span class="keywordtype">bool</span> operator()(<span class="keyword">const</span> Data& s1, <span class="keyword">const</span> Data& s2)<span class="keyword"> const </span>{</div> +<div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> n1 = DataStringLength(s1), n2 = DataStringLength(s2);</div> +<div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>  <span class="keywordtype">int</span> cmp = std::memcmp(DataString(s1), DataString(s2), <span class="keyword">sizeof</span>(Ch) * (n1 < n2 ? n1 : n2));</div> +<div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>  <span class="keywordflow">return</span> cmp < 0 || (cmp == 0 && n1 < n2);</div> +<div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>  }</div> +<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>  };</div> +<div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>  <span class="keyword">typedef</span> std::pair<const Data, SizeType> Pair;</div> +<div class="line"><a name="l02106"></a><span class="lineno"> 2106</span>  <span class="keyword">typedef</span> std::multimap<Data, SizeType, Less, StdAllocator<Pair, Allocator> > Map;</div> +<div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> Map::iterator Iterator;</div> +<div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>  };</div> +<div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> MapTraits::Map Map;</div> +<div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> MapTraits::Less MapLess;</div> +<div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> MapTraits::Pair MapPair;</div> +<div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> MapTraits::Iterator MapIterator;</div> +<div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>  </div> +<div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>  <span class="comment">//</span></div> +<div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>  <span class="comment">// Layout of the members' map/array, re(al)located according to the needed capacity:</span></div> +<div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>  <span class="comment">//</span></div> +<div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>  <span class="comment">// {Map*}<>{capacity}<>{Member[capacity]}<>{MapIterator[capacity]}</span></div> +<div class="line"><a name="l02118"></a><span class="lineno"> 2118</span>  <span class="comment">//</span></div> +<div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>  <span class="comment">// (where <> stands for the RAPIDJSON_ALIGN-ment, if needed)</span></div> +<div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>  <span class="comment">//</span></div> <div class="line"><a name="l02121"></a><span class="lineno"> 2121</span>  </div> -<div class="line"><a name="l02122"></a><span class="lineno"> 2122</span>  <span class="comment">// Initialize this value as array with initial data, without calling destructor.</span></div> -<div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>  <span class="keywordtype">void</span> SetArrayRaw(GenericValue* values, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>  data_.f.flags = kArrayFlag;</div> -<div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>  <span class="keywordflow">if</span> (count) {</div> -<div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>  GenericValue* e = static_cast<GenericValue*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(GenericValue)));</div> -<div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>  SetElementsPointer(e);</div> -<div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>  std::memcpy(static_cast<void*>(e), values, count * <span class="keyword">sizeof</span>(GenericValue));</div> -<div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>  }</div> -<div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>  SetElementsPointer(0);</div> -<div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>  data_.a.size = data_.a.capacity = count;</div> -<div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>  }</div> -<div class="line"><a name="l02134"></a><span class="lineno"> 2134</span> <span class="comment"></span> </div> -<div class="line"><a name="l02135"></a><span class="lineno"> 2135</span> <span class="comment"> //! Initialize this value as object with initial data, without calling destructor.</span></div> -<div class="line"><a name="l02136"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac"> 2136</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* members, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>  data_.f.flags = kObjectFlag;</div> -<div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>  <span class="keywordflow">if</span> (count) {</div> -<div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* m = static_cast<Member*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>)));</div> -<div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>  SetMembersPointer(m);</div> -<div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>  std::memcpy(static_cast<void*>(m), members, count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>));</div> -<div class="line"><a name="l02142"></a><span class="lineno"> 2142</span>  }</div> -<div class="line"><a name="l02143"></a><span class="lineno"> 2143</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>  SetMembersPointer(0);</div> -<div class="line"><a name="l02145"></a><span class="lineno"> 2145</span>  data_.o.size = data_.o.capacity = count;</div> -<div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>  }</div> -<div class="line"><a name="l02147"></a><span class="lineno"> 2147</span> <span class="comment"></span> </div> -<div class="line"><a name="l02148"></a><span class="lineno"> 2148</span> <span class="comment"> //! Initialize this value as constant string, without calling destructor.</span></div> -<div class="line"><a name="l02149"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835"> 2149</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>  data_.f.flags = kConstStringFlag;</div> -<div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>  SetStringPointer(s);</div> -<div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>  data_.s.length = s.length;</div> -<div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>  }</div> -<div class="line"><a name="l02154"></a><span class="lineno"> 2154</span> <span class="comment"></span> </div> -<div class="line"><a name="l02155"></a><span class="lineno"> 2155</span> <span class="comment"> //! Initialize this value as copy string with initial data, without calling destructor.</span></div> -<div class="line"><a name="l02156"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c"> 2156</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str = 0;</div> -<div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>  <span class="keywordflow">if</span> (ShortString::Usable(s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>)) {</div> -<div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>  data_.f.flags = kShortStringFlag;</div> -<div class="line"><a name="l02160"></a><span class="lineno"> 2160</span>  data_.ss.SetLength(s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>);</div> -<div class="line"><a name="l02161"></a><span class="lineno"> 2161</span>  str = data_.ss.str;</div> -<div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>  } <span class="keywordflow">else</span> {</div> -<div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>  data_.f.flags = kCopyStringFlag;</div> -<div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>  data_.s.length = s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>;</div> -<div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>  str = static_cast<Ch *>(allocator.Malloc((s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a> + 1) * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>)));</div> -<div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>  SetStringPointer(str);</div> -<div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>  }</div> -<div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>  std::memcpy(str, s, s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a> * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>));</div> -<div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>  str[s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>] = <span class="charliteral">'\0'</span>;</div> -<div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>  }</div> -<div class="line"><a name="l02171"></a><span class="lineno"> 2171</span> <span class="comment"></span> </div> -<div class="line"><a name="l02172"></a><span class="lineno"> 2172</span> <span class="comment"> //! Assignment without calling destructor</span></div> -<div class="line"><a name="l02173"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e"> 2173</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& rhs) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>  data_ = rhs.data_;</div> -<div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>  <span class="comment">// data_.f.flags = rhs.data_.f.flags;</span></div> -<div class="line"><a name="l02176"></a><span class="lineno"> 2176</span>  rhs.data_.f.flags = kNullFlag;</div> -<div class="line"><a name="l02177"></a><span class="lineno"> 2177</span>  }</div> -<div class="line"><a name="l02178"></a><span class="lineno"> 2178</span>  </div> -<div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>  <span class="keywordtype">bool</span> StringEqual(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding, SourceAllocator></a>& rhs)<span class="keyword"> const </span>{</div> -<div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString());</div> -<div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(rhs.IsString());</div> -<div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>  </div> -<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>  <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len1 = GetStringLength();</div> -<div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>  <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len2 = rhs.GetStringLength();</div> -<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>  <span class="keywordflow">if</span>(len1 != len2) { <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div> -<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>  </div> -<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>  <span class="keyword">const</span> Ch* <span class="keyword">const</span> str1 = GetString();</div> -<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>  <span class="keyword">const</span> Ch* <span class="keyword">const</span> str2 = rhs.GetString();</div> -<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>  <span class="keywordflow">if</span>(str1 == str2) { <span class="keywordflow">return</span> <span class="keyword">true</span>; } <span class="comment">// fast path for constant string</span></div> -<div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>  </div> -<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>  <span class="keywordflow">return</span> (std::memcmp(str1, str2, <span class="keyword">sizeof</span>(Ch) * len1) == 0);</div> -<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>  }</div> -<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>  </div> -<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>  Data data_;</div> -<div class="line"><a name="l02196"></a><span class="lineno"> 2196</span> };</div> -<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span> <span class="comment"></span> </div> -<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span> <span class="comment">//! GenericValue with UTF8 encoding</span></div> -<div class="line"><a name="l02199"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505"> 2199</a></span> <span class="comment"></span><span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<UTF8<></a> > <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a>;</div> -<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span> <span class="comment"></span> </div> -<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l02202"></a><span class="lineno"> 2202</span> <span class="comment"></span><span class="comment">// GenericDocument </span></div> -<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span> <span class="comment"></span> </div> -<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span> <span class="comment">//! A document for parsing JSON text as DOM.</span></div> -<div class="line"><a name="l02205"></a><span class="lineno"> 2205</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l02206"></a><span class="lineno"> 2206</span> <span class="comment"> \note implements Handler concept</span></div> -<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span> <span class="comment"> \tparam Encoding Encoding for both parsing and string storage.</span></div> -<div class="line"><a name="l02208"></a><span class="lineno"> 2208</span> <span class="comment"> \tparam Allocator Allocator for allocating memory for the DOM</span></div> -<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span> <span class="comment"> \tparam StackAllocator Allocator for allocating memory for stack during parsing.</span></div> -<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span> <span class="comment"> \warning Although GenericDocument inherits from GenericValue, the API does \b not provide any virtual functions, especially no virtual destructor. To avoid memory leaks, do not \c delete a GenericDocument object via a pointer to a GenericValue.</span></div> -<div class="line"><a name="l02211"></a><span class="lineno"> 2211</span> <span class="comment">*/</span></div> -<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Encoding, <span class="keyword">typename</span> Allocator = RAPIDJSON_DEFAULT_ALLOCATOR, <span class="keyword">typename</span> StackAllocator = RAPIDJSON_DEFAULT_STACK_ALLOCATOR ></div> -<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a> : <span class="keyword">public</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a><Encoding, Allocator> {</div> -<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l02215"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5"> 2215</a></span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> Encoding::Ch <a class="code" href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5">Ch</a>; <span class="comment">//!< Character type derived from Encoding.</span></div> -<div class="line"><a name="l02216"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc"> 2216</a></span> <span class="comment"></span> <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding, Allocator></a> <a class="code" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">ValueType</a>; <span class="comment">//!< Value type of the document.</span></div> -<div class="line"><a name="l02217"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773"> 2217</a></span> <span class="comment"></span> <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> <a class="code" href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773">AllocatorType</a>; <span class="comment">//!< Allocator type from template parameter.</span></div> -<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span> <span class="comment"> //! Constructor</span></div> -<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span> <span class="comment"></span><span class="comment"> /*! Creates an empty document of specified type.</span></div> -<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span> <span class="comment"> \param type Mandatory type of object to create.</span></div> -<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span> <span class="comment"> \param allocator Optional allocator for allocating memory.</span></div> -<div class="line"><a name="l02223"></a><span class="lineno"> 2223</span> <span class="comment"> \param stackCapacity Optional initial capacity of stack in bytes.</span></div> -<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span> <span class="comment"> \param stackAllocator Optional allocator for allocating memory for stack.</span></div> -<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02226"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5"> 2226</a></span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">GenericDocument</a>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> type, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator = 0, <span class="keywordtype">size_t</span> stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) :</div> -<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a><<a class="code" href="classrapidjson_1_1_encoding.html">Encoding</a>, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>>(type), allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_()</div> -<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>  {</div> -<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>  <span class="keywordflow">if</span> (!allocator_)</div> -<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>  ownAllocator_ = allocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>)();</div> -<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>  }</div> -<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span> <span class="comment"></span> </div> -<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span> <span class="comment"> //! Constructor</span></div> -<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span> <span class="comment"></span><span class="comment"> /*! Creates an empty document which type is Null. </span></div> -<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span> <span class="comment"> \param allocator Optional allocator for allocating memory.</span></div> -<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span> <span class="comment"> \param stackCapacity Optional initial capacity of stack in bytes.</span></div> -<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span> <span class="comment"> \param stackAllocator Optional allocator for allocating memory for stack.</span></div> -<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02239"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb"> 2239</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">GenericDocument</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator = 0, <span class="keywordtype">size_t</span> stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) : </div> -<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span>  allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_()</div> -<div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>  {</div> -<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>  <span class="keywordflow">if</span> (!allocator_)</div> -<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>  ownAllocator_ = allocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>)();</div> +<div class="line"><a name="l02122"></a><span class="lineno"> 2122</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE <span class="keywordtype">size_t</span> GetMapLayoutSize(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity) {</div> +<div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>  <span class="keywordflow">return</span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)) +</div> +<div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>)) +</div> +<div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(capacity * <span class="keyword">sizeof</span>(Member)) +</div> +<div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>  capacity * <span class="keyword">sizeof</span>(MapIterator);</div> +<div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>  }</div> +<div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>  </div> +<div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> &GetMapCapacity(Map* &map) {</div> +<div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>  <span class="keywordflow">return</span> *reinterpret_cast<SizeType*>(reinterpret_cast<uintptr_t>(&map) +</div> +<div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)));</div> +<div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>  }</div> +<div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>  </div> +<div class="line"><a name="l02134"></a><span class="lineno"> 2134</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE Member* GetMapMembers(Map* &map) {</div> +<div class="line"><a name="l02135"></a><span class="lineno"> 2135</span>  <span class="keywordflow">return</span> reinterpret_cast<Member*>(reinterpret_cast<uintptr_t>(&map) +</div> +<div class="line"><a name="l02136"></a><span class="lineno"> 2136</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)) +</div> +<div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>)));</div> +<div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>  }</div> +<div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>  </div> +<div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE MapIterator* GetMapIterators(Map* &map) {</div> +<div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>  <span class="keywordflow">return</span> reinterpret_cast<MapIterator*>(reinterpret_cast<uintptr_t>(&map) +</div> +<div class="line"><a name="l02142"></a><span class="lineno"> 2142</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)) +</div> +<div class="line"><a name="l02143"></a><span class="lineno"> 2143</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>)) +</div> +<div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(GetMapCapacity(map) * <span class="keyword">sizeof</span>(Member)));</div> +<div class="line"><a name="l02145"></a><span class="lineno"> 2145</span>  }</div> +<div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>  </div> +<div class="line"><a name="l02147"></a><span class="lineno"> 2147</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE Map* &GetMap(Member* members) {</div> +<div class="line"><a name="l02148"></a><span class="lineno"> 2148</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(members != 0);</div> +<div class="line"><a name="l02149"></a><span class="lineno"> 2149</span>  <span class="keywordflow">return</span> *reinterpret_cast<Map**>(reinterpret_cast<uintptr_t>(members) -</div> +<div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>)) -</div> +<div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)));</div> +<div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>  }</div> +<div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>  </div> +<div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>  <span class="comment">// Some compilers' debug mechanisms want all iterators to be destroyed, for their accounting..</span></div> +<div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>  RAPIDJSON_FORCEINLINE MapIterator DropMapIterator(MapIterator& rhs) {</div> +<div class="line"><a name="l02156"></a><span class="lineno"> 2156</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>  MapIterator ret = std::move(rhs);</div> +<div class="line"><a name="l02158"></a><span class="lineno"> 2158</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>  MapIterator ret = rhs;</div> +<div class="line"><a name="l02160"></a><span class="lineno"> 2160</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02161"></a><span class="lineno"> 2161</span>  rhs.~MapIterator();</div> +<div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>  <span class="keywordflow">return</span> ret;</div> +<div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>  }</div> +<div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>  </div> +<div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>  Map* &DoReallocMap(Map** oldMap, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>  Map **newMap = static_cast<Map**>(allocator.Malloc(GetMapLayoutSize(newCapacity)));</div> +<div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>  GetMapCapacity(*newMap) = newCapacity;</div> +<div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>  <span class="keywordflow">if</span> (!oldMap) {</div> +<div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>  *newMap = <span class="keyword">new</span> (allocator.Malloc(<span class="keyword">sizeof</span>(Map))) Map(MapLess(), allocator);</div> +<div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>  }</div> +<div class="line"><a name="l02171"></a><span class="lineno"> 2171</span>  <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l02172"></a><span class="lineno"> 2172</span>  *newMap = *oldMap;</div> +<div class="line"><a name="l02173"></a><span class="lineno"> 2173</span>  <span class="keywordtype">size_t</span> count = (*oldMap)->size();</div> +<div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>  std::memcpy(static_cast<void*>(GetMapMembers(*newMap)),</div> +<div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>  static_cast<void*>(GetMapMembers(*oldMap)),</div> +<div class="line"><a name="l02176"></a><span class="lineno"> 2176</span>  count * <span class="keyword">sizeof</span>(Member));</div> +<div class="line"><a name="l02177"></a><span class="lineno"> 2177</span>  MapIterator *oldIt = GetMapIterators(*oldMap),</div> +<div class="line"><a name="l02178"></a><span class="lineno"> 2178</span>  *newIt = GetMapIterators(*newMap);</div> +<div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>  <span class="keywordflow">while</span> (count--) {</div> +<div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>  <span class="keyword">new</span> (&newIt[count]) MapIterator(DropMapIterator(oldIt[count]));</div> +<div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>  }</div> +<div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>  Allocator::Free(oldMap);</div> +<div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>  }</div> +<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>  <span class="keywordflow">return</span> *newMap;</div> +<div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>  }</div> +<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>  </div> +<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>  RAPIDJSON_FORCEINLINE Member* DoAllocMembers(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>  <span class="keywordflow">return</span> GetMapMembers(DoReallocMap(0, capacity, allocator));</div> +<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>  }</div> +<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>  </div> +<div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>  <span class="keywordtype">void</span> DoReserveMembers(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>  <span class="keywordflow">if</span> (newCapacity > o.capacity) {</div> +<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>  Member* oldMembers = GetMembersPointer();</div> +<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>  Map **oldMap = oldMembers ? &GetMap(oldMembers) : 0,</div> +<div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>  *&newMap = DoReallocMap(oldMap, newCapacity, allocator);</div> +<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>  RAPIDJSON_SETPOINTER(Member, o.members, GetMapMembers(newMap));</div> +<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>  o.capacity = newCapacity;</div> +<div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>  }</div> +<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span>  }</div> +<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span>  </div> +<div class="line"><a name="l02202"></a><span class="lineno"> 2202</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span>  MemberIterator DoFindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>  <span class="keywordflow">if</span> (Member* members = GetMembersPointer()) {</div> +<div class="line"><a name="l02205"></a><span class="lineno"> 2205</span>  Map* &map = GetMap(members);</div> +<div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>  MapIterator mit = map->find(reinterpret_cast<const Data&>(name.data_));</div> +<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>  <span class="keywordflow">if</span> (mit != map->end()) {</div> +<div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>  <span class="keywordflow">return</span> MemberIterator(&members[mit->second]);</div> +<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>  }</div> +<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>  }</div> +<div class="line"><a name="l02211"></a><span class="lineno"> 2211</span>  <span class="keywordflow">return</span> MemberEnd();</div> +<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>  }</div> +<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>  </div> +<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>  <span class="keywordtype">void</span> DoClearMembers() {</div> +<div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>  <span class="keywordflow">if</span> (Member* members = GetMembersPointer()) {</div> +<div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>  Map* &map = GetMap(members);</div> +<div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < data_.o.size; i++) {</div> +<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>  map->erase(DropMapIterator(mit[i]));</div> +<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span>  members[i].~Member();</div> +<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span>  }</div> +<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span>  data_.o.size = 0;</div> +<div class="line"><a name="l02223"></a><span class="lineno"> 2223</span>  }</div> +<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>  }</div> +<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>  </div> +<div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>  <span class="keywordtype">void</span> DoFreeMembers() {</div> +<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>  <span class="keywordflow">if</span> (Member* members = GetMembersPointer()) {</div> +<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>  GetMap(members)->~Map();</div> +<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < data_.o.size; i++) {</div> +<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>  members[i].~Member();</div> +<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>  }</div> +<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree) { <span class="comment">// Shortcut by Allocator's trait</span></div> +<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span>  Map** map = &GetMap(members);</div> +<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span>  Allocator::Free(*map);</div> +<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span>  Allocator::Free(map);</div> +<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>  }</div> +<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span>  }</div> +<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>  }</div> +<div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>  </div> +<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span> <span class="preprocessor">#else // !RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>  </div> +<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>  RAPIDJSON_FORCEINLINE Member* DoAllocMembers(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>  <span class="keywordflow">return</span> Malloc<Member>(allocator, capacity);</div> <div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>  }</div> <div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>  </div> -<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span> <span class="comment"> //! Move constructor in C++11</span></div> -<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>&& rhs) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>  : ValueType(std::forward<ValueType>(rhs)), <span class="comment">// explicit cast to avoid prohibited move from Document</span></div> -<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>  allocator_(rhs.allocator_),</div> -<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>  ownAllocator_(rhs.ownAllocator_),</div> -<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>  stack_(std::move(rhs.stack_)),</div> -<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>  parseResult_(rhs.parseResult_)</div> -<div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>  {</div> -<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>  rhs.allocator_ = 0;</div> -<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>  rhs.ownAllocator_ = 0;</div> -<div class="line"><a name="l02257"></a><span class="lineno"> 2257</span>  rhs.parseResult_ = <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">ParseResult</a>();</div> -<div class="line"><a name="l02258"></a><span class="lineno"> 2258</span>  }</div> -<div class="line"><a name="l02259"></a><span class="lineno"> 2259</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>  </div> -<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>  ~GenericDocument() {</div> -<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>  Destroy();</div> -<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>  }</div> -<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>  </div> -<div class="line"><a name="l02265"></a><span class="lineno"> 2265</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span> <span class="comment"> //! Move assignment in C++11</span></div> -<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span> <span class="comment"></span> GenericDocument& operator=(GenericDocument&& rhs) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>  {</div> -<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>  <span class="comment">// The cast to ValueType is necessary here, because otherwise it would</span></div> -<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>  <span class="comment">// attempt to call GenericValue's templated assignment operator.</span></div> -<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>  ValueType::operator=(std::forward<ValueType>(rhs));</div> -<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>  </div> -<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>  <span class="comment">// Calling the destructor here would prematurely call stack_'s destructor</span></div> -<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>  Destroy();</div> +<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>  <span class="keywordtype">void</span> DoReserveMembers(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>  <span class="keywordflow">if</span> (newCapacity > o.capacity) {</div> +<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>  Member* newMembers = Realloc<Member>(allocator, GetMembersPointer(), o.capacity, newCapacity);</div> +<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>  RAPIDJSON_SETPOINTER(Member, o.members, newMembers);</div> +<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>  o.capacity = newCapacity;</div> +<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>  }</div> +<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>  }</div> +<div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>  </div> +<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>  MemberIterator DoFindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l02257"></a><span class="lineno"> 2257</span>  MemberIterator member = MemberBegin();</div> +<div class="line"><a name="l02258"></a><span class="lineno"> 2258</span>  <span class="keywordflow">for</span> ( ; member != MemberEnd(); ++member)</div> +<div class="line"><a name="l02259"></a><span class="lineno"> 2259</span>  <span class="keywordflow">if</span> (name.StringEqual(member->name))</div> +<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>  <span class="keywordflow">return</span> member;</div> +<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>  }</div> +<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>  </div> +<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>  <span class="keywordtype">void</span> DoClearMembers() {</div> +<div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>  <span class="keywordflow">for</span> (MemberIterator m = MemberBegin(); m != MemberEnd(); ++m)</div> +<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>  m->~Member();</div> +<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>  data_.o.size = 0;</div> +<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>  }</div> +<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>  </div> +<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>  <span class="keywordtype">void</span> DoFreeMembers() {</div> +<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>  <span class="keywordflow">for</span> (MemberIterator m = MemberBegin(); m != MemberEnd(); ++m)</div> +<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>  m->~Member();</div> +<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>  Allocator::Free(GetMembersPointer());</div> +<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>  }</div> <div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>  </div> -<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>  allocator_ = rhs.allocator_;</div> -<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>  ownAllocator_ = rhs.ownAllocator_;</div> -<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>  stack_ = std::move(rhs.stack_);</div> -<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>  parseResult_ = rhs.parseResult_;</div> -<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>  </div> -<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>  rhs.allocator_ = 0;</div> -<div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>  rhs.ownAllocator_ = 0;</div> -<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>  rhs.parseResult_ = ParseResult();</div> -<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>  </div> -<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span>  }</div> -<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02288"></a><span class="lineno"> 2288</span> <span class="comment"></span> </div> -<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span> <span class="comment"> //! Exchange the contents of this document with those of another.</span></div> -<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span> <span class="comment"> \param rhs Another document.</span></div> -<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span> <span class="comment"> \note Constant complexity.</span></div> -<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span> <span class="comment"> \see GenericValue::Swap</span></div> -<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02295"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b"> 2295</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">Swap</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& rhs) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>  ValueType::Swap(rhs);</div> -<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span>  stack_.Swap(rhs.stack_);</div> -<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>  internal::Swap(allocator_, rhs.allocator_);</div> -<div class="line"><a name="l02299"></a><span class="lineno"> 2299</span>  internal::Swap(ownAllocator_, rhs.ownAllocator_);</div> -<div class="line"><a name="l02300"></a><span class="lineno"> 2300</span>  internal::Swap(parseResult_, rhs.parseResult_);</div> -<div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>  }</div> -<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>  </div> -<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>  <span class="comment">// Allow Swap with ValueType.</span></div> -<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>  <span class="comment">// Refer to Effective C++ 3rd Edition/Item 33: Avoid hiding inherited names.</span></div> -<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>  <span class="keyword">using</span> ValueType::Swap;</div> -<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span> <span class="comment"></span> </div> -<div class="line"><a name="l02308"></a><span class="lineno"> 2308</span> <span class="comment"> //! free-standing swap function helper</span></div> -<div class="line"><a name="l02309"></a><span class="lineno"> 2309</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span> <span class="comment"> Helper function to enable support for common swap implementation pattern based on \c std::swap:</span></div> -<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span> <span class="comment"> void swap(MyClass& a, MyClass& b) {</span></div> -<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span> <span class="comment"> using std::swap;</span></div> -<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span> <span class="comment"> swap(a.doc, b.doc);</span></div> -<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span> <span class="comment"> // ...</span></div> -<div class="line"><a name="l02316"></a><span class="lineno"> 2316</span> <span class="comment"> }</span></div> -<div class="line"><a name="l02317"></a><span class="lineno"> 2317</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span> <span class="comment"> \see Swap()</span></div> -<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02320"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d"> 2320</a></span>  <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">swap</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& a, <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& b) RAPIDJSON_NOEXCEPT { a.Swap(b); }</div> -<div class="line"><a name="l02321"></a><span class="lineno"> 2321</span> <span class="comment"></span> </div> -<div class="line"><a name="l02322"></a><span class="lineno"> 2322</span> <span class="comment"> //! Populate this document by a generator which produces SAX events.</span></div> -<div class="line"><a name="l02323"></a><span class="lineno"> 2323</span> <span class="comment"></span><span class="comment"> /*! \tparam Generator A functor with <tt>bool f(Handler)</tt> prototype.</span></div> -<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span> <span class="comment"> \param g Generator functor which sends SAX events to the parameter.</span></div> -<div class="line"><a name="l02325"></a><span class="lineno"> 2325</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02326"></a><span class="lineno"> 2326</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> Generator></div> -<div class="line"><a name="l02328"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64"> 2328</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">Populate</a>(Generator& g) {</div> -<div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>  ClearStackOnExit scope(*<span class="keyword">this</span>);</div> -<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span>  <span class="keywordflow">if</span> (g(*<span class="keyword">this</span>)) {</div> -<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(stack_.GetSize() == <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">ValueType</a>)); <span class="comment">// Got one and only one root object</span></div> -<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>  ValueType::operator=(*stack_.template Pop<ValueType>(1));<span class="comment">// Move value from stack to document</span></div> -<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span>  }</div> -<div class="line"><a name="l02334"></a><span class="lineno"> 2334</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>  }</div> -<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span> <span class="comment"></span> </div> -<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span> <span class="comment"> //!@name Parse from stream</span></div> -<div class="line"><a name="l02338"></a><span class="lineno"> 2338</span> <span class="comment"> //!@{</span></div> -<div class="line"><a name="l02339"></a><span class="lineno"> 2339</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span> <span class="comment"> //! Parse JSON text from an input stream (with Encoding conversion)</span></div> -<div class="line"><a name="l02341"></a><span class="lineno"> 2341</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> -<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span> <span class="comment"> \tparam SourceEncoding Encoding of input stream</span></div> -<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span> <span class="comment"> \tparam InputStream Type of input stream, implementing Stream concept</span></div> -<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span> <span class="comment"> \param is Input stream to be parsed.</span></div> -<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding, <span class="keyword">typename</span> InputStream></div> -<div class="line"><a name="l02348"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85"> 2348</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">ParseStream</a>(InputStream& is) {</div> -<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>  <a class="code" href="classrapidjson_1_1_generic_reader.html">GenericReader<SourceEncoding, Encoding, StackAllocator></a> reader(</div> -<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>  stack_.HasAllocator() ? &stack_.GetAllocator() : 0);</div> -<div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>  ClearStackOnExit scope(*<span class="keyword">this</span>);</div> -<div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>  parseResult_ = reader.template Parse<parseFlags>(is, *<span class="keyword">this</span>);</div> -<div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>  <span class="keywordflow">if</span> (parseResult_) {</div> -<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(stack_.GetSize() == <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">ValueType</a>)); <span class="comment">// Got one and only one root object</span></div> -<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>  ValueType::operator=(*stack_.template Pop<ValueType>(1));<span class="comment">// Move value from stack to document</span></div> -<div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>  }</div> -<div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>  }</div> -<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span> <span class="comment"></span> </div> -<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span> <span class="comment"> //! Parse JSON text from an input stream</span></div> -<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> -<div class="line"><a name="l02362"></a><span class="lineno"> 2362</span> <span class="comment"> \tparam InputStream Type of input stream, implementing Stream concept</span></div> -<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span> <span class="comment"> \param is Input stream to be parsed.</span></div> -<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> InputStream></div> -<div class="line"><a name="l02367"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a"> 2367</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">ParseStream</a>(InputStream& is) {</div> -<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>  <span class="keywordflow">return</span> ParseStream<parseFlags, Encoding, InputStream>(is);</div> -<div class="line"><a name="l02369"></a><span class="lineno"> 2369</span>  }</div> -<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span> <span class="comment"></span> </div> -<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span> <span class="comment"> //! Parse JSON text from an input stream (with \ref kParseDefaultFlags)</span></div> -<div class="line"><a name="l02372"></a><span class="lineno"> 2372</span> <span class="comment"></span><span class="comment"> /*! \tparam InputStream Type of input stream, implementing Stream concept</span></div> -<div class="line"><a name="l02373"></a><span class="lineno"> 2373</span> <span class="comment"> \param is Input stream to be parsed.</span></div> -<div class="line"><a name="l02374"></a><span class="lineno"> 2374</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> InputStream></div> -<div class="line"><a name="l02377"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414"> 2377</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">ParseStream</a>(InputStream& is) {</div> -<div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>  <span class="keywordflow">return</span> ParseStream<kParseDefaultFlags, Encoding, InputStream>(is);</div> -<div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>  }<span class="comment"></span></div> -<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span> <span class="comment"> //!@}</span></div> -<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02382"></a><span class="lineno"> 2382</span> <span class="comment"> //!@name Parse in-place from mutable string</span></div> -<div class="line"><a name="l02383"></a><span class="lineno"> 2383</span> <span class="comment"> //!@{</span></div> -<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span> <span class="comment"> //! Parse JSON text from a mutable string</span></div> -<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> -<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span> <span class="comment"> \param str Mutable zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02388"></a><span class="lineno"> 2388</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02389"></a><span class="lineno"> 2389</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> -<div class="line"><a name="l02391"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f"> 2391</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">ParseInsitu</a>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> -<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>  <a class="code" href="structrapidjson_1_1_generic_insitu_string_stream.html">GenericInsituStringStream<Encoding></a> s(str);</div> -<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>  <span class="keywordflow">return</span> ParseStream<parseFlags | kParseInsituFlag>(s);</div> -<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>  }</div> -<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span> <span class="comment"></span> </div> -<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span> <span class="comment"> //! Parse JSON text from a mutable string (with \ref kParseDefaultFlags)</span></div> -<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span> <span class="comment"></span><span class="comment"> /*! \param str Mutable zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02400"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367"> 2400</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">ParseInsitu</a>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> -<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span>  <span class="keywordflow">return</span> ParseInsitu<kParseDefaultFlags>(str);</div> -<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>  }<span class="comment"></span></div> -<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span> <span class="comment"> //!@}</span></div> -<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span> <span class="comment"> //!@name Parse from read-only string</span></div> -<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span> <span class="comment"> //!@{</span></div> -<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span> <span class="comment"> //! Parse JSON text from a read-only string (with Encoding conversion)</span></div> -<div class="line"><a name="l02409"></a><span class="lineno"> 2409</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag (must not contain \ref kParseInsituFlag).</span></div> -<div class="line"><a name="l02410"></a><span class="lineno"> 2410</span> <span class="comment"> \tparam SourceEncoding Transcoding from input Encoding</span></div> -<div class="line"><a name="l02411"></a><span class="lineno"> 2411</span> <span class="comment"> \param str Read-only zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02412"></a><span class="lineno"> 2412</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> -<div class="line"><a name="l02414"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c"> 2414</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">Parse</a>(<span class="keyword">const</span> <span class="keyword">typename</span> SourceEncoding::Ch* str) {</div> -<div class="line"><a name="l02415"></a><span class="lineno"> 2415</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!(parseFlags & <a class="code" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">kParseInsituFlag</a>));</div> -<div class="line"><a name="l02416"></a><span class="lineno"> 2416</span>  <a class="code" href="structrapidjson_1_1_generic_string_stream.html">GenericStringStream<SourceEncoding></a> s(str);</div> -<div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>  <span class="keywordflow">return</span> ParseStream<parseFlags, SourceEncoding>(s);</div> -<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>  }</div> -<div class="line"><a name="l02419"></a><span class="lineno"> 2419</span> <span class="comment"></span> </div> -<div class="line"><a name="l02420"></a><span class="lineno"> 2420</span> <span class="comment"> //! Parse JSON text from a read-only string</span></div> -<div class="line"><a name="l02421"></a><span class="lineno"> 2421</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag (must not contain \ref kParseInsituFlag).</span></div> -<div class="line"><a name="l02422"></a><span class="lineno"> 2422</span> <span class="comment"> \param str Read-only zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02423"></a><span class="lineno"> 2423</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> -<div class="line"><a name="l02425"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8"> 2425</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">Parse</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> -<div class="line"><a name="l02426"></a><span class="lineno"> 2426</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str);</div> -<div class="line"><a name="l02427"></a><span class="lineno"> 2427</span>  }</div> -<div class="line"><a name="l02428"></a><span class="lineno"> 2428</span> <span class="comment"></span> </div> -<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span> <span class="comment"> //! Parse JSON text from a read-only string (with \ref kParseDefaultFlags)</span></div> -<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span> <span class="comment"></span><span class="comment"> /*! \param str Read-only zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02431"></a><span class="lineno"> 2431</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02432"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de"> 2432</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">Parse</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> -<div class="line"><a name="l02433"></a><span class="lineno"> 2433</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str);</div> -<div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>  }</div> -<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>  </div> -<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> -<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& Parse(<span class="keyword">const</span> <span class="keyword">typename</span> SourceEncoding::Ch* str, <span class="keywordtype">size_t</span> length) {</div> -<div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!(parseFlags & <a class="code" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">kParseInsituFlag</a>));</div> -<div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>  <a class="code" href="structrapidjson_1_1_memory_stream.html">MemoryStream</a> ms(reinterpret_cast<const char*>(str), length * <span class="keyword">sizeof</span>(<span class="keyword">typename</span> SourceEncoding::Ch));</div> -<div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>  <a class="code" href="classrapidjson_1_1_encoded_input_stream.html">EncodedInputStream<SourceEncoding, MemoryStream></a> is(ms);</div> -<div class="line"><a name="l02441"></a><span class="lineno"> 2441</span>  ParseStream<parseFlags, SourceEncoding>(is);</div> -<div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02443"></a><span class="lineno"> 2443</span>  }</div> -<div class="line"><a name="l02444"></a><span class="lineno"> 2444</span>  </div> -<div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> -<div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>  GenericDocument& Parse(<span class="keyword">const</span> Ch* str, <span class="keywordtype">size_t</span> length) {</div> -<div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str, length);</div> -<div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>  }</div> -<div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>  </div> -<div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>  GenericDocument& Parse(<span class="keyword">const</span> Ch* str, <span class="keywordtype">size_t</span> length) {</div> -<div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str, length);</div> -<div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>  }</div> -<div class="line"><a name="l02453"></a><span class="lineno"> 2453</span>  </div> -<div class="line"><a name="l02454"></a><span class="lineno"> 2454</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> -<div class="line"><a name="l02456"></a><span class="lineno"> 2456</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<typename SourceEncoding::Ch>& str) {</div> -<div class="line"><a name="l02457"></a><span class="lineno"> 2457</span>  <span class="comment">// c_str() is constant complexity according to standard. Should be faster than Parse(const char*, size_t)</span></div> -<div class="line"><a name="l02458"></a><span class="lineno"> 2458</span>  <span class="keywordflow">return</span> Parse<parseFlags, SourceEncoding>(str.c_str());</div> -<div class="line"><a name="l02459"></a><span class="lineno"> 2459</span>  }</div> -<div class="line"><a name="l02460"></a><span class="lineno"> 2460</span>  </div> -<div class="line"><a name="l02461"></a><span class="lineno"> 2461</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> -<div class="line"><a name="l02462"></a><span class="lineno"> 2462</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<Ch>& str) {</div> -<div class="line"><a name="l02463"></a><span class="lineno"> 2463</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str.c_str());</div> -<div class="line"><a name="l02464"></a><span class="lineno"> 2464</span>  }</div> -<div class="line"><a name="l02465"></a><span class="lineno"> 2465</span>  </div> -<div class="line"><a name="l02466"></a><span class="lineno"> 2466</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<Ch>& str) {</div> -<div class="line"><a name="l02467"></a><span class="lineno"> 2467</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str);</div> -<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span>  }</div> -<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_STDSTRING </span></div> -<div class="line"><a name="l02470"></a><span class="lineno"> 2470</span> <span class="comment"></span> </div> -<div class="line"><a name="l02471"></a><span class="lineno"> 2471</span> <span class="comment"> //!@}</span></div> -<div class="line"><a name="l02472"></a><span class="lineno"> 2472</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02473"></a><span class="lineno"> 2473</span> <span class="comment"> //!@name Handling parse errors</span></div> -<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span> <span class="comment"> //!@{</span></div> -<div class="line"><a name="l02475"></a><span class="lineno"> 2475</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02476"></a><span class="lineno"> 2476</span> <span class="comment"> //! Whether a parse error has occurred in the last parsing.</span></div> -<div class="line"><a name="l02477"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e"> 2477</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">HasParseError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.IsError(); }</div> -<div class="line"><a name="l02478"></a><span class="lineno"> 2478</span> <span class="comment"></span> </div> -<div class="line"><a name="l02479"></a><span class="lineno"> 2479</span> <span class="comment"> //! Get the \ref ParseErrorCode of last parsing.</span></div> -<div class="line"><a name="l02480"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b"> 2480</a></span> <span class="comment"></span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">ParseErrorCode</a> <a class="code" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">GetParseError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.Code(); }</div> -<div class="line"><a name="l02481"></a><span class="lineno"> 2481</span> <span class="comment"></span> </div> -<div class="line"><a name="l02482"></a><span class="lineno"> 2482</span> <span class="comment"> //! Get the position of last parsing error in input, 0 otherwise.</span></div> -<div class="line"><a name="l02483"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f"> 2483</a></span> <span class="comment"></span> <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">GetErrorOffset</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.Offset(); }</div> -<div class="line"><a name="l02484"></a><span class="lineno"> 2484</span> <span class="comment"></span> </div> -<div class="line"><a name="l02485"></a><span class="lineno"> 2485</span> <span class="comment"> //! Implicit conversion to get the last parse result</span></div> -<div class="line"><a name="l02486"></a><span class="lineno"> 2486</span> <span class="comment"></span><span class="preprocessor">#ifndef __clang // -Wdocumentation</span></div> -<div class="line"><a name="l02487"></a><span class="lineno"> 2487</span> <span class="comment"> /*! \return \ref ParseResult of the last parse operation</span></div> -<div class="line"><a name="l02488"></a><span class="lineno"> 2488</span> <span class="comment"></span> </div> -<div class="line"><a name="l02489"></a><span class="lineno"> 2489</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l02490"></a><span class="lineno"> 2490</span> <span class="comment"> Document doc;</span></div> -<div class="line"><a name="l02491"></a><span class="lineno"> 2491</span> <span class="comment"> ParseResult ok = doc.Parse(json);</span></div> -<div class="line"><a name="l02492"></a><span class="lineno"> 2492</span> <span class="comment"> if (!ok)</span></div> -<div class="line"><a name="l02493"></a><span class="lineno"> 2493</span> <span class="comment"> printf( "JSON parse error: %s (%u)\n", GetParseError_En(ok.Code()), ok.Offset());</span></div> -<div class="line"><a name="l02494"></a><span class="lineno"> 2494</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l02495"></a><span class="lineno"> 2495</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02496"></a><span class="lineno"> 2496</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02497"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974"> 2497</a></span>  <span class="keyword">operator</span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">ParseResult</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_; }<span class="comment"></span></div> -<div class="line"><a name="l02498"></a><span class="lineno"> 2498</span> <span class="comment"> //!@}</span></div> -<div class="line"><a name="l02499"></a><span class="lineno"> 2499</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02500"></a><span class="lineno"> 2500</span> <span class="comment"> //! Get the allocator of this document.</span></div> -<div class="line"><a name="l02501"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f"> 2501</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">GetAllocator</a>() {</div> -<div class="line"><a name="l02502"></a><span class="lineno"> 2502</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(allocator_);</div> -<div class="line"><a name="l02503"></a><span class="lineno"> 2503</span>  <span class="keywordflow">return</span> *allocator_;</div> +<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span> <span class="preprocessor">#endif // !RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>  </div> +<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>  <span class="keywordtype">void</span> DoAddMember(GenericValue& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>  <span class="keywordflow">if</span> (o.size >= o.capacity)</div> +<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>  DoReserveMembers(o.capacity ? (o.capacity + (o.capacity + 1) / 2) : kDefaultObjectCapacity, allocator);</div> +<div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>  Member* members = GetMembersPointer();</div> +<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>  Member* m = members + o.size;</div> +<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>  m->name.RawAssign(name);</div> +<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>  m->value.RawAssign(value);</div> +<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span>  Map* &map = GetMap(members);</div> +<div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>  <span class="keyword">new</span> (&mit[o.size]) MapIterator(map->insert(MapPair(m->name.data_, o.size)));</div> +<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span>  ++o.size;</div> +<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span>  }</div> +<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span>  </div> +<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span>  MemberIterator DoRemoveMember(MemberIterator m) {</div> +<div class="line"><a name="l02295"></a><span class="lineno"> 2295</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>  Member* members = GetMembersPointer();</div> +<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>  Map* &map = GetMap(members);</div> +<div class="line"><a name="l02299"></a><span class="lineno"> 2299</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02300"></a><span class="lineno"> 2300</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> mpos = static_cast<SizeType>(&*m - members);</div> +<div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>  map->erase(DropMapIterator(mit[mpos]));</div> +<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>  MemberIterator last(members + (o.size - 1));</div> +<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>  <span class="keywordflow">if</span> (o.size > 1 && m != last) {</div> +<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>  <span class="keyword">new</span> (&mit[mpos]) MapIterator(DropMapIterator(mit[&*last - members]));</div> +<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>  mit[mpos]->second = mpos;</div> +<div class="line"><a name="l02308"></a><span class="lineno"> 2308</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02309"></a><span class="lineno"> 2309</span>  *m = *last; <span class="comment">// Move the last one to this place</span></div> +<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>  }</div> +<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span>  <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span>  m->~Member(); <span class="comment">// Only one left, just destroy</span></div> +<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>  }</div> +<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>  --o.size;</div> +<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span>  <span class="keywordflow">return</span> m;</div> +<div class="line"><a name="l02316"></a><span class="lineno"> 2316</span>  }</div> +<div class="line"><a name="l02317"></a><span class="lineno"> 2317</span>  </div> +<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span>  MemberIterator DoEraseMembers(ConstMemberIterator first, ConstMemberIterator last) {</div> +<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02320"></a><span class="lineno"> 2320</span>  MemberIterator beg = MemberBegin(),</div> +<div class="line"><a name="l02321"></a><span class="lineno"> 2321</span>  pos = beg + (first - beg),</div> +<div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>  end = MemberEnd();</div> +<div class="line"><a name="l02323"></a><span class="lineno"> 2323</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>  Map* &map = GetMap(GetMembersPointer());</div> +<div class="line"><a name="l02325"></a><span class="lineno"> 2325</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02326"></a><span class="lineno"> 2326</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>  <span class="keywordflow">for</span> (MemberIterator itr = pos; itr != last; ++itr) {</div> +<div class="line"><a name="l02328"></a><span class="lineno"> 2328</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>  map->erase(DropMapIterator(mit[itr - beg]));</div> +<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>  itr->~Member();</div> +<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>  }</div> +<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02334"></a><span class="lineno"> 2334</span>  <span class="keywordflow">if</span> (first != last) {</div> +<div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>  <span class="comment">// Move remaining members/iterators</span></div> +<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span>  MemberIterator next = pos + (last - first);</div> +<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>  <span class="keywordflow">for</span> (MemberIterator itr = pos; next != end; ++itr, ++next) {</div> +<div class="line"><a name="l02338"></a><span class="lineno"> 2338</span>  std::memcpy(static_cast<void*>(&*itr), &*next, <span class="keyword">sizeof</span>(Member));</div> +<div class="line"><a name="l02339"></a><span class="lineno"> 2339</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> mpos = static_cast<SizeType>(itr - beg);</div> +<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span>  <span class="keyword">new</span> (&mit[mpos]) MapIterator(DropMapIterator(mit[next - beg]));</div> +<div class="line"><a name="l02341"></a><span class="lineno"> 2341</span>  mit[mpos]->second = mpos;</div> +<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>  }</div> +<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>  }</div> +<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span>  std::memmove(static_cast<void*>(&*pos), &*last,</div> +<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>  static_cast<size_t>(end - last) * <span class="keyword">sizeof</span>(Member));</div> +<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>  o.size -= static_cast<SizeType>(last - first);</div> +<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>  <span class="keywordflow">return</span> pos;</div> +<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>  }</div> +<div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>  </div> +<div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>  <span class="keywordtype">void</span> DoCopyMembers(<span class="keyword">const</span> GenericValue<Encoding,SourceAllocator>& rhs, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator, <span class="keywordtype">bool</span> copyConstStrings) {</div> +<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(rhs.GetType() == <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>);</div> +<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>  </div> +<div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>  data_.f.flags = kObjectFlag;</div> +<div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count = rhs.data_.o.size;</div> +<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>  Member* lm = DoAllocMembers(count, allocator);</div> +<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>  <span class="keyword">const</span> <span class="keyword">typename</span> GenericValue<Encoding,SourceAllocator>::Member* rm = rhs.GetMembersPointer();</div> +<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span>  Map* &map = GetMap(lm);</div> +<div class="line"><a name="l02362"></a><span class="lineno"> 2362</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++) {</div> +<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>  <span class="keyword">new</span> (&lm[i].name) GenericValue(rm[i].name, allocator, copyConstStrings);</div> +<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>  <span class="keyword">new</span> (&lm[i].value) GenericValue(rm[i].value, allocator, copyConstStrings);</div> +<div class="line"><a name="l02367"></a><span class="lineno"> 2367</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>  <span class="keyword">new</span> (&mit[i]) MapIterator(map->insert(MapPair(lm[i].name.data_, i)));</div> +<div class="line"><a name="l02369"></a><span class="lineno"> 2369</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span>  }</div> +<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span>  data_.o.size = data_.o.capacity = count;</div> +<div class="line"><a name="l02372"></a><span class="lineno"> 2372</span>  SetMembersPointer(lm);</div> +<div class="line"><a name="l02373"></a><span class="lineno"> 2373</span>  }</div> +<div class="line"><a name="l02374"></a><span class="lineno"> 2374</span>  </div> +<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span>  <span class="comment">// Initialize this value as array with initial data, without calling destructor.</span></div> +<div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>  <span class="keywordtype">void</span> SetArrayRaw(GenericValue* values, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02377"></a><span class="lineno"> 2377</span>  data_.f.flags = kArrayFlag;</div> +<div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>  <span class="keywordflow">if</span> (count) {</div> +<div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>  GenericValue* e = static_cast<GenericValue*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(GenericValue)));</div> +<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>  SetElementsPointer(e);</div> +<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>  std::memcpy(static_cast<void*>(e), values, count * <span class="keyword">sizeof</span>(GenericValue));</div> +<div class="line"><a name="l02382"></a><span class="lineno"> 2382</span>  }</div> +<div class="line"><a name="l02383"></a><span class="lineno"> 2383</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>  SetElementsPointer(0);</div> +<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>  data_.a.size = data_.a.capacity = count;</div> +<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>  }</div> +<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span> <span class="comment"></span> </div> +<div class="line"><a name="l02388"></a><span class="lineno"> 2388</span> <span class="comment"> //! Initialize this value as object with initial data, without calling destructor.</span></div> +<div class="line"><a name="l02389"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac"> 2389</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* members, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>  data_.f.flags = kObjectFlag;</div> +<div class="line"><a name="l02391"></a><span class="lineno"> 2391</span>  <span class="keywordflow">if</span> (count) {</div> +<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* m = DoAllocMembers(count, allocator);</div> +<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>  SetMembersPointer(m);</div> +<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>  std::memcpy(static_cast<void*>(m), members, count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>));</div> +<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>  Map* &map = GetMap(m);</div> +<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++) {</div> +<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>  <span class="keyword">new</span> (&mit[i]) MapIterator(map->insert(MapPair(m[i].name.data_, i)));</div> +<div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>  }</div> +<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>  }</div> +<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span>  SetMembersPointer(0);</div> +<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span>  data_.o.size = data_.o.capacity = count;</div> +<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>  }</div> +<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span> <span class="comment"></span> </div> +<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span> <span class="comment"> //! Initialize this value as constant string, without calling destructor.</span></div> +<div class="line"><a name="l02409"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835"> 2409</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l02410"></a><span class="lineno"> 2410</span>  data_.f.flags = kConstStringFlag;</div> +<div class="line"><a name="l02411"></a><span class="lineno"> 2411</span>  SetStringPointer(s);</div> +<div class="line"><a name="l02412"></a><span class="lineno"> 2412</span>  data_.s.length = s.length;</div> +<div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>  }</div> +<div class="line"><a name="l02414"></a><span class="lineno"> 2414</span> <span class="comment"></span> </div> +<div class="line"><a name="l02415"></a><span class="lineno"> 2415</span> <span class="comment"> //! Initialize this value as copy string with initial data, without calling destructor.</span></div> +<div class="line"><a name="l02416"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c"> 2416</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str = 0;</div> +<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>  <span class="keywordflow">if</span> (ShortString::Usable(s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>)) {</div> +<div class="line"><a name="l02419"></a><span class="lineno"> 2419</span>  data_.f.flags = kShortStringFlag;</div> +<div class="line"><a name="l02420"></a><span class="lineno"> 2420</span>  data_.ss.SetLength(s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>);</div> +<div class="line"><a name="l02421"></a><span class="lineno"> 2421</span>  str = data_.ss.str;</div> +<div class="line"><a name="l02422"></a><span class="lineno"> 2422</span>  } <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l02423"></a><span class="lineno"> 2423</span>  data_.f.flags = kCopyStringFlag;</div> +<div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>  data_.s.length = s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>;</div> +<div class="line"><a name="l02425"></a><span class="lineno"> 2425</span>  str = static_cast<Ch *>(allocator.Malloc((s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a> + 1) * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>)));</div> +<div class="line"><a name="l02426"></a><span class="lineno"> 2426</span>  SetStringPointer(str);</div> +<div class="line"><a name="l02427"></a><span class="lineno"> 2427</span>  }</div> +<div class="line"><a name="l02428"></a><span class="lineno"> 2428</span>  std::memcpy(str, s, s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a> * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>));</div> +<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span>  str[s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>] = <span class="charliteral">'\0'</span>;</div> +<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span>  }</div> +<div class="line"><a name="l02431"></a><span class="lineno"> 2431</span> <span class="comment"></span> </div> +<div class="line"><a name="l02432"></a><span class="lineno"> 2432</span> <span class="comment"> //! Assignment without calling destructor</span></div> +<div class="line"><a name="l02433"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e"> 2433</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& rhs) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>  data_ = rhs.data_;</div> +<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>  <span class="comment">// data_.f.flags = rhs.data_.f.flags;</span></div> +<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>  rhs.data_.f.flags = kNullFlag;</div> +<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>  }</div> +<div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>  </div> +<div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>  <span class="keywordtype">bool</span> StringEqual(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding, SourceAllocator></a>& rhs)<span class="keyword"> const </span>{</div> +<div class="line"><a name="l02441"></a><span class="lineno"> 2441</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString());</div> +<div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(rhs.IsString());</div> +<div class="line"><a name="l02443"></a><span class="lineno"> 2443</span>  </div> +<div class="line"><a name="l02444"></a><span class="lineno"> 2444</span>  <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len1 = GetStringLength();</div> +<div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>  <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len2 = rhs.GetStringLength();</div> +<div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>  <span class="keywordflow">if</span>(len1 != len2) { <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div> +<div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>  </div> +<div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>  <span class="keyword">const</span> Ch* <span class="keyword">const</span> str1 = GetString();</div> +<div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>  <span class="keyword">const</span> Ch* <span class="keyword">const</span> str2 = rhs.GetString();</div> +<div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>  <span class="keywordflow">if</span>(str1 == str2) { <span class="keywordflow">return</span> <span class="keyword">true</span>; } <span class="comment">// fast path for constant string</span></div> +<div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>  </div> +<div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>  <span class="keywordflow">return</span> (std::memcmp(str1, str2, <span class="keyword">sizeof</span>(Ch) * len1) == 0);</div> +<div class="line"><a name="l02453"></a><span class="lineno"> 2453</span>  }</div> +<div class="line"><a name="l02454"></a><span class="lineno"> 2454</span>  </div> +<div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>  Data data_;</div> +<div class="line"><a name="l02456"></a><span class="lineno"> 2456</span> };</div> +<div class="line"><a name="l02457"></a><span class="lineno"> 2457</span> <span class="comment"></span> </div> +<div class="line"><a name="l02458"></a><span class="lineno"> 2458</span> <span class="comment">//! GenericValue with UTF8 encoding</span></div> +<div class="line"><a name="l02459"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505"> 2459</a></span> <span class="comment"></span><span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<UTF8<></a> > <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a>;</div> +<div class="line"><a name="l02460"></a><span class="lineno"> 2460</span> <span class="comment"></span> </div> +<div class="line"><a name="l02461"></a><span class="lineno"> 2461</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l02462"></a><span class="lineno"> 2462</span> <span class="comment"></span><span class="comment">// GenericDocument </span></div> +<div class="line"><a name="l02463"></a><span class="lineno"> 2463</span> <span class="comment"></span> </div> +<div class="line"><a name="l02464"></a><span class="lineno"> 2464</span> <span class="comment">//! A document for parsing JSON text as DOM.</span></div> +<div class="line"><a name="l02465"></a><span class="lineno"> 2465</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l02466"></a><span class="lineno"> 2466</span> <span class="comment"> \note implements Handler concept</span></div> +<div class="line"><a name="l02467"></a><span class="lineno"> 2467</span> <span class="comment"> \tparam Encoding Encoding for both parsing and string storage.</span></div> +<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span> <span class="comment"> \tparam Allocator Allocator for allocating memory for the DOM</span></div> +<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span> <span class="comment"> \tparam StackAllocator Allocator for allocating memory for stack during parsing.</span></div> +<div class="line"><a name="l02470"></a><span class="lineno"> 2470</span> <span class="comment"> \warning Although GenericDocument inherits from GenericValue, the API does \b not provide any virtual functions, especially no virtual destructor. To avoid memory leaks, do not \c delete a GenericDocument object via a pointer to a GenericValue.</span></div> +<div class="line"><a name="l02471"></a><span class="lineno"> 2471</span> <span class="comment">*/</span></div> +<div class="line"><a name="l02472"></a><span class="lineno"> 2472</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Encoding, <span class="keyword">typename</span> Allocator = RAPIDJSON_DEFAULT_ALLOCATOR, <span class="keyword">typename</span> StackAllocator = RAPIDJSON_DEFAULT_STACK_ALLOCATOR ></div> +<div class="line"><a name="l02473"></a><span class="lineno"> 2473</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a> : <span class="keyword">public</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a><Encoding, Allocator> {</div> +<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l02475"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5"> 2475</a></span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> Encoding::Ch <a class="code" href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5">Ch</a>; <span class="comment">//!< Character type derived from Encoding.</span></div> +<div class="line"><a name="l02476"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc"> 2476</a></span> <span class="comment"></span> <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding, Allocator></a> <a class="code" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">ValueType</a>; <span class="comment">//!< Value type of the document.</span></div> +<div class="line"><a name="l02477"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773"> 2477</a></span> <span class="comment"></span> <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> <a class="code" href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773">AllocatorType</a>; <span class="comment">//!< Allocator type from template parameter.</span></div> +<div class="line"><a name="l02478"></a><span class="lineno"> 2478</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02479"></a><span class="lineno"> 2479</span> <span class="comment"> //! Constructor</span></div> +<div class="line"><a name="l02480"></a><span class="lineno"> 2480</span> <span class="comment"></span><span class="comment"> /*! Creates an empty document of specified type.</span></div> +<div class="line"><a name="l02481"></a><span class="lineno"> 2481</span> <span class="comment"> \param type Mandatory type of object to create.</span></div> +<div class="line"><a name="l02482"></a><span class="lineno"> 2482</span> <span class="comment"> \param allocator Optional allocator for allocating memory.</span></div> +<div class="line"><a name="l02483"></a><span class="lineno"> 2483</span> <span class="comment"> \param stackCapacity Optional initial capacity of stack in bytes.</span></div> +<div class="line"><a name="l02484"></a><span class="lineno"> 2484</span> <span class="comment"> \param stackAllocator Optional allocator for allocating memory for stack.</span></div> +<div class="line"><a name="l02485"></a><span class="lineno"> 2485</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02486"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5"> 2486</a></span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">GenericDocument</a>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> type, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator = 0, <span class="keywordtype">size_t</span> stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) :</div> +<div class="line"><a name="l02487"></a><span class="lineno"> 2487</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a><<a class="code" href="classrapidjson_1_1_encoding.html">Encoding</a>, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>>(type), allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_()</div> +<div class="line"><a name="l02488"></a><span class="lineno"> 2488</span>  {</div> +<div class="line"><a name="l02489"></a><span class="lineno"> 2489</span>  <span class="keywordflow">if</span> (!allocator_)</div> +<div class="line"><a name="l02490"></a><span class="lineno"> 2490</span>  ownAllocator_ = allocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>)();</div> +<div class="line"><a name="l02491"></a><span class="lineno"> 2491</span>  }</div> +<div class="line"><a name="l02492"></a><span class="lineno"> 2492</span> <span class="comment"></span> </div> +<div class="line"><a name="l02493"></a><span class="lineno"> 2493</span> <span class="comment"> //! Constructor</span></div> +<div class="line"><a name="l02494"></a><span class="lineno"> 2494</span> <span class="comment"></span><span class="comment"> /*! Creates an empty document which type is Null. </span></div> +<div class="line"><a name="l02495"></a><span class="lineno"> 2495</span> <span class="comment"> \param allocator Optional allocator for allocating memory.</span></div> +<div class="line"><a name="l02496"></a><span class="lineno"> 2496</span> <span class="comment"> \param stackCapacity Optional initial capacity of stack in bytes.</span></div> +<div class="line"><a name="l02497"></a><span class="lineno"> 2497</span> <span class="comment"> \param stackAllocator Optional allocator for allocating memory for stack.</span></div> +<div class="line"><a name="l02498"></a><span class="lineno"> 2498</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02499"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb"> 2499</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">GenericDocument</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator = 0, <span class="keywordtype">size_t</span> stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) : </div> +<div class="line"><a name="l02500"></a><span class="lineno"> 2500</span>  allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_()</div> +<div class="line"><a name="l02501"></a><span class="lineno"> 2501</span>  {</div> +<div class="line"><a name="l02502"></a><span class="lineno"> 2502</span>  <span class="keywordflow">if</span> (!allocator_)</div> +<div class="line"><a name="l02503"></a><span class="lineno"> 2503</span>  ownAllocator_ = allocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>)();</div> <div class="line"><a name="l02504"></a><span class="lineno"> 2504</span>  }</div> -<div class="line"><a name="l02505"></a><span class="lineno"> 2505</span> <span class="comment"></span> </div> -<div class="line"><a name="l02506"></a><span class="lineno"> 2506</span> <span class="comment"> //! Get the capacity of stack in bytes.</span></div> -<div class="line"><a name="l02507"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b"> 2507</a></span> <span class="comment"></span> <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">GetStackCapacity</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> stack_.GetCapacity(); }</div> -<div class="line"><a name="l02508"></a><span class="lineno"> 2508</span>  </div> -<div class="line"><a name="l02509"></a><span class="lineno"> 2509</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l02510"></a><span class="lineno"> 2510</span>  <span class="comment">// clear stack on any exit from ParseStream, e.g. due to exception</span></div> -<div class="line"><a name="l02511"></a><span class="lineno"> 2511</span>  <span class="keyword">struct </span>ClearStackOnExit {</div> -<div class="line"><a name="l02512"></a><span class="lineno"> 2512</span>  <span class="keyword">explicit</span> ClearStackOnExit(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& d) : d_(d) {}</div> -<div class="line"><a name="l02513"></a><span class="lineno"> 2513</span>  ~ClearStackOnExit() { d_.ClearStack(); }</div> -<div class="line"><a name="l02514"></a><span class="lineno"> 2514</span>  <span class="keyword">private</span>:</div> -<div class="line"><a name="l02515"></a><span class="lineno"> 2515</span>  ClearStackOnExit(<span class="keyword">const</span> ClearStackOnExit&);</div> -<div class="line"><a name="l02516"></a><span class="lineno"> 2516</span>  ClearStackOnExit& operator=(<span class="keyword">const</span> ClearStackOnExit&);</div> -<div class="line"><a name="l02517"></a><span class="lineno"> 2517</span>  GenericDocument& d_;</div> -<div class="line"><a name="l02518"></a><span class="lineno"> 2518</span>  };</div> -<div class="line"><a name="l02519"></a><span class="lineno"> 2519</span>  </div> -<div class="line"><a name="l02520"></a><span class="lineno"> 2520</span>  <span class="comment">// callers of the following private Handler functions</span></div> -<div class="line"><a name="l02521"></a><span class="lineno"> 2521</span>  <span class="comment">// template <typename,typename,typename> friend class GenericReader; // for parsing</span></div> -<div class="line"><a name="l02522"></a><span class="lineno"> 2522</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue; <span class="comment">// for deep copying</span></div> -<div class="line"><a name="l02523"></a><span class="lineno"> 2523</span>  </div> -<div class="line"><a name="l02524"></a><span class="lineno"> 2524</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>  <span class="comment">// Implementation of Handler</span></div> -<div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>  <span class="keywordtype">bool</span> Null() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>  <span class="keywordtype">bool</span> Bool(<span class="keywordtype">bool</span> b) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(b); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>  <span class="keywordtype">bool</span> Int(<span class="keywordtype">int</span> i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>  <span class="keywordtype">bool</span> Uint(<span class="keywordtype">unsigned</span> i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>  <span class="keywordtype">bool</span> Int64(int64_t i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>  <span class="keywordtype">bool</span> Uint64(uint64_t i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02532"></a><span class="lineno"> 2532</span>  <span class="keywordtype">bool</span> Double(<span class="keywordtype">double</span> d) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(d); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02533"></a><span class="lineno"> 2533</span>  </div> -<div class="line"><a name="l02534"></a><span class="lineno"> 2534</span>  <span class="keywordtype">bool</span> RawNumber(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { </div> -<div class="line"><a name="l02535"></a><span class="lineno"> 2535</span>  <span class="keywordflow">if</span> (copy) </div> -<div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length, GetAllocator());</div> -<div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length);</div> -<div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>  }</div> -<div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>  </div> -<div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>  <span class="keywordtype">bool</span> String(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { </div> -<div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>  <span class="keywordflow">if</span> (copy) </div> -<div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length, GetAllocator());</div> -<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02546"></a><span class="lineno"> 2546</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length);</div> -<div class="line"><a name="l02547"></a><span class="lineno"> 2547</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l02548"></a><span class="lineno"> 2548</span>  }</div> -<div class="line"><a name="l02549"></a><span class="lineno"> 2549</span>  </div> -<div class="line"><a name="l02550"></a><span class="lineno"> 2550</span>  <span class="keywordtype">bool</span> StartObject() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02551"></a><span class="lineno"> 2551</span>  </div> -<div class="line"><a name="l02552"></a><span class="lineno"> 2552</span>  <span class="keywordtype">bool</span> Key(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { <span class="keywordflow">return</span> String(str, length, copy); }</div> -<div class="line"><a name="l02553"></a><span class="lineno"> 2553</span>  </div> -<div class="line"><a name="l02554"></a><span class="lineno"> 2554</span>  <span class="keywordtype">bool</span> EndObject(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> memberCount) {</div> -<div class="line"><a name="l02555"></a><span class="lineno"> 2555</span>  <span class="keyword">typename</span> ValueType::Member* members = stack_.template Pop<typename ValueType::Member>(memberCount);</div> -<div class="line"><a name="l02556"></a><span class="lineno"> 2556</span>  stack_.template Top<ValueType>()->SetObjectRaw(members, memberCount, GetAllocator());</div> -<div class="line"><a name="l02557"></a><span class="lineno"> 2557</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l02558"></a><span class="lineno"> 2558</span>  }</div> -<div class="line"><a name="l02559"></a><span class="lineno"> 2559</span>  </div> -<div class="line"><a name="l02560"></a><span class="lineno"> 2560</span>  <span class="keywordtype">bool</span> StartArray() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02561"></a><span class="lineno"> 2561</span>  </div> -<div class="line"><a name="l02562"></a><span class="lineno"> 2562</span>  <span class="keywordtype">bool</span> EndArray(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> elementCount) {</div> -<div class="line"><a name="l02563"></a><span class="lineno"> 2563</span>  ValueType* elements = stack_.template Pop<ValueType>(elementCount);</div> -<div class="line"><a name="l02564"></a><span class="lineno"> 2564</span>  stack_.template Top<ValueType>()->SetArrayRaw(elements, elementCount, GetAllocator());</div> -<div class="line"><a name="l02565"></a><span class="lineno"> 2565</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>  }</div> -<div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>  </div> -<div class="line"><a name="l02568"></a><span class="lineno"> 2568</span> <span class="keyword">private</span>:<span class="comment"></span></div> -<div class="line"><a name="l02569"></a><span class="lineno"> 2569</span> <span class="comment"> //! Prohibit copying</span></div> -<div class="line"><a name="l02570"></a><span class="lineno"> 2570</span> <span class="comment"></span> GenericDocument(<span class="keyword">const</span> GenericDocument&);<span class="comment"></span></div> -<div class="line"><a name="l02571"></a><span class="lineno"> 2571</span> <span class="comment"> //! Prohibit assignment</span></div> -<div class="line"><a name="l02572"></a><span class="lineno"> 2572</span> <span class="comment"></span> GenericDocument& operator=(<span class="keyword">const</span> GenericDocument&);</div> -<div class="line"><a name="l02573"></a><span class="lineno"> 2573</span>  </div> -<div class="line"><a name="l02574"></a><span class="lineno"> 2574</span>  <span class="keywordtype">void</span> ClearStack() {</div> -<div class="line"><a name="l02575"></a><span class="lineno"> 2575</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree)</div> -<div class="line"><a name="l02576"></a><span class="lineno"> 2576</span>  <span class="keywordflow">while</span> (stack_.GetSize() > 0) <span class="comment">// Here assumes all elements in stack array are GenericValue (Member is actually 2 GenericValue objects)</span></div> -<div class="line"><a name="l02577"></a><span class="lineno"> 2577</span>  (stack_.template Pop<ValueType>(1))->~ValueType();</div> -<div class="line"><a name="l02578"></a><span class="lineno"> 2578</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02579"></a><span class="lineno"> 2579</span>  stack_.Clear();</div> -<div class="line"><a name="l02580"></a><span class="lineno"> 2580</span>  stack_.ShrinkToFit();</div> -<div class="line"><a name="l02581"></a><span class="lineno"> 2581</span>  }</div> -<div class="line"><a name="l02582"></a><span class="lineno"> 2582</span>  </div> -<div class="line"><a name="l02583"></a><span class="lineno"> 2583</span>  <span class="keywordtype">void</span> Destroy() {</div> -<div class="line"><a name="l02584"></a><span class="lineno"> 2584</span>  <a class="code" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a>(ownAllocator_);</div> -<div class="line"><a name="l02585"></a><span class="lineno"> 2585</span>  }</div> -<div class="line"><a name="l02586"></a><span class="lineno"> 2586</span>  </div> -<div class="line"><a name="l02587"></a><span class="lineno"> 2587</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> kDefaultStackCapacity = 1024;</div> -<div class="line"><a name="l02588"></a><span class="lineno"> 2588</span>  <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator_;</div> -<div class="line"><a name="l02589"></a><span class="lineno"> 2589</span>  <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* ownAllocator_;</div> -<div class="line"><a name="l02590"></a><span class="lineno"> 2590</span>  internal::Stack<StackAllocator> stack_;</div> -<div class="line"><a name="l02591"></a><span class="lineno"> 2591</span>  ParseResult parseResult_;</div> -<div class="line"><a name="l02592"></a><span class="lineno"> 2592</span> };</div> -<div class="line"><a name="l02593"></a><span class="lineno"> 2593</span> <span class="comment"></span> </div> -<div class="line"><a name="l02594"></a><span class="lineno"> 2594</span> <span class="comment">//! GenericDocument with UTF8 encoding</span></div> -<div class="line"><a name="l02595"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8"> 2595</a></span> <span class="comment"></span><span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument<UTF8<></a> > <a class="code" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">Document</a>;</div> -<div class="line"><a name="l02596"></a><span class="lineno"> 2596</span>  </div> -<div class="line"><a name="l02597"></a><span class="lineno"> 2597</span> <span class="comment"></span> </div> -<div class="line"><a name="l02598"></a><span class="lineno"> 2598</span> <span class="comment">//! Helper class for accessing Value of array type.</span></div> -<div class="line"><a name="l02599"></a><span class="lineno"> 2599</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l02600"></a><span class="lineno"> 2600</span> <span class="comment"> Instance of this helper class is obtained by \c GenericValue::GetArray().</span></div> -<div class="line"><a name="l02601"></a><span class="lineno"> 2601</span> <span class="comment"> In addition to all APIs for array type, it provides range-based for loop if \c RAPIDJSON_HAS_CXX11_RANGE_FOR=1.</span></div> -<div class="line"><a name="l02602"></a><span class="lineno"> 2602</span> <span class="comment">*/</span></div> -<div class="line"><a name="l02603"></a><span class="lineno"> 2603</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> Const, <span class="keyword">typename</span> ValueT></div> -<div class="line"><a name="l02604"></a><span class="lineno"> 2604</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> {</div> -<div class="line"><a name="l02605"></a><span class="lineno"> 2605</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l02606"></a><span class="lineno"> 2606</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray<true, ValueT></a> ConstArray;</div> -<div class="line"><a name="l02607"></a><span class="lineno"> 2607</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray<false, ValueT></a> Array;</div> -<div class="line"><a name="l02608"></a><span class="lineno"> 2608</span>  <span class="keyword">typedef</span> ValueT PlainType;</div> -<div class="line"><a name="l02609"></a><span class="lineno"> 2609</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::MaybeAddConst<Const,PlainType>::Type</a> ValueType;</div> -<div class="line"><a name="l02610"></a><span class="lineno"> 2610</span>  <span class="keyword">typedef</span> ValueType* ValueIterator; <span class="comment">// This may be const or non-const iterator</span></div> -<div class="line"><a name="l02611"></a><span class="lineno"> 2611</span>  <span class="keyword">typedef</span> <span class="keyword">const</span> ValueT* ConstValueIterator;</div> -<div class="line"><a name="l02612"></a><span class="lineno"> 2612</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::AllocatorType AllocatorType;</div> -<div class="line"><a name="l02613"></a><span class="lineno"> 2613</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::StringRefType StringRefType;</div> -<div class="line"><a name="l02614"></a><span class="lineno"> 2614</span>  </div> -<div class="line"><a name="l02615"></a><span class="lineno"> 2615</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> -<div class="line"><a name="l02616"></a><span class="lineno"> 2616</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>;</div> -<div class="line"><a name="l02617"></a><span class="lineno"> 2617</span>  </div> -<div class="line"><a name="l02618"></a><span class="lineno"> 2618</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& rhs) : value_(rhs.value_) {}</div> -<div class="line"><a name="l02619"></a><span class="lineno"> 2619</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& operator=(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& rhs) { value_ = rhs.value_; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02620"></a><span class="lineno"> 2620</span>  ~<a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>() {}</div> -<div class="line"><a name="l02621"></a><span class="lineno"> 2621</span>  </div> -<div class="line"><a name="l02622"></a><span class="lineno"> 2622</span>  <span class="keyword">operator</span> ValueType&() <span class="keyword">const</span> { <span class="keywordflow">return</span> value_; }</div> -<div class="line"><a name="l02623"></a><span class="lineno"> 2623</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Size()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Size(); }</div> -<div class="line"><a name="l02624"></a><span class="lineno"> 2624</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Capacity()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Capacity(); }</div> -<div class="line"><a name="l02625"></a><span class="lineno"> 2625</span>  <span class="keywordtype">bool</span> Empty()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Empty(); }</div> -<div class="line"><a name="l02626"></a><span class="lineno"> 2626</span>  <span class="keywordtype">void</span> Clear()<span class="keyword"> const </span>{ value_.Clear(); }</div> -<div class="line"><a name="l02627"></a><span class="lineno"> 2627</span>  ValueType& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[index]; }</div> -<div class="line"><a name="l02628"></a><span class="lineno"> 2628</span>  ValueIterator Begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Begin(); }</div> -<div class="line"><a name="l02629"></a><span class="lineno"> 2629</span>  ValueIterator End()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.End(); }</div> -<div class="line"><a name="l02630"></a><span class="lineno"> 2630</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> Reserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, AllocatorType &allocator)<span class="keyword"> const </span>{ value_.Reserve(newCapacity, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02631"></a><span class="lineno"> 2631</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02632"></a><span class="lineno"> 2632</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02633"></a><span class="lineno"> 2633</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02634"></a><span class="lineno"> 2634</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02636"></a><span class="lineno"> 2636</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>&)) PushBack(T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02637"></a><span class="lineno"> 2637</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PopBack()<span class="keyword"> const </span>{ value_.PopBack(); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02638"></a><span class="lineno"> 2638</span>  ValueIterator Erase(ConstValueIterator pos)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Erase(pos); }</div> -<div class="line"><a name="l02639"></a><span class="lineno"> 2639</span>  ValueIterator Erase(ConstValueIterator first, ConstValueIterator last)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Erase(first, last); }</div> -<div class="line"><a name="l02640"></a><span class="lineno"> 2640</span>  </div> -<div class="line"><a name="l02641"></a><span class="lineno"> 2641</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> -<div class="line"><a name="l02642"></a><span class="lineno"> 2642</span>  ValueIterator begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Begin(); }</div> -<div class="line"><a name="l02643"></a><span class="lineno"> 2643</span>  ValueIterator end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.End(); }</div> -<div class="line"><a name="l02644"></a><span class="lineno"> 2644</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02645"></a><span class="lineno"> 2645</span>  </div> -<div class="line"><a name="l02646"></a><span class="lineno"> 2646</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l02647"></a><span class="lineno"> 2647</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>();</div> -<div class="line"><a name="l02648"></a><span class="lineno"> 2648</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>(ValueType& value) : value_(value) {}</div> -<div class="line"><a name="l02649"></a><span class="lineno"> 2649</span>  ValueType& value_;</div> -<div class="line"><a name="l02650"></a><span class="lineno"> 2650</span> };</div> -<div class="line"><a name="l02651"></a><span class="lineno"> 2651</span> <span class="comment"></span> </div> -<div class="line"><a name="l02652"></a><span class="lineno"> 2652</span> <span class="comment">//! Helper class for accessing Value of object type.</span></div> -<div class="line"><a name="l02653"></a><span class="lineno"> 2653</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l02654"></a><span class="lineno"> 2654</span> <span class="comment"> Instance of this helper class is obtained by \c GenericValue::GetObject().</span></div> -<div class="line"><a name="l02655"></a><span class="lineno"> 2655</span> <span class="comment"> In addition to all APIs for array type, it provides range-based for loop if \c RAPIDJSON_HAS_CXX11_RANGE_FOR=1.</span></div> -<div class="line"><a name="l02656"></a><span class="lineno"> 2656</span> <span class="comment">*/</span></div> -<div class="line"><a name="l02657"></a><span class="lineno"> 2657</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> Const, <span class="keyword">typename</span> ValueT></div> -<div class="line"><a name="l02658"></a><span class="lineno"> 2658</span> <span class="keyword">class </span>GenericObject {</div> -<div class="line"><a name="l02659"></a><span class="lineno"> 2659</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l02660"></a><span class="lineno"> 2660</span>  <span class="keyword">typedef</span> GenericObject<true, ValueT> ConstObject;</div> -<div class="line"><a name="l02661"></a><span class="lineno"> 2661</span>  <span class="keyword">typedef</span> GenericObject<false, ValueT> Object;</div> -<div class="line"><a name="l02662"></a><span class="lineno"> 2662</span>  <span class="keyword">typedef</span> ValueT PlainType;</div> -<div class="line"><a name="l02663"></a><span class="lineno"> 2663</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::MaybeAddConst<Const,PlainType>::Type</a> ValueType;</div> -<div class="line"><a name="l02664"></a><span class="lineno"> 2664</span>  <span class="keyword">typedef</span> GenericMemberIterator<Const, typename ValueT::EncodingType, typename ValueT::AllocatorType> MemberIterator; <span class="comment">// This may be const or non-const iterator</span></div> -<div class="line"><a name="l02665"></a><span class="lineno"> 2665</span>  <span class="keyword">typedef</span> GenericMemberIterator<true, typename ValueT::EncodingType, typename ValueT::AllocatorType> ConstMemberIterator;</div> -<div class="line"><a name="l02666"></a><span class="lineno"> 2666</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::AllocatorType AllocatorType;</div> -<div class="line"><a name="l02667"></a><span class="lineno"> 2667</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::StringRefType StringRefType;</div> -<div class="line"><a name="l02668"></a><span class="lineno"> 2668</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::EncodingType EncodingType;</div> -<div class="line"><a name="l02669"></a><span class="lineno"> 2669</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::Ch Ch;</div> -<div class="line"><a name="l02670"></a><span class="lineno"> 2670</span>  </div> -<div class="line"><a name="l02671"></a><span class="lineno"> 2671</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> -<div class="line"><a name="l02672"></a><span class="lineno"> 2672</span>  <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue;</div> -<div class="line"><a name="l02673"></a><span class="lineno"> 2673</span>  </div> -<div class="line"><a name="l02674"></a><span class="lineno"> 2674</span>  GenericObject(<span class="keyword">const</span> GenericObject& rhs) : value_(rhs.value_) {}</div> -<div class="line"><a name="l02675"></a><span class="lineno"> 2675</span>  GenericObject& operator=(<span class="keyword">const</span> GenericObject& rhs) { value_ = rhs.value_; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02676"></a><span class="lineno"> 2676</span>  ~GenericObject() {}</div> -<div class="line"><a name="l02677"></a><span class="lineno"> 2677</span>  </div> -<div class="line"><a name="l02678"></a><span class="lineno"> 2678</span>  <span class="keyword">operator</span> ValueType&() <span class="keyword">const</span> { <span class="keywordflow">return</span> value_; }</div> -<div class="line"><a name="l02679"></a><span class="lineno"> 2679</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberCount(); }</div> -<div class="line"><a name="l02680"></a><span class="lineno"> 2680</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCapacity()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberCapacity(); }</div> -<div class="line"><a name="l02681"></a><span class="lineno"> 2681</span>  <span class="keywordtype">bool</span> ObjectEmpty()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.ObjectEmpty(); }</div> -<div class="line"><a name="l02682"></a><span class="lineno"> 2682</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> ValueType& operator[](T* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> -<div class="line"><a name="l02683"></a><span class="lineno"> 2683</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> ValueType& operator[](<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> -<div class="line"><a name="l02684"></a><span class="lineno"> 2684</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02685"></a><span class="lineno"> 2685</span>  ValueType& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> -<div class="line"><a name="l02686"></a><span class="lineno"> 2686</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02687"></a><span class="lineno"> 2687</span>  MemberIterator MemberBegin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberBegin(); }</div> -<div class="line"><a name="l02688"></a><span class="lineno"> 2688</span>  MemberIterator MemberEnd()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberEnd(); }</div> -<div class="line"><a name="l02689"></a><span class="lineno"> 2689</span>  GenericObject MemberReserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, AllocatorType &allocator)<span class="keyword"> const </span>{ value_.MemberReserve(newCapacity, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02690"></a><span class="lineno"> 2690</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> -<div class="line"><a name="l02691"></a><span class="lineno"> 2691</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02692"></a><span class="lineno"> 2692</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> -<div class="line"><a name="l02693"></a><span class="lineno"> 2693</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02694"></a><span class="lineno"> 2694</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> -<div class="line"><a name="l02695"></a><span class="lineno"> 2695</span>  MemberIterator FindMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> -<div class="line"><a name="l02696"></a><span class="lineno"> 2696</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> MemberIterator FindMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> -<div class="line"><a name="l02697"></a><span class="lineno"> 2697</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02698"></a><span class="lineno"> 2698</span>  MemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> -<div class="line"><a name="l02699"></a><span class="lineno"> 2699</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02700"></a><span class="lineno"> 2700</span>  GenericObject AddMember(ValueType& name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02701"></a><span class="lineno"> 2701</span>  GenericObject AddMember(ValueType& name, StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02702"></a><span class="lineno"> 2702</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02703"></a><span class="lineno"> 2703</span>  GenericObject AddMember(ValueType& name, std::basic_string<Ch>& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02704"></a><span class="lineno"> 2704</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02705"></a><span class="lineno"> 2705</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (ValueType&)) AddMember(ValueType& name, T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02706"></a><span class="lineno"> 2706</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02707"></a><span class="lineno"> 2707</span>  GenericObject AddMember(ValueType&& name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02708"></a><span class="lineno"> 2708</span>  GenericObject AddMember(ValueType&& name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02709"></a><span class="lineno"> 2709</span>  GenericObject AddMember(ValueType& name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02710"></a><span class="lineno"> 2710</span>  GenericObject AddMember(StringRefType name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02711"></a><span class="lineno"> 2711</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02712"></a><span class="lineno"> 2712</span>  GenericObject AddMember(StringRefType name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02713"></a><span class="lineno"> 2713</span>  GenericObject AddMember(StringRefType name, StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02714"></a><span class="lineno"> 2714</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericObject)) AddMember(StringRefType name, T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02715"></a><span class="lineno"> 2715</span>  <span class="keywordtype">void</span> RemoveAllMembers() { value_.RemoveAllMembers(); }</div> -<div class="line"><a name="l02716"></a><span class="lineno"> 2716</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> -<div class="line"><a name="l02717"></a><span class="lineno"> 2717</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02718"></a><span class="lineno"> 2718</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> -<div class="line"><a name="l02719"></a><span class="lineno"> 2719</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02720"></a><span class="lineno"> 2720</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> -<div class="line"><a name="l02721"></a><span class="lineno"> 2721</span>  MemberIterator RemoveMember(MemberIterator m)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(m); }</div> -<div class="line"><a name="l02722"></a><span class="lineno"> 2722</span>  MemberIterator EraseMember(ConstMemberIterator pos)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(pos); }</div> -<div class="line"><a name="l02723"></a><span class="lineno"> 2723</span>  MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterator last)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(first, last); }</div> -<div class="line"><a name="l02724"></a><span class="lineno"> 2724</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(name); }</div> -<div class="line"><a name="l02725"></a><span class="lineno"> 2725</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02726"></a><span class="lineno"> 2726</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> EraseMember(ValueType(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l02727"></a><span class="lineno"> 2727</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02728"></a><span class="lineno"> 2728</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(name); }</div> -<div class="line"><a name="l02729"></a><span class="lineno"> 2729</span>  </div> -<div class="line"><a name="l02730"></a><span class="lineno"> 2730</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> -<div class="line"><a name="l02731"></a><span class="lineno"> 2731</span>  MemberIterator begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberBegin(); }</div> -<div class="line"><a name="l02732"></a><span class="lineno"> 2732</span>  MemberIterator end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberEnd(); }</div> -<div class="line"><a name="l02733"></a><span class="lineno"> 2733</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02734"></a><span class="lineno"> 2734</span>  </div> -<div class="line"><a name="l02735"></a><span class="lineno"> 2735</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l02736"></a><span class="lineno"> 2736</span>  GenericObject();</div> -<div class="line"><a name="l02737"></a><span class="lineno"> 2737</span>  GenericObject(ValueType& value) : value_(value) {}</div> -<div class="line"><a name="l02738"></a><span class="lineno"> 2738</span>  ValueType& value_;</div> -<div class="line"><a name="l02739"></a><span class="lineno"> 2739</span> };</div> -<div class="line"><a name="l02740"></a><span class="lineno"> 2740</span>  </div> -<div class="line"><a name="l02741"></a><span class="lineno"> 2741</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l02742"></a><span class="lineno"> 2742</span> RAPIDJSON_DIAG_POP</div> -<div class="line"><a name="l02743"></a><span class="lineno"> 2743</span>  </div> -<div class="line"><a name="l02744"></a><span class="lineno"> 2744</span> <span class="preprocessor">#endif // RAPIDJSON_DOCUMENT_H_</span></div> +<div class="line"><a name="l02505"></a><span class="lineno"> 2505</span>  </div> +<div class="line"><a name="l02506"></a><span class="lineno"> 2506</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02507"></a><span class="lineno"> 2507</span> <span class="comment"> //! Move constructor in C++11</span></div> +<div class="line"><a name="l02508"></a><span class="lineno"> 2508</span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>&& rhs) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l02509"></a><span class="lineno"> 2509</span>  : ValueType(std::forward<ValueType>(rhs)), <span class="comment">// explicit cast to avoid prohibited move from Document</span></div> +<div class="line"><a name="l02510"></a><span class="lineno"> 2510</span>  allocator_(rhs.allocator_),</div> +<div class="line"><a name="l02511"></a><span class="lineno"> 2511</span>  ownAllocator_(rhs.ownAllocator_),</div> +<div class="line"><a name="l02512"></a><span class="lineno"> 2512</span>  stack_(std::move(rhs.stack_)),</div> +<div class="line"><a name="l02513"></a><span class="lineno"> 2513</span>  parseResult_(rhs.parseResult_)</div> +<div class="line"><a name="l02514"></a><span class="lineno"> 2514</span>  {</div> +<div class="line"><a name="l02515"></a><span class="lineno"> 2515</span>  rhs.allocator_ = 0;</div> +<div class="line"><a name="l02516"></a><span class="lineno"> 2516</span>  rhs.ownAllocator_ = 0;</div> +<div class="line"><a name="l02517"></a><span class="lineno"> 2517</span>  rhs.parseResult_ = <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">ParseResult</a>();</div> +<div class="line"><a name="l02518"></a><span class="lineno"> 2518</span>  }</div> +<div class="line"><a name="l02519"></a><span class="lineno"> 2519</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02520"></a><span class="lineno"> 2520</span>  </div> +<div class="line"><a name="l02521"></a><span class="lineno"> 2521</span>  ~GenericDocument() {</div> +<div class="line"><a name="l02522"></a><span class="lineno"> 2522</span>  <span class="comment">// Clear the ::ValueType before ownAllocator is destroyed, ~ValueType()</span></div> +<div class="line"><a name="l02523"></a><span class="lineno"> 2523</span>  <span class="comment">// runs last and may access its elements or members which would be freed</span></div> +<div class="line"><a name="l02524"></a><span class="lineno"> 2524</span>  <span class="comment">// with an allocator like MemoryPoolAllocator (CrtAllocator does not</span></div> +<div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>  <span class="comment">// free its data when destroyed, but MemoryPoolAllocator does).</span></div> +<div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>  <span class="keywordflow">if</span> (ownAllocator_) {</div> +<div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>  ValueType::SetNull();</div> +<div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>  }</div> +<div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>  Destroy();</div> +<div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>  }</div> +<div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>  </div> +<div class="line"><a name="l02532"></a><span class="lineno"> 2532</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02533"></a><span class="lineno"> 2533</span> <span class="comment"> //! Move assignment in C++11</span></div> +<div class="line"><a name="l02534"></a><span class="lineno"> 2534</span> <span class="comment"></span> GenericDocument& operator=(GenericDocument&& rhs) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l02535"></a><span class="lineno"> 2535</span>  {</div> +<div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>  <span class="comment">// The cast to ValueType is necessary here, because otherwise it would</span></div> +<div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>  <span class="comment">// attempt to call GenericValue's templated assignment operator.</span></div> +<div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>  ValueType::operator=(std::forward<ValueType>(rhs));</div> +<div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>  </div> +<div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>  <span class="comment">// Calling the destructor here would prematurely call stack_'s destructor</span></div> +<div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>  Destroy();</div> +<div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>  </div> +<div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>  allocator_ = rhs.allocator_;</div> +<div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>  ownAllocator_ = rhs.ownAllocator_;</div> +<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>  stack_ = std::move(rhs.stack_);</div> +<div class="line"><a name="l02546"></a><span class="lineno"> 2546</span>  parseResult_ = rhs.parseResult_;</div> +<div class="line"><a name="l02547"></a><span class="lineno"> 2547</span>  </div> +<div class="line"><a name="l02548"></a><span class="lineno"> 2548</span>  rhs.allocator_ = 0;</div> +<div class="line"><a name="l02549"></a><span class="lineno"> 2549</span>  rhs.ownAllocator_ = 0;</div> +<div class="line"><a name="l02550"></a><span class="lineno"> 2550</span>  rhs.parseResult_ = ParseResult();</div> +<div class="line"><a name="l02551"></a><span class="lineno"> 2551</span>  </div> +<div class="line"><a name="l02552"></a><span class="lineno"> 2552</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02553"></a><span class="lineno"> 2553</span>  }</div> +<div class="line"><a name="l02554"></a><span class="lineno"> 2554</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02555"></a><span class="lineno"> 2555</span> <span class="comment"></span> </div> +<div class="line"><a name="l02556"></a><span class="lineno"> 2556</span> <span class="comment"> //! Exchange the contents of this document with those of another.</span></div> +<div class="line"><a name="l02557"></a><span class="lineno"> 2557</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l02558"></a><span class="lineno"> 2558</span> <span class="comment"> \param rhs Another document.</span></div> +<div class="line"><a name="l02559"></a><span class="lineno"> 2559</span> <span class="comment"> \note Constant complexity.</span></div> +<div class="line"><a name="l02560"></a><span class="lineno"> 2560</span> <span class="comment"> \see GenericValue::Swap</span></div> +<div class="line"><a name="l02561"></a><span class="lineno"> 2561</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02562"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b"> 2562</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">Swap</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& rhs) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l02563"></a><span class="lineno"> 2563</span>  ValueType::Swap(rhs);</div> +<div class="line"><a name="l02564"></a><span class="lineno"> 2564</span>  stack_.Swap(rhs.stack_);</div> +<div class="line"><a name="l02565"></a><span class="lineno"> 2565</span>  internal::Swap(allocator_, rhs.allocator_);</div> +<div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>  internal::Swap(ownAllocator_, rhs.ownAllocator_);</div> +<div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>  internal::Swap(parseResult_, rhs.parseResult_);</div> +<div class="line"><a name="l02568"></a><span class="lineno"> 2568</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02569"></a><span class="lineno"> 2569</span>  }</div> +<div class="line"><a name="l02570"></a><span class="lineno"> 2570</span>  </div> +<div class="line"><a name="l02571"></a><span class="lineno"> 2571</span>  <span class="comment">// Allow Swap with ValueType.</span></div> +<div class="line"><a name="l02572"></a><span class="lineno"> 2572</span>  <span class="comment">// Refer to Effective C++ 3rd Edition/Item 33: Avoid hiding inherited names.</span></div> +<div class="line"><a name="l02573"></a><span class="lineno"> 2573</span>  <span class="keyword">using</span> ValueType::Swap;</div> +<div class="line"><a name="l02574"></a><span class="lineno"> 2574</span> <span class="comment"></span> </div> +<div class="line"><a name="l02575"></a><span class="lineno"> 2575</span> <span class="comment"> //! free-standing swap function helper</span></div> +<div class="line"><a name="l02576"></a><span class="lineno"> 2576</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l02577"></a><span class="lineno"> 2577</span> <span class="comment"> Helper function to enable support for common swap implementation pattern based on \c std::swap:</span></div> +<div class="line"><a name="l02578"></a><span class="lineno"> 2578</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l02579"></a><span class="lineno"> 2579</span> <span class="comment"> void swap(MyClass& a, MyClass& b) {</span></div> +<div class="line"><a name="l02580"></a><span class="lineno"> 2580</span> <span class="comment"> using std::swap;</span></div> +<div class="line"><a name="l02581"></a><span class="lineno"> 2581</span> <span class="comment"> swap(a.doc, b.doc);</span></div> +<div class="line"><a name="l02582"></a><span class="lineno"> 2582</span> <span class="comment"> // ...</span></div> +<div class="line"><a name="l02583"></a><span class="lineno"> 2583</span> <span class="comment"> }</span></div> +<div class="line"><a name="l02584"></a><span class="lineno"> 2584</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l02585"></a><span class="lineno"> 2585</span> <span class="comment"> \see Swap()</span></div> +<div class="line"><a name="l02586"></a><span class="lineno"> 2586</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02587"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d"> 2587</a></span>  <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">swap</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& a, <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& b) RAPIDJSON_NOEXCEPT { a.Swap(b); }</div> +<div class="line"><a name="l02588"></a><span class="lineno"> 2588</span> <span class="comment"></span> </div> +<div class="line"><a name="l02589"></a><span class="lineno"> 2589</span> <span class="comment"> //! Populate this document by a generator which produces SAX events.</span></div> +<div class="line"><a name="l02590"></a><span class="lineno"> 2590</span> <span class="comment"></span><span class="comment"> /*! \tparam Generator A functor with <tt>bool f(Handler)</tt> prototype.</span></div> +<div class="line"><a name="l02591"></a><span class="lineno"> 2591</span> <span class="comment"> \param g Generator functor which sends SAX events to the parameter.</span></div> +<div class="line"><a name="l02592"></a><span class="lineno"> 2592</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02593"></a><span class="lineno"> 2593</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02594"></a><span class="lineno"> 2594</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> Generator></div> +<div class="line"><a name="l02595"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64"> 2595</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">Populate</a>(Generator& g) {</div> +<div class="line"><a name="l02596"></a><span class="lineno"> 2596</span>  ClearStackOnExit scope(*<span class="keyword">this</span>);</div> +<div class="line"><a name="l02597"></a><span class="lineno"> 2597</span>  <span class="keywordflow">if</span> (g(*<span class="keyword">this</span>)) {</div> +<div class="line"><a name="l02598"></a><span class="lineno"> 2598</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(stack_.GetSize() == <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">ValueType</a>)); <span class="comment">// Got one and only one root object</span></div> +<div class="line"><a name="l02599"></a><span class="lineno"> 2599</span>  ValueType::operator=(*stack_.template Pop<ValueType>(1));<span class="comment">// Move value from stack to document</span></div> +<div class="line"><a name="l02600"></a><span class="lineno"> 2600</span>  }</div> +<div class="line"><a name="l02601"></a><span class="lineno"> 2601</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02602"></a><span class="lineno"> 2602</span>  }</div> +<div class="line"><a name="l02603"></a><span class="lineno"> 2603</span> <span class="comment"></span> </div> +<div class="line"><a name="l02604"></a><span class="lineno"> 2604</span> <span class="comment"> //!@name Parse from stream</span></div> +<div class="line"><a name="l02605"></a><span class="lineno"> 2605</span> <span class="comment"> //!@{</span></div> +<div class="line"><a name="l02606"></a><span class="lineno"> 2606</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02607"></a><span class="lineno"> 2607</span> <span class="comment"> //! Parse JSON text from an input stream (with Encoding conversion)</span></div> +<div class="line"><a name="l02608"></a><span class="lineno"> 2608</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> +<div class="line"><a name="l02609"></a><span class="lineno"> 2609</span> <span class="comment"> \tparam SourceEncoding Encoding of input stream</span></div> +<div class="line"><a name="l02610"></a><span class="lineno"> 2610</span> <span class="comment"> \tparam InputStream Type of input stream, implementing Stream concept</span></div> +<div class="line"><a name="l02611"></a><span class="lineno"> 2611</span> <span class="comment"> \param is Input stream to be parsed.</span></div> +<div class="line"><a name="l02612"></a><span class="lineno"> 2612</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02613"></a><span class="lineno"> 2613</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02614"></a><span class="lineno"> 2614</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding, <span class="keyword">typename</span> InputStream></div> +<div class="line"><a name="l02615"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85"> 2615</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">ParseStream</a>(InputStream& is) {</div> +<div class="line"><a name="l02616"></a><span class="lineno"> 2616</span>  <a class="code" href="classrapidjson_1_1_generic_reader.html">GenericReader<SourceEncoding, Encoding, StackAllocator></a> reader(</div> +<div class="line"><a name="l02617"></a><span class="lineno"> 2617</span>  stack_.HasAllocator() ? &stack_.GetAllocator() : 0);</div> +<div class="line"><a name="l02618"></a><span class="lineno"> 2618</span>  ClearStackOnExit scope(*<span class="keyword">this</span>);</div> +<div class="line"><a name="l02619"></a><span class="lineno"> 2619</span>  parseResult_ = reader.template Parse<parseFlags>(is, *<span class="keyword">this</span>);</div> +<div class="line"><a name="l02620"></a><span class="lineno"> 2620</span>  <span class="keywordflow">if</span> (parseResult_) {</div> +<div class="line"><a name="l02621"></a><span class="lineno"> 2621</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(stack_.GetSize() == <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">ValueType</a>)); <span class="comment">// Got one and only one root object</span></div> +<div class="line"><a name="l02622"></a><span class="lineno"> 2622</span>  ValueType::operator=(*stack_.template Pop<ValueType>(1));<span class="comment">// Move value from stack to document</span></div> +<div class="line"><a name="l02623"></a><span class="lineno"> 2623</span>  }</div> +<div class="line"><a name="l02624"></a><span class="lineno"> 2624</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02625"></a><span class="lineno"> 2625</span>  }</div> +<div class="line"><a name="l02626"></a><span class="lineno"> 2626</span> <span class="comment"></span> </div> +<div class="line"><a name="l02627"></a><span class="lineno"> 2627</span> <span class="comment"> //! Parse JSON text from an input stream</span></div> +<div class="line"><a name="l02628"></a><span class="lineno"> 2628</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> +<div class="line"><a name="l02629"></a><span class="lineno"> 2629</span> <span class="comment"> \tparam InputStream Type of input stream, implementing Stream concept</span></div> +<div class="line"><a name="l02630"></a><span class="lineno"> 2630</span> <span class="comment"> \param is Input stream to be parsed.</span></div> +<div class="line"><a name="l02631"></a><span class="lineno"> 2631</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02632"></a><span class="lineno"> 2632</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02633"></a><span class="lineno"> 2633</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> InputStream></div> +<div class="line"><a name="l02634"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a"> 2634</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">ParseStream</a>(InputStream& is) {</div> +<div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>  <span class="keywordflow">return</span> ParseStream<parseFlags, Encoding, InputStream>(is);</div> +<div class="line"><a name="l02636"></a><span class="lineno"> 2636</span>  }</div> +<div class="line"><a name="l02637"></a><span class="lineno"> 2637</span> <span class="comment"></span> </div> +<div class="line"><a name="l02638"></a><span class="lineno"> 2638</span> <span class="comment"> //! Parse JSON text from an input stream (with \ref kParseDefaultFlags)</span></div> +<div class="line"><a name="l02639"></a><span class="lineno"> 2639</span> <span class="comment"></span><span class="comment"> /*! \tparam InputStream Type of input stream, implementing Stream concept</span></div> +<div class="line"><a name="l02640"></a><span class="lineno"> 2640</span> <span class="comment"> \param is Input stream to be parsed.</span></div> +<div class="line"><a name="l02641"></a><span class="lineno"> 2641</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02642"></a><span class="lineno"> 2642</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02643"></a><span class="lineno"> 2643</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> InputStream></div> +<div class="line"><a name="l02644"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414"> 2644</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">ParseStream</a>(InputStream& is) {</div> +<div class="line"><a name="l02645"></a><span class="lineno"> 2645</span>  <span class="keywordflow">return</span> ParseStream<kParseDefaultFlags, Encoding, InputStream>(is);</div> +<div class="line"><a name="l02646"></a><span class="lineno"> 2646</span>  }<span class="comment"></span></div> +<div class="line"><a name="l02647"></a><span class="lineno"> 2647</span> <span class="comment"> //!@}</span></div> +<div class="line"><a name="l02648"></a><span class="lineno"> 2648</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02649"></a><span class="lineno"> 2649</span> <span class="comment"> //!@name Parse in-place from mutable string</span></div> +<div class="line"><a name="l02650"></a><span class="lineno"> 2650</span> <span class="comment"> //!@{</span></div> +<div class="line"><a name="l02651"></a><span class="lineno"> 2651</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02652"></a><span class="lineno"> 2652</span> <span class="comment"> //! Parse JSON text from a mutable string</span></div> +<div class="line"><a name="l02653"></a><span class="lineno"> 2653</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> +<div class="line"><a name="l02654"></a><span class="lineno"> 2654</span> <span class="comment"> \param str Mutable zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02655"></a><span class="lineno"> 2655</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02656"></a><span class="lineno"> 2656</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02657"></a><span class="lineno"> 2657</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> +<div class="line"><a name="l02658"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f"> 2658</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">ParseInsitu</a>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> +<div class="line"><a name="l02659"></a><span class="lineno"> 2659</span>  <a class="code" href="structrapidjson_1_1_generic_insitu_string_stream.html">GenericInsituStringStream<Encoding></a> s(str);</div> +<div class="line"><a name="l02660"></a><span class="lineno"> 2660</span>  <span class="keywordflow">return</span> ParseStream<parseFlags | kParseInsituFlag>(s);</div> +<div class="line"><a name="l02661"></a><span class="lineno"> 2661</span>  }</div> +<div class="line"><a name="l02662"></a><span class="lineno"> 2662</span> <span class="comment"></span> </div> +<div class="line"><a name="l02663"></a><span class="lineno"> 2663</span> <span class="comment"> //! Parse JSON text from a mutable string (with \ref kParseDefaultFlags)</span></div> +<div class="line"><a name="l02664"></a><span class="lineno"> 2664</span> <span class="comment"></span><span class="comment"> /*! \param str Mutable zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02665"></a><span class="lineno"> 2665</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02666"></a><span class="lineno"> 2666</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02667"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367"> 2667</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">ParseInsitu</a>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> +<div class="line"><a name="l02668"></a><span class="lineno"> 2668</span>  <span class="keywordflow">return</span> ParseInsitu<kParseDefaultFlags>(str);</div> +<div class="line"><a name="l02669"></a><span class="lineno"> 2669</span>  }<span class="comment"></span></div> +<div class="line"><a name="l02670"></a><span class="lineno"> 2670</span> <span class="comment"> //!@}</span></div> +<div class="line"><a name="l02671"></a><span class="lineno"> 2671</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02672"></a><span class="lineno"> 2672</span> <span class="comment"> //!@name Parse from read-only string</span></div> +<div class="line"><a name="l02673"></a><span class="lineno"> 2673</span> <span class="comment"> //!@{</span></div> +<div class="line"><a name="l02674"></a><span class="lineno"> 2674</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02675"></a><span class="lineno"> 2675</span> <span class="comment"> //! Parse JSON text from a read-only string (with Encoding conversion)</span></div> +<div class="line"><a name="l02676"></a><span class="lineno"> 2676</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag (must not contain \ref kParseInsituFlag).</span></div> +<div class="line"><a name="l02677"></a><span class="lineno"> 2677</span> <span class="comment"> \tparam SourceEncoding Transcoding from input Encoding</span></div> +<div class="line"><a name="l02678"></a><span class="lineno"> 2678</span> <span class="comment"> \param str Read-only zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02679"></a><span class="lineno"> 2679</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02680"></a><span class="lineno"> 2680</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> +<div class="line"><a name="l02681"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c"> 2681</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">Parse</a>(<span class="keyword">const</span> <span class="keyword">typename</span> SourceEncoding::Ch* str) {</div> +<div class="line"><a name="l02682"></a><span class="lineno"> 2682</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!(parseFlags & <a class="code" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">kParseInsituFlag</a>));</div> +<div class="line"><a name="l02683"></a><span class="lineno"> 2683</span>  <a class="code" href="structrapidjson_1_1_generic_string_stream.html">GenericStringStream<SourceEncoding></a> s(str);</div> +<div class="line"><a name="l02684"></a><span class="lineno"> 2684</span>  <span class="keywordflow">return</span> ParseStream<parseFlags, SourceEncoding>(s);</div> +<div class="line"><a name="l02685"></a><span class="lineno"> 2685</span>  }</div> +<div class="line"><a name="l02686"></a><span class="lineno"> 2686</span> <span class="comment"></span> </div> +<div class="line"><a name="l02687"></a><span class="lineno"> 2687</span> <span class="comment"> //! Parse JSON text from a read-only string</span></div> +<div class="line"><a name="l02688"></a><span class="lineno"> 2688</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag (must not contain \ref kParseInsituFlag).</span></div> +<div class="line"><a name="l02689"></a><span class="lineno"> 2689</span> <span class="comment"> \param str Read-only zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02690"></a><span class="lineno"> 2690</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02691"></a><span class="lineno"> 2691</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> +<div class="line"><a name="l02692"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8"> 2692</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">Parse</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> +<div class="line"><a name="l02693"></a><span class="lineno"> 2693</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str);</div> +<div class="line"><a name="l02694"></a><span class="lineno"> 2694</span>  }</div> +<div class="line"><a name="l02695"></a><span class="lineno"> 2695</span> <span class="comment"></span> </div> +<div class="line"><a name="l02696"></a><span class="lineno"> 2696</span> <span class="comment"> //! Parse JSON text from a read-only string (with \ref kParseDefaultFlags)</span></div> +<div class="line"><a name="l02697"></a><span class="lineno"> 2697</span> <span class="comment"></span><span class="comment"> /*! \param str Read-only zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02698"></a><span class="lineno"> 2698</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02699"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de"> 2699</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">Parse</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> +<div class="line"><a name="l02700"></a><span class="lineno"> 2700</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str);</div> +<div class="line"><a name="l02701"></a><span class="lineno"> 2701</span>  }</div> +<div class="line"><a name="l02702"></a><span class="lineno"> 2702</span>  </div> +<div class="line"><a name="l02703"></a><span class="lineno"> 2703</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> +<div class="line"><a name="l02704"></a><span class="lineno"> 2704</span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& Parse(<span class="keyword">const</span> <span class="keyword">typename</span> SourceEncoding::Ch* str, <span class="keywordtype">size_t</span> length) {</div> +<div class="line"><a name="l02705"></a><span class="lineno"> 2705</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!(parseFlags & <a class="code" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">kParseInsituFlag</a>));</div> +<div class="line"><a name="l02706"></a><span class="lineno"> 2706</span>  <a class="code" href="structrapidjson_1_1_memory_stream.html">MemoryStream</a> ms(reinterpret_cast<const char*>(str), length * <span class="keyword">sizeof</span>(<span class="keyword">typename</span> SourceEncoding::Ch));</div> +<div class="line"><a name="l02707"></a><span class="lineno"> 2707</span>  <a class="code" href="classrapidjson_1_1_encoded_input_stream.html">EncodedInputStream<SourceEncoding, MemoryStream></a> is(ms);</div> +<div class="line"><a name="l02708"></a><span class="lineno"> 2708</span>  ParseStream<parseFlags, SourceEncoding>(is);</div> +<div class="line"><a name="l02709"></a><span class="lineno"> 2709</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02710"></a><span class="lineno"> 2710</span>  }</div> +<div class="line"><a name="l02711"></a><span class="lineno"> 2711</span>  </div> +<div class="line"><a name="l02712"></a><span class="lineno"> 2712</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> +<div class="line"><a name="l02713"></a><span class="lineno"> 2713</span>  GenericDocument& Parse(<span class="keyword">const</span> Ch* str, <span class="keywordtype">size_t</span> length) {</div> +<div class="line"><a name="l02714"></a><span class="lineno"> 2714</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str, length);</div> +<div class="line"><a name="l02715"></a><span class="lineno"> 2715</span>  }</div> +<div class="line"><a name="l02716"></a><span class="lineno"> 2716</span>  </div> +<div class="line"><a name="l02717"></a><span class="lineno"> 2717</span>  GenericDocument& Parse(<span class="keyword">const</span> Ch* str, <span class="keywordtype">size_t</span> length) {</div> +<div class="line"><a name="l02718"></a><span class="lineno"> 2718</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str, length);</div> +<div class="line"><a name="l02719"></a><span class="lineno"> 2719</span>  }</div> +<div class="line"><a name="l02720"></a><span class="lineno"> 2720</span>  </div> +<div class="line"><a name="l02721"></a><span class="lineno"> 2721</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02722"></a><span class="lineno"> 2722</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> +<div class="line"><a name="l02723"></a><span class="lineno"> 2723</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<typename SourceEncoding::Ch>& str) {</div> +<div class="line"><a name="l02724"></a><span class="lineno"> 2724</span>  <span class="comment">// c_str() is constant complexity according to standard. Should be faster than Parse(const char*, size_t)</span></div> +<div class="line"><a name="l02725"></a><span class="lineno"> 2725</span>  <span class="keywordflow">return</span> Parse<parseFlags, SourceEncoding>(str.c_str());</div> +<div class="line"><a name="l02726"></a><span class="lineno"> 2726</span>  }</div> +<div class="line"><a name="l02727"></a><span class="lineno"> 2727</span>  </div> +<div class="line"><a name="l02728"></a><span class="lineno"> 2728</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> +<div class="line"><a name="l02729"></a><span class="lineno"> 2729</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<Ch>& str) {</div> +<div class="line"><a name="l02730"></a><span class="lineno"> 2730</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str.c_str());</div> +<div class="line"><a name="l02731"></a><span class="lineno"> 2731</span>  }</div> +<div class="line"><a name="l02732"></a><span class="lineno"> 2732</span>  </div> +<div class="line"><a name="l02733"></a><span class="lineno"> 2733</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<Ch>& str) {</div> +<div class="line"><a name="l02734"></a><span class="lineno"> 2734</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str);</div> +<div class="line"><a name="l02735"></a><span class="lineno"> 2735</span>  }</div> +<div class="line"><a name="l02736"></a><span class="lineno"> 2736</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_STDSTRING </span></div> +<div class="line"><a name="l02737"></a><span class="lineno"> 2737</span> <span class="comment"></span> </div> +<div class="line"><a name="l02738"></a><span class="lineno"> 2738</span> <span class="comment"> //!@}</span></div> +<div class="line"><a name="l02739"></a><span class="lineno"> 2739</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02740"></a><span class="lineno"> 2740</span> <span class="comment"> //!@name Handling parse errors</span></div> +<div class="line"><a name="l02741"></a><span class="lineno"> 2741</span> <span class="comment"> //!@{</span></div> +<div class="line"><a name="l02742"></a><span class="lineno"> 2742</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02743"></a><span class="lineno"> 2743</span> <span class="comment"> //! Whether a parse error has occurred in the last parsing.</span></div> +<div class="line"><a name="l02744"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e"> 2744</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">HasParseError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.IsError(); }</div> +<div class="line"><a name="l02745"></a><span class="lineno"> 2745</span> <span class="comment"></span> </div> +<div class="line"><a name="l02746"></a><span class="lineno"> 2746</span> <span class="comment"> //! Get the \ref ParseErrorCode of last parsing.</span></div> +<div class="line"><a name="l02747"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b"> 2747</a></span> <span class="comment"></span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">ParseErrorCode</a> <a class="code" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">GetParseError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.Code(); }</div> +<div class="line"><a name="l02748"></a><span class="lineno"> 2748</span> <span class="comment"></span> </div> +<div class="line"><a name="l02749"></a><span class="lineno"> 2749</span> <span class="comment"> //! Get the position of last parsing error in input, 0 otherwise.</span></div> +<div class="line"><a name="l02750"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f"> 2750</a></span> <span class="comment"></span> <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">GetErrorOffset</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.Offset(); }</div> +<div class="line"><a name="l02751"></a><span class="lineno"> 2751</span> <span class="comment"></span> </div> +<div class="line"><a name="l02752"></a><span class="lineno"> 2752</span> <span class="comment"> //! Implicit conversion to get the last parse result</span></div> +<div class="line"><a name="l02753"></a><span class="lineno"> 2753</span> <span class="comment"></span><span class="preprocessor">#ifndef __clang // -Wdocumentation</span></div> +<div class="line"><a name="l02754"></a><span class="lineno"> 2754</span> <span class="comment"> /*! \return \ref ParseResult of the last parse operation</span></div> +<div class="line"><a name="l02755"></a><span class="lineno"> 2755</span> <span class="comment"></span> </div> +<div class="line"><a name="l02756"></a><span class="lineno"> 2756</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l02757"></a><span class="lineno"> 2757</span> <span class="comment"> Document doc;</span></div> +<div class="line"><a name="l02758"></a><span class="lineno"> 2758</span> <span class="comment"> ParseResult ok = doc.Parse(json);</span></div> +<div class="line"><a name="l02759"></a><span class="lineno"> 2759</span> <span class="comment"> if (!ok)</span></div> +<div class="line"><a name="l02760"></a><span class="lineno"> 2760</span> <span class="comment"> printf( "JSON parse error: %s (%u)\n", GetParseError_En(ok.Code()), ok.Offset());</span></div> +<div class="line"><a name="l02761"></a><span class="lineno"> 2761</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l02762"></a><span class="lineno"> 2762</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02763"></a><span class="lineno"> 2763</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02764"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974"> 2764</a></span>  <span class="keyword">operator</span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">ParseResult</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_; }<span class="comment"></span></div> +<div class="line"><a name="l02765"></a><span class="lineno"> 2765</span> <span class="comment"> //!@}</span></div> +<div class="line"><a name="l02766"></a><span class="lineno"> 2766</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02767"></a><span class="lineno"> 2767</span> <span class="comment"> //! Get the allocator of this document.</span></div> +<div class="line"><a name="l02768"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f"> 2768</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">GetAllocator</a>() {</div> +<div class="line"><a name="l02769"></a><span class="lineno"> 2769</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(allocator_);</div> +<div class="line"><a name="l02770"></a><span class="lineno"> 2770</span>  <span class="keywordflow">return</span> *allocator_;</div> +<div class="line"><a name="l02771"></a><span class="lineno"> 2771</span>  }</div> +<div class="line"><a name="l02772"></a><span class="lineno"> 2772</span> <span class="comment"></span> </div> +<div class="line"><a name="l02773"></a><span class="lineno"> 2773</span> <span class="comment"> //! Get the capacity of stack in bytes.</span></div> +<div class="line"><a name="l02774"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b"> 2774</a></span> <span class="comment"></span> <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">GetStackCapacity</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> stack_.GetCapacity(); }</div> +<div class="line"><a name="l02775"></a><span class="lineno"> 2775</span>  </div> +<div class="line"><a name="l02776"></a><span class="lineno"> 2776</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l02777"></a><span class="lineno"> 2777</span>  <span class="comment">// clear stack on any exit from ParseStream, e.g. due to exception</span></div> +<div class="line"><a name="l02778"></a><span class="lineno"> 2778</span>  <span class="keyword">struct </span>ClearStackOnExit {</div> +<div class="line"><a name="l02779"></a><span class="lineno"> 2779</span>  <span class="keyword">explicit</span> ClearStackOnExit(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& d) : d_(d) {}</div> +<div class="line"><a name="l02780"></a><span class="lineno"> 2780</span>  ~ClearStackOnExit() { d_.ClearStack(); }</div> +<div class="line"><a name="l02781"></a><span class="lineno"> 2781</span>  <span class="keyword">private</span>:</div> +<div class="line"><a name="l02782"></a><span class="lineno"> 2782</span>  ClearStackOnExit(<span class="keyword">const</span> ClearStackOnExit&);</div> +<div class="line"><a name="l02783"></a><span class="lineno"> 2783</span>  ClearStackOnExit& operator=(<span class="keyword">const</span> ClearStackOnExit&);</div> +<div class="line"><a name="l02784"></a><span class="lineno"> 2784</span>  GenericDocument& d_;</div> +<div class="line"><a name="l02785"></a><span class="lineno"> 2785</span>  };</div> +<div class="line"><a name="l02786"></a><span class="lineno"> 2786</span>  </div> +<div class="line"><a name="l02787"></a><span class="lineno"> 2787</span>  <span class="comment">// callers of the following private Handler functions</span></div> +<div class="line"><a name="l02788"></a><span class="lineno"> 2788</span>  <span class="comment">// template <typename,typename,typename> friend class GenericReader; // for parsing</span></div> +<div class="line"><a name="l02789"></a><span class="lineno"> 2789</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue; <span class="comment">// for deep copying</span></div> +<div class="line"><a name="l02790"></a><span class="lineno"> 2790</span>  </div> +<div class="line"><a name="l02791"></a><span class="lineno"> 2791</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l02792"></a><span class="lineno"> 2792</span>  <span class="comment">// Implementation of Handler</span></div> +<div class="line"><a name="l02793"></a><span class="lineno"> 2793</span>  <span class="keywordtype">bool</span> Null() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02794"></a><span class="lineno"> 2794</span>  <span class="keywordtype">bool</span> Bool(<span class="keywordtype">bool</span> b) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(b); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02795"></a><span class="lineno"> 2795</span>  <span class="keywordtype">bool</span> Int(<span class="keywordtype">int</span> i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02796"></a><span class="lineno"> 2796</span>  <span class="keywordtype">bool</span> Uint(<span class="keywordtype">unsigned</span> i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02797"></a><span class="lineno"> 2797</span>  <span class="keywordtype">bool</span> Int64(int64_t i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02798"></a><span class="lineno"> 2798</span>  <span class="keywordtype">bool</span> Uint64(uint64_t i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02799"></a><span class="lineno"> 2799</span>  <span class="keywordtype">bool</span> Double(<span class="keywordtype">double</span> d) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(d); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02800"></a><span class="lineno"> 2800</span>  </div> +<div class="line"><a name="l02801"></a><span class="lineno"> 2801</span>  <span class="keywordtype">bool</span> RawNumber(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { </div> +<div class="line"><a name="l02802"></a><span class="lineno"> 2802</span>  <span class="keywordflow">if</span> (copy) </div> +<div class="line"><a name="l02803"></a><span class="lineno"> 2803</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length, GetAllocator());</div> +<div class="line"><a name="l02804"></a><span class="lineno"> 2804</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02805"></a><span class="lineno"> 2805</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length);</div> +<div class="line"><a name="l02806"></a><span class="lineno"> 2806</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l02807"></a><span class="lineno"> 2807</span>  }</div> +<div class="line"><a name="l02808"></a><span class="lineno"> 2808</span>  </div> +<div class="line"><a name="l02809"></a><span class="lineno"> 2809</span>  <span class="keywordtype">bool</span> String(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { </div> +<div class="line"><a name="l02810"></a><span class="lineno"> 2810</span>  <span class="keywordflow">if</span> (copy) </div> +<div class="line"><a name="l02811"></a><span class="lineno"> 2811</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length, GetAllocator());</div> +<div class="line"><a name="l02812"></a><span class="lineno"> 2812</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02813"></a><span class="lineno"> 2813</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length);</div> +<div class="line"><a name="l02814"></a><span class="lineno"> 2814</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l02815"></a><span class="lineno"> 2815</span>  }</div> +<div class="line"><a name="l02816"></a><span class="lineno"> 2816</span>  </div> +<div class="line"><a name="l02817"></a><span class="lineno"> 2817</span>  <span class="keywordtype">bool</span> StartObject() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02818"></a><span class="lineno"> 2818</span>  </div> +<div class="line"><a name="l02819"></a><span class="lineno"> 2819</span>  <span class="keywordtype">bool</span> Key(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { <span class="keywordflow">return</span> String(str, length, copy); }</div> +<div class="line"><a name="l02820"></a><span class="lineno"> 2820</span>  </div> +<div class="line"><a name="l02821"></a><span class="lineno"> 2821</span>  <span class="keywordtype">bool</span> EndObject(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> memberCount) {</div> +<div class="line"><a name="l02822"></a><span class="lineno"> 2822</span>  <span class="keyword">typename</span> ValueType::Member* members = stack_.template Pop<typename ValueType::Member>(memberCount);</div> +<div class="line"><a name="l02823"></a><span class="lineno"> 2823</span>  stack_.template Top<ValueType>()->SetObjectRaw(members, memberCount, GetAllocator());</div> +<div class="line"><a name="l02824"></a><span class="lineno"> 2824</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l02825"></a><span class="lineno"> 2825</span>  }</div> +<div class="line"><a name="l02826"></a><span class="lineno"> 2826</span>  </div> +<div class="line"><a name="l02827"></a><span class="lineno"> 2827</span>  <span class="keywordtype">bool</span> StartArray() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02828"></a><span class="lineno"> 2828</span>  </div> +<div class="line"><a name="l02829"></a><span class="lineno"> 2829</span>  <span class="keywordtype">bool</span> EndArray(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> elementCount) {</div> +<div class="line"><a name="l02830"></a><span class="lineno"> 2830</span>  ValueType* elements = stack_.template Pop<ValueType>(elementCount);</div> +<div class="line"><a name="l02831"></a><span class="lineno"> 2831</span>  stack_.template Top<ValueType>()->SetArrayRaw(elements, elementCount, GetAllocator());</div> +<div class="line"><a name="l02832"></a><span class="lineno"> 2832</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l02833"></a><span class="lineno"> 2833</span>  }</div> +<div class="line"><a name="l02834"></a><span class="lineno"> 2834</span>  </div> +<div class="line"><a name="l02835"></a><span class="lineno"> 2835</span> <span class="keyword">private</span>:<span class="comment"></span></div> +<div class="line"><a name="l02836"></a><span class="lineno"> 2836</span> <span class="comment"> //! Prohibit copying</span></div> +<div class="line"><a name="l02837"></a><span class="lineno"> 2837</span> <span class="comment"></span> GenericDocument(<span class="keyword">const</span> GenericDocument&);<span class="comment"></span></div> +<div class="line"><a name="l02838"></a><span class="lineno"> 2838</span> <span class="comment"> //! Prohibit assignment</span></div> +<div class="line"><a name="l02839"></a><span class="lineno"> 2839</span> <span class="comment"></span> GenericDocument& operator=(<span class="keyword">const</span> GenericDocument&);</div> +<div class="line"><a name="l02840"></a><span class="lineno"> 2840</span>  </div> +<div class="line"><a name="l02841"></a><span class="lineno"> 2841</span>  <span class="keywordtype">void</span> ClearStack() {</div> +<div class="line"><a name="l02842"></a><span class="lineno"> 2842</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree)</div> +<div class="line"><a name="l02843"></a><span class="lineno"> 2843</span>  <span class="keywordflow">while</span> (stack_.GetSize() > 0) <span class="comment">// Here assumes all elements in stack array are GenericValue (Member is actually 2 GenericValue objects)</span></div> +<div class="line"><a name="l02844"></a><span class="lineno"> 2844</span>  (stack_.template Pop<ValueType>(1))->~ValueType();</div> +<div class="line"><a name="l02845"></a><span class="lineno"> 2845</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02846"></a><span class="lineno"> 2846</span>  stack_.Clear();</div> +<div class="line"><a name="l02847"></a><span class="lineno"> 2847</span>  stack_.ShrinkToFit();</div> +<div class="line"><a name="l02848"></a><span class="lineno"> 2848</span>  }</div> +<div class="line"><a name="l02849"></a><span class="lineno"> 2849</span>  </div> +<div class="line"><a name="l02850"></a><span class="lineno"> 2850</span>  <span class="keywordtype">void</span> Destroy() {</div> +<div class="line"><a name="l02851"></a><span class="lineno"> 2851</span>  <a class="code" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a>(ownAllocator_);</div> +<div class="line"><a name="l02852"></a><span class="lineno"> 2852</span>  }</div> +<div class="line"><a name="l02853"></a><span class="lineno"> 2853</span>  </div> +<div class="line"><a name="l02854"></a><span class="lineno"> 2854</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> kDefaultStackCapacity = 1024;</div> +<div class="line"><a name="l02855"></a><span class="lineno"> 2855</span>  <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator_;</div> +<div class="line"><a name="l02856"></a><span class="lineno"> 2856</span>  <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* ownAllocator_;</div> +<div class="line"><a name="l02857"></a><span class="lineno"> 2857</span>  internal::Stack<StackAllocator> stack_;</div> +<div class="line"><a name="l02858"></a><span class="lineno"> 2858</span>  ParseResult parseResult_;</div> +<div class="line"><a name="l02859"></a><span class="lineno"> 2859</span> };</div> +<div class="line"><a name="l02860"></a><span class="lineno"> 2860</span> <span class="comment"></span> </div> +<div class="line"><a name="l02861"></a><span class="lineno"> 2861</span> <span class="comment">//! GenericDocument with UTF8 encoding</span></div> +<div class="line"><a name="l02862"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8"> 2862</a></span> <span class="comment"></span><span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument<UTF8<></a> > <a class="code" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">Document</a>;</div> +<div class="line"><a name="l02863"></a><span class="lineno"> 2863</span>  </div> +<div class="line"><a name="l02864"></a><span class="lineno"> 2864</span> <span class="comment"></span> </div> +<div class="line"><a name="l02865"></a><span class="lineno"> 2865</span> <span class="comment">//! Helper class for accessing Value of array type.</span></div> +<div class="line"><a name="l02866"></a><span class="lineno"> 2866</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l02867"></a><span class="lineno"> 2867</span> <span class="comment"> Instance of this helper class is obtained by \c GenericValue::GetArray().</span></div> +<div class="line"><a name="l02868"></a><span class="lineno"> 2868</span> <span class="comment"> In addition to all APIs for array type, it provides range-based for loop if \c RAPIDJSON_HAS_CXX11_RANGE_FOR=1.</span></div> +<div class="line"><a name="l02869"></a><span class="lineno"> 2869</span> <span class="comment">*/</span></div> +<div class="line"><a name="l02870"></a><span class="lineno"> 2870</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> Const, <span class="keyword">typename</span> ValueT></div> +<div class="line"><a name="l02871"></a><span class="lineno"> 2871</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> {</div> +<div class="line"><a name="l02872"></a><span class="lineno"> 2872</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l02873"></a><span class="lineno"> 2873</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray<true, ValueT></a> ConstArray;</div> +<div class="line"><a name="l02874"></a><span class="lineno"> 2874</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray<false, ValueT></a> Array;</div> +<div class="line"><a name="l02875"></a><span class="lineno"> 2875</span>  <span class="keyword">typedef</span> ValueT PlainType;</div> +<div class="line"><a name="l02876"></a><span class="lineno"> 2876</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::MaybeAddConst<Const,PlainType>::Type</a> ValueType;</div> +<div class="line"><a name="l02877"></a><span class="lineno"> 2877</span>  <span class="keyword">typedef</span> ValueType* ValueIterator; <span class="comment">// This may be const or non-const iterator</span></div> +<div class="line"><a name="l02878"></a><span class="lineno"> 2878</span>  <span class="keyword">typedef</span> <span class="keyword">const</span> ValueT* ConstValueIterator;</div> +<div class="line"><a name="l02879"></a><span class="lineno"> 2879</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::AllocatorType AllocatorType;</div> +<div class="line"><a name="l02880"></a><span class="lineno"> 2880</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::StringRefType StringRefType;</div> +<div class="line"><a name="l02881"></a><span class="lineno"> 2881</span>  </div> +<div class="line"><a name="l02882"></a><span class="lineno"> 2882</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> +<div class="line"><a name="l02883"></a><span class="lineno"> 2883</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>;</div> +<div class="line"><a name="l02884"></a><span class="lineno"> 2884</span>  </div> +<div class="line"><a name="l02885"></a><span class="lineno"> 2885</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& rhs) : value_(rhs.value_) {}</div> +<div class="line"><a name="l02886"></a><span class="lineno"> 2886</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& operator=(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& rhs) { value_ = rhs.value_; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02887"></a><span class="lineno"> 2887</span>  ~<a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>() {}</div> +<div class="line"><a name="l02888"></a><span class="lineno"> 2888</span>  </div> +<div class="line"><a name="l02889"></a><span class="lineno"> 2889</span>  <span class="keyword">operator</span> ValueType&() <span class="keyword">const</span> { <span class="keywordflow">return</span> value_; }</div> +<div class="line"><a name="l02890"></a><span class="lineno"> 2890</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Size()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Size(); }</div> +<div class="line"><a name="l02891"></a><span class="lineno"> 2891</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Capacity()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Capacity(); }</div> +<div class="line"><a name="l02892"></a><span class="lineno"> 2892</span>  <span class="keywordtype">bool</span> Empty()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Empty(); }</div> +<div class="line"><a name="l02893"></a><span class="lineno"> 2893</span>  <span class="keywordtype">void</span> Clear()<span class="keyword"> const </span>{ value_.Clear(); }</div> +<div class="line"><a name="l02894"></a><span class="lineno"> 2894</span>  ValueType& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[index]; }</div> +<div class="line"><a name="l02895"></a><span class="lineno"> 2895</span>  ValueIterator Begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Begin(); }</div> +<div class="line"><a name="l02896"></a><span class="lineno"> 2896</span>  ValueIterator End()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.End(); }</div> +<div class="line"><a name="l02897"></a><span class="lineno"> 2897</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> Reserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, AllocatorType &allocator)<span class="keyword"> const </span>{ value_.Reserve(newCapacity, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02898"></a><span class="lineno"> 2898</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02899"></a><span class="lineno"> 2899</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02900"></a><span class="lineno"> 2900</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02901"></a><span class="lineno"> 2901</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02902"></a><span class="lineno"> 2902</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02903"></a><span class="lineno"> 2903</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>&)) PushBack(T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02904"></a><span class="lineno"> 2904</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PopBack()<span class="keyword"> const </span>{ value_.PopBack(); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02905"></a><span class="lineno"> 2905</span>  ValueIterator Erase(ConstValueIterator pos)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Erase(pos); }</div> +<div class="line"><a name="l02906"></a><span class="lineno"> 2906</span>  ValueIterator Erase(ConstValueIterator first, ConstValueIterator last)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Erase(first, last); }</div> +<div class="line"><a name="l02907"></a><span class="lineno"> 2907</span>  </div> +<div class="line"><a name="l02908"></a><span class="lineno"> 2908</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> +<div class="line"><a name="l02909"></a><span class="lineno"> 2909</span>  ValueIterator begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Begin(); }</div> +<div class="line"><a name="l02910"></a><span class="lineno"> 2910</span>  ValueIterator end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.End(); }</div> +<div class="line"><a name="l02911"></a><span class="lineno"> 2911</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02912"></a><span class="lineno"> 2912</span>  </div> +<div class="line"><a name="l02913"></a><span class="lineno"> 2913</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l02914"></a><span class="lineno"> 2914</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>();</div> +<div class="line"><a name="l02915"></a><span class="lineno"> 2915</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>(ValueType& value) : value_(value) {}</div> +<div class="line"><a name="l02916"></a><span class="lineno"> 2916</span>  ValueType& value_;</div> +<div class="line"><a name="l02917"></a><span class="lineno"> 2917</span> };</div> +<div class="line"><a name="l02918"></a><span class="lineno"> 2918</span> <span class="comment"></span> </div> +<div class="line"><a name="l02919"></a><span class="lineno"> 2919</span> <span class="comment">//! Helper class for accessing Value of object type.</span></div> +<div class="line"><a name="l02920"></a><span class="lineno"> 2920</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l02921"></a><span class="lineno"> 2921</span> <span class="comment"> Instance of this helper class is obtained by \c GenericValue::GetObject().</span></div> +<div class="line"><a name="l02922"></a><span class="lineno"> 2922</span> <span class="comment"> In addition to all APIs for array type, it provides range-based for loop if \c RAPIDJSON_HAS_CXX11_RANGE_FOR=1.</span></div> +<div class="line"><a name="l02923"></a><span class="lineno"> 2923</span> <span class="comment">*/</span></div> +<div class="line"><a name="l02924"></a><span class="lineno"> 2924</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> Const, <span class="keyword">typename</span> ValueT></div> +<div class="line"><a name="l02925"></a><span class="lineno"> 2925</span> <span class="keyword">class </span>GenericObject {</div> +<div class="line"><a name="l02926"></a><span class="lineno"> 2926</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l02927"></a><span class="lineno"> 2927</span>  <span class="keyword">typedef</span> GenericObject<true, ValueT> ConstObject;</div> +<div class="line"><a name="l02928"></a><span class="lineno"> 2928</span>  <span class="keyword">typedef</span> GenericObject<false, ValueT> Object;</div> +<div class="line"><a name="l02929"></a><span class="lineno"> 2929</span>  <span class="keyword">typedef</span> ValueT PlainType;</div> +<div class="line"><a name="l02930"></a><span class="lineno"> 2930</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::MaybeAddConst<Const,PlainType>::Type</a> ValueType;</div> +<div class="line"><a name="l02931"></a><span class="lineno"> 2931</span>  <span class="keyword">typedef</span> GenericMemberIterator<Const, typename ValueT::EncodingType, typename ValueT::AllocatorType> MemberIterator; <span class="comment">// This may be const or non-const iterator</span></div> +<div class="line"><a name="l02932"></a><span class="lineno"> 2932</span>  <span class="keyword">typedef</span> GenericMemberIterator<true, typename ValueT::EncodingType, typename ValueT::AllocatorType> ConstMemberIterator;</div> +<div class="line"><a name="l02933"></a><span class="lineno"> 2933</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::AllocatorType AllocatorType;</div> +<div class="line"><a name="l02934"></a><span class="lineno"> 2934</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::StringRefType StringRefType;</div> +<div class="line"><a name="l02935"></a><span class="lineno"> 2935</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::EncodingType EncodingType;</div> +<div class="line"><a name="l02936"></a><span class="lineno"> 2936</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::Ch Ch;</div> +<div class="line"><a name="l02937"></a><span class="lineno"> 2937</span>  </div> +<div class="line"><a name="l02938"></a><span class="lineno"> 2938</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> +<div class="line"><a name="l02939"></a><span class="lineno"> 2939</span>  <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue;</div> +<div class="line"><a name="l02940"></a><span class="lineno"> 2940</span>  </div> +<div class="line"><a name="l02941"></a><span class="lineno"> 2941</span>  GenericObject(<span class="keyword">const</span> GenericObject& rhs) : value_(rhs.value_) {}</div> +<div class="line"><a name="l02942"></a><span class="lineno"> 2942</span>  GenericObject& operator=(<span class="keyword">const</span> GenericObject& rhs) { value_ = rhs.value_; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02943"></a><span class="lineno"> 2943</span>  ~GenericObject() {}</div> +<div class="line"><a name="l02944"></a><span class="lineno"> 2944</span>  </div> +<div class="line"><a name="l02945"></a><span class="lineno"> 2945</span>  <span class="keyword">operator</span> ValueType&() <span class="keyword">const</span> { <span class="keywordflow">return</span> value_; }</div> +<div class="line"><a name="l02946"></a><span class="lineno"> 2946</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberCount(); }</div> +<div class="line"><a name="l02947"></a><span class="lineno"> 2947</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCapacity()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberCapacity(); }</div> +<div class="line"><a name="l02948"></a><span class="lineno"> 2948</span>  <span class="keywordtype">bool</span> ObjectEmpty()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.ObjectEmpty(); }</div> +<div class="line"><a name="l02949"></a><span class="lineno"> 2949</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> ValueType& operator[](T* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> +<div class="line"><a name="l02950"></a><span class="lineno"> 2950</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> ValueType& operator[](<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> +<div class="line"><a name="l02951"></a><span class="lineno"> 2951</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02952"></a><span class="lineno"> 2952</span>  ValueType& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> +<div class="line"><a name="l02953"></a><span class="lineno"> 2953</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02954"></a><span class="lineno"> 2954</span>  MemberIterator MemberBegin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberBegin(); }</div> +<div class="line"><a name="l02955"></a><span class="lineno"> 2955</span>  MemberIterator MemberEnd()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberEnd(); }</div> +<div class="line"><a name="l02956"></a><span class="lineno"> 2956</span>  GenericObject MemberReserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, AllocatorType &allocator)<span class="keyword"> const </span>{ value_.MemberReserve(newCapacity, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02957"></a><span class="lineno"> 2957</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> +<div class="line"><a name="l02958"></a><span class="lineno"> 2958</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02959"></a><span class="lineno"> 2959</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> +<div class="line"><a name="l02960"></a><span class="lineno"> 2960</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02961"></a><span class="lineno"> 2961</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> +<div class="line"><a name="l02962"></a><span class="lineno"> 2962</span>  MemberIterator FindMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> +<div class="line"><a name="l02963"></a><span class="lineno"> 2963</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> MemberIterator FindMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> +<div class="line"><a name="l02964"></a><span class="lineno"> 2964</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02965"></a><span class="lineno"> 2965</span>  MemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> +<div class="line"><a name="l02966"></a><span class="lineno"> 2966</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02967"></a><span class="lineno"> 2967</span>  GenericObject AddMember(ValueType& name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02968"></a><span class="lineno"> 2968</span>  GenericObject AddMember(ValueType& name, StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02969"></a><span class="lineno"> 2969</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02970"></a><span class="lineno"> 2970</span>  GenericObject AddMember(ValueType& name, std::basic_string<Ch>& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02971"></a><span class="lineno"> 2971</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02972"></a><span class="lineno"> 2972</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (ValueType&)) AddMember(ValueType& name, T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02973"></a><span class="lineno"> 2973</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02974"></a><span class="lineno"> 2974</span>  GenericObject AddMember(ValueType&& name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02975"></a><span class="lineno"> 2975</span>  GenericObject AddMember(ValueType&& name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02976"></a><span class="lineno"> 2976</span>  GenericObject AddMember(ValueType& name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02977"></a><span class="lineno"> 2977</span>  GenericObject AddMember(StringRefType name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02978"></a><span class="lineno"> 2978</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02979"></a><span class="lineno"> 2979</span>  GenericObject AddMember(StringRefType name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02980"></a><span class="lineno"> 2980</span>  GenericObject AddMember(StringRefType name, StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02981"></a><span class="lineno"> 2981</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericObject)) AddMember(StringRefType name, T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02982"></a><span class="lineno"> 2982</span>  <span class="keywordtype">void</span> RemoveAllMembers() { value_.RemoveAllMembers(); }</div> +<div class="line"><a name="l02983"></a><span class="lineno"> 2983</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> +<div class="line"><a name="l02984"></a><span class="lineno"> 2984</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02985"></a><span class="lineno"> 2985</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> +<div class="line"><a name="l02986"></a><span class="lineno"> 2986</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02987"></a><span class="lineno"> 2987</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> +<div class="line"><a name="l02988"></a><span class="lineno"> 2988</span>  MemberIterator RemoveMember(MemberIterator m)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(m); }</div> +<div class="line"><a name="l02989"></a><span class="lineno"> 2989</span>  MemberIterator EraseMember(ConstMemberIterator pos)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(pos); }</div> +<div class="line"><a name="l02990"></a><span class="lineno"> 2990</span>  MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterator last)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(first, last); }</div> +<div class="line"><a name="l02991"></a><span class="lineno"> 2991</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(name); }</div> +<div class="line"><a name="l02992"></a><span class="lineno"> 2992</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02993"></a><span class="lineno"> 2993</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> EraseMember(ValueType(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l02994"></a><span class="lineno"> 2994</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02995"></a><span class="lineno"> 2995</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(name); }</div> +<div class="line"><a name="l02996"></a><span class="lineno"> 2996</span>  </div> +<div class="line"><a name="l02997"></a><span class="lineno"> 2997</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> +<div class="line"><a name="l02998"></a><span class="lineno"> 2998</span>  MemberIterator begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberBegin(); }</div> +<div class="line"><a name="l02999"></a><span class="lineno"> 2999</span>  MemberIterator end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberEnd(); }</div> +<div class="line"><a name="l03000"></a><span class="lineno"> 3000</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l03001"></a><span class="lineno"> 3001</span>  </div> +<div class="line"><a name="l03002"></a><span class="lineno"> 3002</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l03003"></a><span class="lineno"> 3003</span>  GenericObject();</div> +<div class="line"><a name="l03004"></a><span class="lineno"> 3004</span>  GenericObject(ValueType& value) : value_(value) {}</div> +<div class="line"><a name="l03005"></a><span class="lineno"> 3005</span>  ValueType& value_;</div> +<div class="line"><a name="l03006"></a><span class="lineno"> 3006</span> };</div> +<div class="line"><a name="l03007"></a><span class="lineno"> 3007</span>  </div> +<div class="line"><a name="l03008"></a><span class="lineno"> 3008</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l03009"></a><span class="lineno"> 3009</span> RAPIDJSON_DIAG_POP</div> +<div class="line"><a name="l03010"></a><span class="lineno"> 3010</span>  </div> +<div class="line"><a name="l03011"></a><span class="lineno"> 3011</span> <span class="preprocessor">#endif // RAPIDJSON_DOCUMENT_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_afe94e5e86a5b1a3fb605a9f8422f048b"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(float f) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for float value.</div><div class="ttdef"><b>Definition:</b> document.h:835</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_afe94e5e86a5b1a3fb605a9f8422f048b"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(float f) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for float value.</div><div class="ttdef"><b>Definition:</b> document.h:825</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_structrapidjson_1_1_parse_result"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">rapidjson::ParseResult</a></div><div class="ttdoc">Result of parsing (wraps ParseErrorCode)</div><div class="ttdef"><b>Definition:</b> error.h:106</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue</a></div><div class="ttdoc">Represents a JSON value. Use Value for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> document.h:57</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_abfad2c34a97f82178cbf9464e958e2c2"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2">rapidjson::GenericMemberIterator::operator-</a></div><div class="ttdeci">DifferenceType operator-(ConstIterator that) const</div><div class="ttdoc">Distance.</div><div class="ttdef"><b>Definition:</b> document.h:273</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_string_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_string.html">rapidjson::GenericValue::String</a></div><div class="ttdef"><b>Definition:</b> document.h:2045</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_string_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_string.html">rapidjson::GenericValue::String</a></div><div class="ttdef"><b>Definition:</b> document.h:2011</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_array_html"><div class="ttname"><a href="classrapidjson_1_1_generic_array.html">rapidjson::GenericArray</a></div><div class="ttdoc">Helper class for accessing Value of array type.</div><div class="ttdef"><b>Definition:</b> document.h:642</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_ac920af483c9e31a6746c22acf0dffc50"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#ac920af483c9e31a6746c22acf0dffc50">rapidjson::GenericMemberIterator::GenericMemberIterator</a></div><div class="ttdeci">GenericMemberIterator()</div><div class="ttdoc">Default constructor (singular value)</div><div class="ttdef"><b>Definition:</b> document.h:213</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a559eb9cea54364a35518b02f6d74f379"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">rapidjson::GenericValue::StringRefType</a></div><div class="ttdeci">GenericStringRef< Ch > StringRefType</div><div class="ttdoc">Reference to a constant string.</div><div class="ttdef"><b>Definition:</b> document.h:666</div></div> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ae8bcedd951f50b69786aaaa1828e9fac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">rapidjson::GenericValue::operator=</a></div><div class="ttdeci">GenericValue & operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment with move semantics.</div><div class="ttdef"><b>Definition:</b> document.h:917</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ae8bcedd951f50b69786aaaa1828e9fac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">rapidjson::GenericValue::operator=</a></div><div class="ttdeci">GenericValue & operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment with move semantics.</div><div class="ttdef"><b>Definition:</b> document.h:912</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a06ce0e14ec83b53c83e1b1699b53a25e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">rapidjson::GenericValue::ValueIterator</a></div><div class="ttdeci">GenericValue * ValueIterator</div><div class="ttdoc">Value iterator for iterating in array.</div><div class="ttdef"><b>Definition:</b> document.h:669</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_a37091c3dd8470486ef5188f3c1108653"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#a37091c3dd8470486ef5188f3c1108653">rapidjson::GenericMemberIterator::Iterator</a></div><div class="ttdeci">GenericMemberIterator Iterator</div><div class="ttdoc">Iterator type itself.</div><div class="ttdef"><b>Definition:</b> document.h:187</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_insitu_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_insitu_string_stream.html">rapidjson::GenericInsituStringStream</a></div><div class="ttdoc">A read-write string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:52</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_acf96a3c7fd61486d049c701b1fe5d414"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2377</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a4c85243a28c9dcf2d1357da00fcaa773"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773">rapidjson::GenericDocument::AllocatorType</a></div><div class="ttdeci">Allocator AllocatorType</div><div class="ttdoc">Allocator type from template parameter.</div><div class="ttdef"><b>Definition:</b> document.h:2217</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_acf96a3c7fd61486d049c701b1fe5d414"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2644</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a4c85243a28c9dcf2d1357da00fcaa773"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773">rapidjson::GenericDocument::AllocatorType</a></div><div class="ttdeci">Allocator AllocatorType</div><div class="ttdoc">Allocator type from template parameter.</div><div class="ttdef"><b>Definition:</b> document.h:2477</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_abe27838f8dc71fdb38028ef27ae0b4f2"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2">rapidjson::GenericMemberIterator::Reference</a></div><div class="ttdeci">reference Reference</div><div class="ttdoc">Reference to (const) GenericMember.</div><div class="ttdef"><b>Definition:</b> document.h:205</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a1f125e735577aae64c0306345de45563"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for uint64_t value.</div><div class="ttdef"><b>Definition:</b> document.h:820</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a893da1069660536fd3943a0149206a6e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Object o) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for Object.</div><div class="ttdef"><b>Definition:</b> document.h:873</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_af061c039a990c2970dc31e5626149367"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2400</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a1f125e735577aae64c0306345de45563"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for uint64_t value.</div><div class="ttdef"><b>Definition:</b> document.h:810</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a893da1069660536fd3943a0149206a6e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Object o) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for Object.</div><div class="ttdef"><b>Definition:</b> document.h:863</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_af061c039a990c2970dc31e5626149367"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2667</div></div> <div class="ttc" id="aclassrapidjson_1_1_encoded_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_encoded_input_stream.html">rapidjson::EncodedInputStream</a></div><div class="ttdoc">Input byte stream wrapper with a statically bound encoding.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:39</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_aa6b9fd9f6aa49405a574c362ba9af6b5"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5">rapidjson::GenericStringRef::StringRef</a></div><div class="ttdeci">GenericStringRef< CharType > StringRef(const CharType *str)</div><div class="ttdoc">Mark a character pointer as constant string.</div><div class="ttdef"><b>Definition:</b> document.h:445</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ad9553bb9ccbfd19547c473a95405a8b2"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, SizeType length, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:844</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a852788b35257762cd8d6c4bf5c5d77bc"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const std::basic_string< Ch > &s, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string from a string object (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:853</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ad9553bb9ccbfd19547c473a95405a8b2"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, SizeType length, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:834</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a852788b35257762cd8d6c4bf5c5d77bc"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const std::basic_string< Ch > &s, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string from a string object (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:843</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_html_ae820eaa74b415a9073f3f3855f6c6607"><div class="ttname"><a href="classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607">rapidjson::GenericMember::name</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > name</div><div class="ttdoc">name of member (must be a string)</div><div class="ttdef"><b>Definition:</b> document.h:113</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a82b27e7b228eb46a23f99720063ab4fb"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">rapidjson::GenericDocument::GenericDocument</a></div><div class="ttdeci">GenericDocument(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> document.h:2239</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a41bbec044c421e870a9d355075d741bc"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">rapidjson::GenericDocument::ValueType</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > ValueType</div><div class="ttdoc">Value type of the document.</div><div class="ttdef"><b>Definition:</b> document.h:2216</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a65bfc3073fa80ee5eba8e985abe2f941"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for constant string (i.e. do not make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:841</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a82b27e7b228eb46a23f99720063ab4fb"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">rapidjson::GenericDocument::GenericDocument</a></div><div class="ttdeci">GenericDocument(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> document.h:2499</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a41bbec044c421e870a9d355075d741bc"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">rapidjson::GenericDocument::ValueType</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > ValueType</div><div class="ttdoc">Value type of the document.</div><div class="ttdef"><b>Definition:</b> document.h:2476</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a65bfc3073fa80ee5eba8e985abe2f941"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for constant string (i.e. do not make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:831</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html">rapidjson::GenericMemberIterator</a></div><div class="ttdoc">(Constant) member iterator for a JSON object value</div><div class="ttdef"><b>Definition:</b> document.h:177</div></div> <div class="ttc" id="anamespacerapidjson_html_af94951529a5d51e8c4e6e770bb707c1f"><div class="ttname"><a href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">rapidjson::StringRef</a></div><div class="ttdeci">GenericStringRef< CharType > StringRef(const std::basic_string< CharType > &str)</div><div class="ttdoc">Mark a string object as constant string.</div><div class="ttdef"><b>Definition:</b> document.h:483</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ab94c280c079a6837a24951cb4d8f337b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">rapidjson::GenericDocument::GetParseError</a></div><div class="ttdeci">ParseErrorCode GetParseError() const</div><div class="ttdoc">Get the ParseErrorCode of last parsing.</div><div class="ttdef"><b>Definition:</b> document.h:2480</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ab031375318d133f83a114314b75703de"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2432</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ab94c280c079a6837a24951cb4d8f337b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">rapidjson::GenericDocument::GetParseError</a></div><div class="ttdeci">ParseErrorCode GetParseError() const</div><div class="ttdoc">Get the ParseErrorCode of last parsing.</div><div class="ttdef"><b>Definition:</b> document.h:2747</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ab031375318d133f83a114314b75703de"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2699</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html">rapidjson::MemoryStream</a></div><div class="ttdoc">Represents an in-memory input byte stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:40</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_adca019775f68f012643781cd2c2515ac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</div><div class="ttdoc">Explicit copy constructor (with allocator)</div><div class="ttdef"><b>Definition:</b> document.h:733</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a42c35e2f64c288f14b74fec2792500c8"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string.</div><div class="ttdef"><b>Definition:</b> document.h:2425</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_array_data_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_array_data.html">rapidjson::GenericValue::ArrayData</a></div><div class="ttdef"><b>Definition:</b> document.h:2100</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a42c35e2f64c288f14b74fec2792500c8"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string.</div><div class="ttdef"><b>Definition:</b> document.h:2692</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_array_data_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_array_data.html">rapidjson::GenericValue::ArrayData</a></div><div class="ttdef"><b>Definition:</b> document.h:2066</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_aa9d53504374c7c6bdf46775482c5b107"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107">rapidjson::GenericMemberIterator::Pointer</a></div><div class="ttdeci">pointer Pointer</div><div class="ttdoc">Pointer to (const) GenericMember.</div><div class="ttdef"><b>Definition:</b> document.h:203</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_object_data_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_object_data.html">rapidjson::GenericValue::ObjectData</a></div><div class="ttdef"><b>Definition:</b> document.h:2094</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a51e93a4fb57f77a39767acb076bf43c1"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for constant string (i.e. do not make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:838</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_object_data_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_object_data.html">rapidjson::GenericValue::ObjectData</a></div><div class="ttdef"><b>Definition:</b> document.h:2060</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a51e93a4fb57f77a39767acb076bf43c1"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for constant string (i.e. do not make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:828</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html">rapidjson::GenericStringStream</a></div><div class="ttdoc">Read-only string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:47</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a77b0f41557b3c34b57a180698312c4a8"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Array a) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for Array.</div><div class="ttdef"><b>Definition:</b> document.h:862</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a153e5a065ca9660673974f9df203be4b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">rapidjson::GenericDocument::GetStackCapacity</a></div><div class="ttdeci">size_t GetStackCapacity() const</div><div class="ttdoc">Get the capacity of stack in bytes.</div><div class="ttdef"><b>Definition:</b> document.h:2507</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a77b0f41557b3c34b57a180698312c4a8"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Array a) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for Array.</div><div class="ttdef"><b>Definition:</b> document.h:852</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a153e5a065ca9660673974f9df203be4b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">rapidjson::GenericDocument::GetStackCapacity</a></div><div class="ttdeci">size_t GetStackCapacity() const</div><div class="ttdoc">Get the capacity of stack in bytes.</div><div class="ttdef"><b>Definition:</b> document.h:2774</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_aa30ffef74b3f4978b403024d81b484e4"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#aa30ffef74b3f4978b403024d81b484e4">rapidjson::GenericMemberIterator::GenericMemberIterator</a></div><div class="ttdeci">GenericMemberIterator(const NonConstIterator &it)</div><div class="ttdoc">Iterator conversions to more const.</div><div class="ttdef"><b>Definition:</b> document.h:231</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2348</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2615</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7d3acf640886b1f2552dc8c4cd6dea60"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">rapidjson::ParseErrorCode</a></div><div class="ttdeci">ParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> error.h:64</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a00efe429e27f95dca17b19519b3cea9e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">rapidjson::GenericValue::RawAssign</a></div><div class="ttdeci">void RawAssign(GenericValue &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2173</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_abf1cbab989b856f9d260787b2575750b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">rapidjson::GenericDocument::Swap</a></div><div class="ttdeci">GenericDocument & Swap(GenericDocument &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Exchange the contents of this document with those of another.</div><div class="ttdef"><b>Definition:</b> document.h:2295</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a00efe429e27f95dca17b19519b3cea9e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">rapidjson::GenericValue::RawAssign</a></div><div class="ttdeci">void RawAssign(GenericValue &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2433</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_abf1cbab989b856f9d260787b2575750b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">rapidjson::GenericDocument::Swap</a></div><div class="ttdeci">GenericDocument & Swap(GenericDocument &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Exchange the contents of this document with those of another.</div><div class="ttdef"><b>Definition:</b> document.h:2562</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_html"><div class="ttname"><a href="classrapidjson_1_1_generic_member.html">rapidjson::GenericMember</a></div><div class="ttdoc">Name-value pair in a JSON object value.</div><div class="ttdef"><b>Definition:</b> document.h:111</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aa52c3016961f25ecd989d82839bce4e5"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">rapidjson::GenericDocument::GenericDocument</a></div><div class="ttdeci">GenericDocument(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> document.h:2226</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aa52c3016961f25ecd989d82839bce4e5"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">rapidjson::GenericDocument::GenericDocument</a></div><div class="ttdeci">GenericDocument(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> document.h:2486</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_aca5596987335016c1a7c2a9467baf80b"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">rapidjson::GenericValue::MemberIterator</a></div><div class="ttdeci">GenericMemberIterator< false, Encoding, Allocator >::Iterator MemberIterator</div><div class="ttdoc">Member iterator for iterating in object.</div><div class="ttdef"><b>Definition:</b> document.h:667</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a83ba61e8a5170c2e172fd60ebc11016f"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:847</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a83ba61e8a5170c2e172fd60ebc11016f"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:837</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_html_a1e6d0170562775c54613e7825955c1e4"><div class="ttname"><a href="classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4">rapidjson::GenericMember::operator=</a></div><div class="ttdeci">GenericMember & operator=(GenericMember &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment with move semantics.</div><div class="ttdef"><b>Definition:</b> document.h:133</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_abbca9846370d4749cdbb6bab9e44096c"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">rapidjson::GenericValue::SetStringRaw</a></div><div class="ttdeci">void SetStringRaw(StringRefType s, Allocator &allocator)</div><div class="ttdoc">Initialize this value as copy string with initial data, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2156</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_abbca9846370d4749cdbb6bab9e44096c"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">rapidjson::GenericValue::SetStringRaw</a></div><div class="ttdeci">void SetStringRaw(StringRefType s, Allocator &allocator)</div><div class="ttdoc">Initialize this value as copy string with initial data, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2416</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a6cd2b09795c48d2892bebc0ae350d51f"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">rapidjson::GenericValue::ConstMemberIterator</a></div><div class="ttdeci">GenericMemberIterator< true, Encoding, Allocator >::Iterator ConstMemberIterator</div><div class="ttdoc">Constant member iterator for iterating in object.</div><div class="ttdef"><b>Definition:</b> document.h:668</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_object_html"><div class="ttname"><a href="classrapidjson_1_1_generic_object.html">rapidjson::GenericObject</a></div><div class="ttdoc">Helper class for accessing Value of object type.</div><div class="ttdef"><b>Definition:</b> document.h:643</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_ae223535ec20edf0c1db44a40b7735111"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">rapidjson::GenericStringRef::length</a></div><div class="ttdeci">const SizeType length</div><div class="ttdoc">length of the string (excluding the trailing NULL terminator)</div><div class="ttdef"><b>Definition:</b> document.h:411</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_short_string_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_short_string.html">rapidjson::GenericValue::ShortString</a></div><div class="ttdef"><b>Definition:</b> document.h:2059</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_short_string_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_short_string.html">rapidjson::GenericValue::ShortString</a></div><div class="ttdef"><b>Definition:</b> document.h:2025</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a0220ddebe2f023fa75b643a50e90e559"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">rapidjson::GenericValue::Member</a></div><div class="ttdeci">GenericMember< Encoding, Allocator > Member</div><div class="ttdoc">Name-value pair in an object.</div><div class="ttdef"><b>Definition:</b> document.h:662</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a433a64b466c80cadf7d1acaa6f065437"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">rapidjson::GenericValue::~GenericValue</a></div><div class="ttdeci">~GenericValue()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> document.h:881</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_acd4ae9a8dba4498d1d7cce6667529bb8"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for int64_t value.</div><div class="ttdef"><b>Definition:</b> document.h:805</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_number_1_1_u_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">rapidjson::GenericValue::Number::U</a></div><div class="ttdef"><b>Definition:</b> document.h:2084</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a0d63efcc43758ac3aed77e868233369d"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument::swap</a></div><div class="ttdeci">friend void swap(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> document.h:2320</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ad92c6cd025d411258d1f2ad890e2ee3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">rapidjson::GenericDocument::GetAllocator</a></div><div class="ttdeci">Allocator & GetAllocator()</div><div class="ttdoc">Get the allocator of this document.</div><div class="ttdef"><b>Definition:</b> document.h:2501</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a433a64b466c80cadf7d1acaa6f065437"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">rapidjson::GenericValue::~GenericValue</a></div><div class="ttdeci">~GenericValue()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> document.h:871</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_acd4ae9a8dba4498d1d7cce6667529bb8"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for int64_t value.</div><div class="ttdef"><b>Definition:</b> document.h:795</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_number_1_1_u_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">rapidjson::GenericValue::Number::U</a></div><div class="ttdef"><b>Definition:</b> document.h:2050</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a0d63efcc43758ac3aed77e868233369d"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument::swap</a></div><div class="ttdeci">friend void swap(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> document.h:2587</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ad92c6cd025d411258d1f2ad890e2ee3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">rapidjson::GenericDocument::GetAllocator</a></div><div class="ttdeci">Allocator & GetAllocator()</div><div class="ttdoc">Get the allocator of this document.</div><div class="ttdef"><b>Definition:</b> document.h:2768</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> <div class="ttc" id="anamespacerapidjson_html_a080910f74d2f5046e6724280159cf374"><div class="ttname"><a href="namespacerapidjson.html#a080910f74d2f5046e6724280159cf374">rapidjson::Pointer</a></div><div class="ttdeci">GenericPointer< Value, CrtAllocator > Pointer</div><div class="ttdoc">GenericPointer for Value (UTF-8, default allocator).</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader</a></div><div class="ttdoc">SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ad1f8199e65662e0d52a13a1577d4e4a5"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Default constructor creates a null value.</div><div class="ttdef"><b>Definition:</b> document.h:681</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_a61b9a9ba8a5917d90406532f104605cc"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#a61b9a9ba8a5917d90406532f104605cc">rapidjson::GenericMemberIterator::ConstIterator</a></div><div class="ttdeci">GenericMemberIterator< true, Encoding, Allocator > ConstIterator</div><div class="ttdoc">Constant iterator type.</div><div class="ttdef"><b>Definition:</b> document.h:189</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_aecc9d0a6aafe31f4fdf9f6e75e5f089c"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">rapidjson::GenericValue::operator=</a></div><div class="ttdeci">GenericValue & operator=(StringRefType str) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment of constant string reference (no copy)</div><div class="ttdef"><b>Definition:</b> document.h:942</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a1efc6f69fe809557ae00dd322b7f79ac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">rapidjson::GenericValue::SetObjectRaw</a></div><div class="ttdeci">void SetObjectRaw(Member *members, SizeType count, Allocator &allocator)</div><div class="ttdoc">Initialize this value as object with initial data, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2136</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_aecc9d0a6aafe31f4fdf9f6e75e5f089c"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">rapidjson::GenericValue::operator=</a></div><div class="ttdeci">GenericValue & operator=(StringRefType str) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment of constant string reference (no copy)</div><div class="ttdef"><b>Definition:</b> document.h:937</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a1efc6f69fe809557ae00dd322b7f79ac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">rapidjson::GenericValue::SetObjectRaw</a></div><div class="ttdeci">void SetObjectRaw(Member *members, SizeType count, Allocator &allocator)</div><div class="ttdoc">Initialize this value as object with initial data, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2389</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_html_a8ffff2076e62d988a070a136da6ffca6"><div class="ttname"><a href="classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6">rapidjson::GenericMember::value</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > value</div><div class="ttdoc">value of member.</div><div class="ttdef"><b>Definition:</b> document.h:114</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_a1a91868fa388664bb301061e3e24badb"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb">rapidjson::GenericMemberIterator::NonConstIterator</a></div><div class="ttdeci">GenericMemberIterator< false, Encoding, Allocator > NonConstIterator</div><div class="ttdoc">Non-constant iterator type.</div><div class="ttdef"><b>Definition:</b> document.h:191</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> <div class="ttc" id="areader_8h_html"><div class="ttname"><a href="reader_8h.html">reader.h</a></div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a8367a827588dd91d02e21ef945bec9f5"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5">rapidjson::GenericDocument::Ch</a></div><div class="ttdeci">Encoding::Ch Ch</div><div class="ttdoc">Character type derived from Encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2215</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_abba0c9ccfd90726f916c36013a2e9e19"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(int i) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for int value.</div><div class="ttdef"><b>Definition:</b> document.h:793</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ab933ad7ff8c9d08f73cebaecb700dbe9"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(bool b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for boolean value.</div><div class="ttdef"><b>Definition:</b> document.h:784</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a8367a827588dd91d02e21ef945bec9f5"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5">rapidjson::GenericDocument::Ch</a></div><div class="ttdeci">Encoding::Ch Ch</div><div class="ttdoc">Character type derived from Encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2475</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_abba0c9ccfd90726f916c36013a2e9e19"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(int i) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for int value.</div><div class="ttdef"><b>Definition:</b> document.h:783</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ab933ad7ff8c9d08f73cebaecb700dbe9"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(bool b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for boolean value.</div><div class="ttdef"><b>Definition:</b> document.h:774</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_adcdbc7fa85a9a41b78966d7e0dcc2ac4"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">rapidjson::GenericValue::Ch</a></div><div class="ttdeci">Encoding::Ch Ch</div><div class="ttdoc">Character type derived from Encoding.</div><div class="ttdef"><b>Definition:</b> document.h:665</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a63e18887979da500ece6f0bd10d29b64"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">rapidjson::GenericDocument::Populate</a></div><div class="ttdeci">GenericDocument & Populate(Generator &g)</div><div class="ttdoc">Populate this document by a generator which produces SAX events.</div><div class="ttdef"><b>Definition:</b> document.h:2328</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a63e18887979da500ece6f0bd10d29b64"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">rapidjson::GenericDocument::Populate</a></div><div class="ttdeci">GenericDocument & Populate(Generator &g)</div><div class="ttdoc">Populate this document by a generator which produces SAX events.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_acd4d5ebac2b610ce647356aa52998002"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#acd4d5ebac2b610ce647356aa52998002">rapidjson::GenericStringRef::GenericStringRef</a></div><div class="ttdeci">GenericStringRef(const CharType(&str)[N]) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Create string reference from const character array.</div><div class="ttdef"><b>Definition:</b> document.h:366</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7ba626bf84eb45a9bca0b7723bf47f3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string.</div><div class="ttdef"><b>Definition:</b> document.h:2391</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7ba626bf84eb45a9bca0b7723bf47f3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string.</div><div class="ttdef"><b>Definition:</b> document.h:2658</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga10ba0ee06d0ac2803d0f2290d46b19f7"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY</a></div><div class="ttdeci">#define RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY</div><div class="ttdoc">User defined kDefaultArrayCapacity value.</div><div class="ttdef"><b>Definition:</b> document.h:101</div></div> -<div class="ttc" id="aunionrapidjson_1_1_generic_value_1_1_number_html"><div class="ttname"><a href="unionrapidjson_1_1_generic_value_1_1_number.html">rapidjson::GenericValue::Number</a></div><div class="ttdef"><b>Definition:</b> document.h:2069</div></div> +<div class="ttc" id="aunionrapidjson_1_1_generic_value_1_1_number_html"><div class="ttname"><a href="unionrapidjson_1_1_generic_value_1_1_number.html">rapidjson::GenericValue::Number</a></div><div class="ttdef"><b>Definition:</b> document.h:2035</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a05906384808645a2e798d29a9b2d441d"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">rapidjson::GenericValue::EncodingType</a></div><div class="ttdeci">Encoding EncodingType</div><div class="ttdoc">Encoding type from template parameter.</div><div class="ttdef"><b>Definition:</b> document.h:663</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html">rapidjson::GenericStringRef</a></div><div class="ttdoc">Reference to a constant string (not taking a copy)</div><div class="ttdef"><b>Definition:</b> document.h:337</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a5d47340c96346c5028fee4c9068d783d"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a5d47340c96346c5028fee4c9068d783d">rapidjson::GenericValue::AllocatorType</a></div><div class="ttdeci">Allocator AllocatorType</div><div class="ttdoc">Allocator type from template parameter.</div><div class="ttdef"><b>Definition:</b> document.h:664</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">rapidjson::kParseInsituFlag</a></div><div class="ttdoc">In-situ(destructive) parsing.</div><div class="ttdef"><b>Definition:</b> reader.h:148</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a></div><div class="ttdoc">Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_a001276ee57cbcbd3c14449045c71e994"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994">rapidjson::GenericStringRef::s</a></div><div class="ttdeci">const Ch *const s</div><div class="ttdoc">plain CharType pointer</div><div class="ttdef"><b>Definition:</b> document.h:410</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ae4ee7d86b8c906c83dbe15e57eb6ac6a"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream.</div><div class="ttdef"><b>Definition:</b> document.h:2367</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga2b2a0d9143aa4fb31205a85b34c43952"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_NOEXCEPT_ASSERT(x)</div><div class="ttdoc">Assertion (in non-throwing contexts).</div><div class="ttdef"><b>Definition:</b> rapidjson.h:665</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a248bab30562a4197cea0474d7f0ce835"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">rapidjson::GenericValue::SetStringRaw</a></div><div class="ttdeci">void SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Initialize this value as constant string, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2149</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_af532179ca5ad5434a5e8af63f5da4c5f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">rapidjson::GenericDocument::GetErrorOffset</a></div><div class="ttdeci">size_t GetErrorOffset() const</div><div class="ttdoc">Get the position of last parsing error in input, 0 otherwise.</div><div class="ttdef"><b>Definition:</b> document.h:2483</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ae4ee7d86b8c906c83dbe15e57eb6ac6a"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream.</div><div class="ttdef"><b>Definition:</b> document.h:2634</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga2b2a0d9143aa4fb31205a85b34c43952"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_NOEXCEPT_ASSERT(x)</div><div class="ttdoc">Assertion (in non-throwing contexts).</div><div class="ttdef"><b>Definition:</b> rapidjson.h:687</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a248bab30562a4197cea0474d7f0ce835"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">rapidjson::GenericValue::SetStringRaw</a></div><div class="ttdeci">void SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Initialize this value as constant string, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2409</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga583915242504c7fdb36e826f02f76242"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a></div><div class="ttdeci">#define RAPIDJSON_ALIGN(x)</div><div class="ttdoc">Data alignment of the machine.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:307</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_af532179ca5ad5434a5e8af63f5da4c5f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">rapidjson::GenericDocument::GetErrorOffset</a></div><div class="ttdeci">size_t GetErrorOffset() const</div><div class="ttdoc">Get the position of last parsing error in input, 0 otherwise.</div><div class="ttdef"><b>Definition:</b> document.h:2750</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_ad9eb120a58cee500ff3bd5706779c4e4"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#ad9eb120a58cee500ff3bd5706779c4e4">rapidjson::GenericStringRef::GenericStringRef</a></div><div class="ttdeci">GenericStringRef(const CharType *str, SizeType len)</div><div class="ttdoc">Create constant string reference from pointer and length.</div><div class="ttdef"><b>Definition:</b> document.h:402</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:494</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_a29cf407c6aa2313f13dff78d6ce02687"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#a29cf407c6aa2313f13dff78d6ce02687">rapidjson::GenericStringRef::GenericStringRef</a></div><div class="ttdeci">GenericStringRef(const CharType *str)</div><div class="ttdoc">Explicitly create string reference from const character pointer.</div><div class="ttdef"><b>Definition:</b> document.h:390</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ad2935191ab28c2c2e472b739a9d58202"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202">rapidjson::GenericValue::ValueType</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > ValueType</div><div class="ttdoc">Value type of itself.</div><div class="ttdef"><b>Definition:</b> document.h:671</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_number_1_1_i_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">rapidjson::GenericValue::Number::I</a></div><div class="ttdef"><b>Definition:</b> document.h:2080</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7607bb42b51547e44bfd4cab35d8f20e"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">rapidjson::GenericDocument::HasParseError</a></div><div class="ttdeci">bool HasParseError() const</div><div class="ttdoc">Whether a parse error has occurred in the last parsing.</div><div class="ttdef"><b>Definition:</b> document.h:2477</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a4a8060a42b7953a2981ad892180ca5a6"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(unsigned u) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for unsigned value.</div><div class="ttdef"><b>Definition:</b> document.h:799</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_number_1_1_i_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">rapidjson::GenericValue::Number::I</a></div><div class="ttdef"><b>Definition:</b> document.h:2046</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga87dc65109882910388121e1dba15038b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">RAPIDJSON_USE_MEMBERSMAP</a></div><div class="ttdeci">#define RAPIDJSON_USE_MEMBERSMAP</div><div class="ttdoc">Enable RapidJSON support for object members handling in a std::multimap.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:180</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7607bb42b51547e44bfd4cab35d8f20e"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">rapidjson::GenericDocument::HasParseError</a></div><div class="ttdeci">bool HasParseError() const</div><div class="ttdoc">Whether a parse error has occurred in the last parsing.</div><div class="ttdef"><b>Definition:</b> document.h:2744</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a4a8060a42b7953a2981ad892180ca5a6"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(unsigned u) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for unsigned value.</div><div class="ttdef"><b>Definition:</b> document.h:789</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a45b0ddd23742e045ffe286f9ead712b7"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7">rapidjson::GenericValue::ConstValueIterator</a></div><div class="ttdeci">const typedef GenericValue * ConstValueIterator</div><div class="ttdoc">Constant value iterator for iterating in array.</div><div class="ttdef"><b>Definition:</b> document.h:670</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_aa2a8eccae3d7eb14c30bc21afb7d6fba"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#aa2a8eccae3d7eb14c30bc21afb7d6fba">rapidjson::GenericStringRef::Ch</a></div><div class="ttdeci">CharType Ch</div><div class="ttdoc">character type of the string</div><div class="ttdef"><b>Definition:</b> document.h:338</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a646b6d4d3d98799a0926d96ffa127a58"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Type type) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor with JSON value type.</div><div class="ttdef"><b>Definition:</b> document.h:711</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_aff2739a9265639a7a4be8c3e6216b31a"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#aff2739a9265639a7a4be8c3e6216b31a">rapidjson::GenericMemberIterator::DifferenceType</a></div><div class="ttdeci">difference_type DifferenceType</div><div class="ttdoc">Signed integer type (e.g. ptrdiff_t)</div><div class="ttdef"><b>Definition:</b> document.h:207</div></div> <div class="ttc" id="aclassrapidjson_1_1_encoding_html"><div class="ttname"><a href="classrapidjson_1_1_encoding.html">Encoding</a></div><div class="ttdoc">Concept for encoding of Unicode characters.</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_string_html_ad152cf5021ffbcaa8dcafea401ac5260"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260">rapidjson::GenericValue::String::hashcode</a></div><div class="ttdeci">SizeType hashcode</div><div class="ttdoc">reserved</div><div class="ttdef"><b>Definition:</b> document.h:2047</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a71b9e2ec1f7bf9e2f034126ca7b4945a"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(double d) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for double value.</div><div class="ttdef"><b>Definition:</b> document.h:832</div></div> -<div class="ttc" id="aunionrapidjson_1_1_generic_value_1_1_data_html"><div class="ttname"><a href="unionrapidjson_1_1_generic_value_1_1_data.html">rapidjson::GenericValue::Data</a></div><div class="ttdef"><b>Definition:</b> document.h:2106</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_flag_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_flag.html">rapidjson::GenericValue::Flag</a></div><div class="ttdef"><b>Definition:</b> document.h:2034</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_string_html_ad152cf5021ffbcaa8dcafea401ac5260"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260">rapidjson::GenericValue::String::hashcode</a></div><div class="ttdeci">SizeType hashcode</div><div class="ttdoc">reserved</div><div class="ttdef"><b>Definition:</b> document.h:2013</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a71b9e2ec1f7bf9e2f034126ca7b4945a"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(double d) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for double value.</div><div class="ttdef"><b>Definition:</b> document.h:822</div></div> +<div class="ttc" id="aunionrapidjson_1_1_generic_value_1_1_data_html"><div class="ttname"><a href="unionrapidjson_1_1_generic_value_1_1_data.html">rapidjson::GenericValue::Data</a></div><div class="ttdef"><b>Definition:</b> document.h:2072</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_flag_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_flag.html">rapidjson::GenericValue::Flag</a></div><div class="ttdef"><b>Definition:</b> document.h:2000</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5c88aa612939b592d15d3fc4bdf54272"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272">RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY</a></div><div class="ttdeci">#define RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY</div><div class="ttdoc">User defined kDefaultObjectCapacity value.</div><div class="ttdef"><b>Definition:</b> document.h:90</div></div> <div class="ttc" id="aclassrapidjson_1_1_handler_html"><div class="ttname"><a href="classrapidjson_1_1_handler.html">Handler</a></div><div class="ttdoc">Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...</div></div> -<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:458</div></div> +<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/dtoa_8h_source.html b/dtoa_8h_source.html index 682a25a5..3bcaab4c 100644 --- a/dtoa_8h_source.html +++ b/dtoa_8h_source.html @@ -335,7 +335,7 @@ $(document).ready(function(){initNavTree('dtoa_8h_source.html','');}); <div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor">#endif // RAPIDJSON_DTOA_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/encodedstream_8h_source.html b/encodedstream_8h_source.html index ce6c621c..95a3025e 100644 --- a/encodedstream_8h_source.html +++ b/encodedstream_8h_source.html @@ -393,7 +393,7 @@ $(document).ready(function(){initNavTree('encodedstream_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_encoded_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_encoded_input_stream.html">rapidjson::EncodedInputStream</a></div><div class="ttdoc">Input byte stream wrapper with a statically bound encoding.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:39</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html">rapidjson::MemoryStream</a></div><div class="ttdoc">Represents an in-memory input byte stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:40</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4">rapidjson::kUTF32LE</a></div><div class="ttdoc">UTF-32 little endian.</div><div class="ttdef"><b>Definition:</b> encodings.h:607</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_input_stream_html_a5c9f041a3b32bf15bc9be888a8731d35"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_input_stream.html#a5c9f041a3b32bf15bc9be888a8731d35">rapidjson::AutoUTFInputStream::AutoUTFInputStream</a></div><div class="ttdeci">AutoUTFInputStream(InputByteStream &is, UTFType type=kUTF8)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:145</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d">rapidjson::kUTF16BE</a></div><div class="ttdoc">UTF-16 big endian.</div><div class="ttdef"><b>Definition:</b> encodings.h:606</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_output_stream_html_a39c828ee4c5b052df7338ec7fda1a17d"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_output_stream.html#a39c828ee4c5b052df7338ec7fda1a17d">rapidjson::AutoUTFOutputStream::AutoUTFOutputStream</a></div><div class="ttdeci">AutoUTFOutputStream(OutputByteStream &os, UTFType type, bool putBOM)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:244</div></div> @@ -404,7 +404,7 @@ $(document).ready(function(){initNavTree('encodedstream_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_output_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_output_stream.html">rapidjson::AutoUTFOutputStream</a></div><div class="ttdoc">Output stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:233</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_input_stream.html">rapidjson::AutoUTFInputStream</a></div><div class="ttdoc">Input stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:135</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f">rapidjson::kUTF32BE</a></div><div class="ttdoc">UTF-32 big endian.</div><div class="ttdef"><b>Definition:</b> encodings.h:608</div></div> -<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:458</div></div> +<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/encodings_8h_source.html b/encodings_8h_source.html index 38ed2c1b..71252086 100644 --- a/encodings_8h_source.html +++ b/encodings_8h_source.html @@ -813,7 +813,7 @@ $(document).ready(function(){initNavTree('encodings_8h_source.html','');}); <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4">rapidjson::kUTF32LE</a></div><div class="ttdoc">UTF-32 little endian.</div><div class="ttdef"><b>Definition:</b> encodings.h:607</div></div> <div class="ttc" id="astructrapidjson_1_1_a_s_c_i_i_html"><div class="ttname"><a href="structrapidjson_1_1_a_s_c_i_i.html">rapidjson::ASCII</a></div><div class="ttdoc">ASCII encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:542</div></div> <div class="ttc" id="astructrapidjson_1_1_transcoder_html"><div class="ttname"><a href="structrapidjson_1_1_transcoder.html">rapidjson::Transcoder</a></div><div class="ttdoc">Encoding conversion.</div><div class="ttdef"><b>Definition:</b> encodings.h:658</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="astructrapidjson_1_1_transcoder_html_a3a1de7069d3cf7f1d4f4e2f96ceb7664"><div class="ttname"><a href="structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664">rapidjson::Transcoder::Transcode</a></div><div class="ttdeci">static RAPIDJSON_FORCEINLINE bool Transcode(InputStream &is, OutputStream &os)</div><div class="ttdoc">Take one Unicode codepoint from source encoding, convert it to target encoding and put it to the outp...</div><div class="ttdef"><b>Definition:</b> encodings.h:661</div></div> <div class="ttc" id="astructrapidjson_1_1_auto_u_t_f_html"><div class="ttname"><a href="structrapidjson_1_1_auto_u_t_f.html">rapidjson::AutoUTF</a></div><div class="ttdoc">Dynamically select encoding according to stream's runtime-specified UTF encoding type.</div><div class="ttdef"><b>Definition:</b> encodings.h:615</div></div> <div class="ttc" id="anamespacerapidjson_html_a0a774dcffe8ae07686f459ae017d2f20"><div class="ttname"><a href="namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20">rapidjson::PutUnsafe</a></div><div class="ttdeci">void PutUnsafe(Stream &stream, typename Stream::Ch c)</div><div class="ttdoc">Write character to a stream, presuming buffer is reserved.</div><div class="ttdef"><b>Definition:</b> stream.h:91</div></div> @@ -829,7 +829,7 @@ $(document).ready(function(){initNavTree('encodings_8h_source.html','');}); <div class="ttc" id="astructrapidjson_1_1_u_t_f16_l_e_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f16_l_e.html">rapidjson::UTF16LE</a></div><div class="ttdoc">UTF-16 little endian encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:342</div></div> <div class="ttc" id="aclassrapidjson_1_1_encoding_html"><div class="ttname"><a href="classrapidjson_1_1_encoding.html">Encoding</a></div><div class="ttdoc">Concept for encoding of Unicode characters.</div></div> <div class="ttc" id="astructrapidjson_1_1_u_t_f16_b_e_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f16_b_e.html">rapidjson::UTF16BE</a></div><div class="ttdoc">UTF-16 big endian encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:375</div></div> -<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:458</div></div> +<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/filereadstream_8h_source.html b/filereadstream_8h_source.html index 238b73d1..c62a5ff8 100644 --- a/filereadstream_8h_source.html +++ b/filereadstream_8h_source.html @@ -192,7 +192,7 @@ $(document).ready(function(){initNavTree('filereadstream_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html_a4a5f34875b40d22def206c9a09ecd929"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html#a4a5f34875b40d22def206c9a09ecd929">rapidjson::FileReadStream::Ch</a></div><div class="ttdeci">char Ch</div><div class="ttdoc">Character type (byte).</div><div class="ttdef"><b>Definition:</b> filereadstream.h:36</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html_a72b610ada5d86e8977a2bc1f2f4c0808"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html#a72b610ada5d86e8977a2bc1f2f4c0808">rapidjson::FileReadStream::FileReadStream</a></div><div class="ttdeci">FileReadStream(std::FILE *fp, char *buffer, size_t bufferSize)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> filereadstream.h:44</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/filewritestream_8h_source.html b/filewritestream_8h_source.html index bbb02397..5a284bcc 100644 --- a/filewritestream_8h_source.html +++ b/filewritestream_8h_source.html @@ -195,7 +195,7 @@ $(document).ready(function(){initNavTree('filewritestream_8h_source.html','');}) </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_file_write_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_write_stream.html">rapidjson::FileWriteStream</a></div><div class="ttdoc">Wrapper of C file stream for output using fwrite().</div><div class="ttdef"><b>Definition:</b> filewritestream.h:32</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_write_stream_html_afc606cc81f6c3709d81bf99b30566330"><div class="ttname"><a href="classrapidjson_1_1_file_write_stream.html#afc606cc81f6c3709d81bf99b30566330">rapidjson::FileWriteStream::Ch</a></div><div class="ttdeci">char Ch</div><div class="ttdoc">Character type. Only support char.</div><div class="ttdef"><b>Definition:</b> filewritestream.h:34</div></div> <div class="ttc" id="anamespacerapidjson_html_a1ac13bac5976fc06587e00fc0bcfb32a"><div class="ttname"><a href="namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a">rapidjson::PutN</a></div><div class="ttdeci">void PutN(FileWriteStream &stream, char c, size_t n)</div><div class="ttdoc">Implement specialized version of PutN() with memset() for better performance.</div><div class="ttdef"><b>Definition:</b> filewritestream.h:94</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/functions.html b/functions.html index b5ef65bc..49edb5c8 100644 --- a/functions.html +++ b/functions.html @@ -309,6 +309,9 @@ $(document).ready(function(){initNavTree('functions.html','');}); : <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29">rapidjson::MemoryPoolAllocator< BaseAllocator ></a> , <a class="el" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c">rapidjson::StdAllocator< T, BaseAllocator ></a> </li> +<li>kRefCounted +: <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496">rapidjson::MemoryPoolAllocator< BaseAllocator ></a> +</li> </ul> @@ -497,18 +500,18 @@ $(document).ready(function(){initNavTree('functions.html','');}); <li>StringRefType : <a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">rapidjson::GenericValue< Encoding, Allocator ></a> </li> -<li>Swap() -: <a class="el" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a> -</li> <li>swap : <a class="el" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a> </li> <li>Swap() -: <a class="el" href="classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b">rapidjson::GenericPointer< ValueType, Allocator ></a> +: <a class="el" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a> </li> <li>swap : <a class="el" href="classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937">rapidjson::GenericPointer< ValueType, Allocator ></a> </li> +<li>Swap() +: <a class="el" href="classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b">rapidjson::GenericPointer< ValueType, Allocator ></a> +</li> </ul> diff --git a/functions_vars.html b/functions_vars.html index c1e7132b..fb3eae39 100644 --- a/functions_vars.html +++ b/functions_vars.html @@ -113,6 +113,9 @@ $(document).ready(function(){initNavTree('functions_vars.html','');}); : <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29">rapidjson::MemoryPoolAllocator< BaseAllocator ></a> , <a class="el" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c">rapidjson::StdAllocator< T, BaseAllocator ></a> </li> +<li>kRefCounted +: <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496">rapidjson::MemoryPoolAllocator< BaseAllocator ></a> +</li> <li>length : <a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600">rapidjson::GenericPointer< ValueType, Allocator >::Token</a> , <a class="el" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">rapidjson::GenericStringRef< CharType ></a> diff --git a/fwd_8h_source.html b/fwd_8h_source.html index 76c7e699..0795ca50 100644 --- a/fwd_8h_source.html +++ b/fwd_8h_source.html @@ -247,7 +247,7 @@ $(document).ready(function(){initNavTree('fwd_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_i_generic_remote_schema_document_provider_html"><div class="ttname"><a href="classrapidjson_1_1_i_generic_remote_schema_document_provider.html">rapidjson::IGenericRemoteSchemaDocumentProvider</a></div><div class="ttdef"><b>Definition:</b> fwd.h:133</div></div> <div class="ttc" id="arapidjson_8h_html"><div class="ttname"><a href="rapidjson_8h.html">rapidjson.h</a></div><div class="ttdoc">common definitions and configuration</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html">rapidjson::GenericMemberIterator</a></div><div class="ttdoc">(Constant) member iterator for a JSON object value</div><div class="ttdef"><b>Definition:</b> document.h:177</div></div> -<div class="ttc" id="aclassrapidjson_1_1_crt_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_crt_allocator.html">rapidjson::CrtAllocator</a></div><div class="ttdoc">C-runtime library allocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:81</div></div> +<div class="ttc" id="aclassrapidjson_1_1_crt_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_crt_allocator.html">rapidjson::CrtAllocator</a></div><div class="ttdoc">C-runtime library allocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:82</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html">rapidjson::MemoryStream</a></div><div class="ttdoc">Represents an in-memory input byte stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:40</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_string_buffer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_string_buffer.html">rapidjson::GenericStringBuffer</a></div><div class="ttdoc">Represents an in-memory output stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:59</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html">rapidjson::GenericStringStream</a></div><div class="ttdoc">Read-only string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:47</div></div> @@ -256,15 +256,15 @@ $(document).ready(function(){initNavTree('fwd_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html">rapidjson::PrettyWriter</a></div><div class="ttdoc">Writer with indentation and spacing.</div><div class="ttdef"><b>Definition:</b> fwd.h:100</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader</a></div><div class="ttdoc">SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html">rapidjson::GenericStringRef</a></div><div class="ttdoc">Reference to a constant string (not taking a copy)</div><div class="ttdef"><b>Definition:</b> document.h:337</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator</a></div><div class="ttdoc">Default memory allocator used by the parser and DOM.</div><div class="ttdef"><b>Definition:</b> allocators.h:128</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator</a></div><div class="ttdoc">Default memory allocator used by the parser and DOM.</div><div class="ttdef"><b>Definition:</b> allocators.h:129</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a></div><div class="ttdoc">Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> <div class="ttc" id="astructrapidjson_1_1_base_reader_handler_html"><div class="ttname"><a href="structrapidjson_1_1_base_reader_handler.html">rapidjson::BaseReaderHandler</a></div><div class="ttdoc">Default implementation of Handler.</div><div class="ttdef"><b>Definition:</b> fwd.h:85</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer.</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> <div class="ttc" id="astructrapidjson_1_1_u_t_f8_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f8.html">rapidjson::UTF8</a></div><div class="ttdoc">UTF-8 encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:96</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html">rapidjson::GenericSchemaDocument</a></div><div class="ttdoc">JSON schema document.</div><div class="ttdef"><b>Definition:</b> fwd.h:136</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html">rapidjson::GenericSchemaValidator</a></div><div class="ttdoc">JSON Schema Validator.</div><div class="ttdef"><b>Definition:</b> fwd.h:145</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/globals.html b/globals.html index 4b9b9881..20668387 100644 --- a/globals.html +++ b/globals.html @@ -183,6 +183,9 @@ $(document).ready(function(){initNavTree('globals.html','');}); <li>RAPIDJSON_UNLIKELY : <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">rapidjson.h</a> </li> +<li>RAPIDJSON_USE_MEMBERSMAP +: <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">rapidjson.h</a> +</li> <li>RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY : <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">document.h</a> </li> diff --git a/globals_defs.html b/globals_defs.html index b8833103..1a63f9aa 100644 --- a/globals_defs.html +++ b/globals_defs.html @@ -183,6 +183,9 @@ $(document).ready(function(){initNavTree('globals_defs.html','');}); <li>RAPIDJSON_UNLIKELY : <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">rapidjson.h</a> </li> +<li>RAPIDJSON_USE_MEMBERSMAP +: <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">rapidjson.h</a> +</li> <li>RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY : <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">document.h</a> </li> diff --git a/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html b/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html index f0ded3a9..9b7be619 100644 --- a/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html +++ b/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html @@ -118,6 +118,9 @@ Macros</h2></td></tr> <tr class="memitem:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f">RAPIDJSON_HAS_STDSTRING</a></td></tr> <tr class="memdesc:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="mdescLeft"> </td><td class="mdescRight">Enable RapidJSON support for <code>std::string</code>. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f">More...</a><br /></td></tr> <tr class="separator:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga87dc65109882910388121e1dba15038b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">RAPIDJSON_USE_MEMBERSMAP</a></td></tr> +<tr class="memdesc:ga87dc65109882910388121e1dba15038b"><td class="mdescLeft"> </td><td class="mdescRight">Enable RapidJSON support for object members handling in a <code>std::multimap</code>. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">More...</a><br /></td></tr> +<tr class="separator:ga87dc65109882910388121e1dba15038b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c">RAPIDJSON_NO_INT64DEFINE</a></td></tr> <tr class="memdesc:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="mdescLeft"> </td><td class="mdescRight">Use external 64-bit integer types. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c">More...</a><br /></td></tr> <tr class="separator:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="memSeparator" colspan="2"> </td></tr> @@ -512,6 +515,23 @@ Macros</h2></td></tr> </div> </div> +<a id="ga87dc65109882910388121e1dba15038b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga87dc65109882910388121e1dba15038b">◆ </a></span>RAPIDJSON_USE_MEMBERSMAP</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">#define RAPIDJSON_USE_MEMBERSMAP</td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Enable RapidJSON support for object members handling in a <code>std::multimap</code>. </p> +<p>By defining this preprocessor symbol to <code>1</code>, <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue</a> object members are stored in a <code>std::multimap</code> for faster lookup and deletion times, a trade off with a slightly slower insertion time and a small object allocat(or)ed memory overhead. </p> + +</div> +</div> <a id="ga8d06f2d50592811d2890b45243b8adcc"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga8d06f2d50592811d2890b45243b8adcc">◆ </a></span>RAPIDJSON_VALIDATE_DEFAULT_FLAGS</h2> @@ -582,8 +602,8 @@ Macros</h2></td></tr> </div> </div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.js b/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.js index 825c77dc..0b6ada7c 100644 --- a/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.js +++ b/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.js @@ -19,6 +19,7 @@ var group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g = [ "RAPIDJSON_PATCH_VERSION", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf967d31be43666ce7f53756d73bd1cdf", null ], [ "RAPIDJSON_SIMD", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b", null ], [ "RAPIDJSON_UNLIKELY", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5", null ], + [ "RAPIDJSON_USE_MEMBERSMAP", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b", null ], [ "RAPIDJSON_VALIDATE_DEFAULT_FLAGS", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc", null ], [ "RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7", null ], [ "RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272", null ], diff --git a/group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html b/group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html index ffe04ffc..0efb5fca 100644 --- a/group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html +++ b/group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html @@ -705,12 +705,12 @@ bool </td><td class="memItemRight" valign="bottom"><b>operator!=</b> (<a cl <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga68345ad2eccb3e7dfec09d188f20fe20"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga68345ad2eccb3e7dfec09d188f20fe20">rapidjson::GetValidateError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetValidateError_En(ValidateErrorCode validateErrorCode)</div><div class="ttdoc">Maps error code of validation into error message.</div><div class="ttdef"><b>Definition:</b> en.h:76</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga5e4d44bc16d54acb0a9697110a79a83c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga5e4d44bc16d54acb0a9697110a79a83c">rapidjson::GetValidateErrorFunc</a></div><div class="ttdeci">const typedef RAPIDJSON_ERROR_CHARTYPE *(* GetValidateErrorFunc)(ValidateErrorCode)</div><div class="ttdoc">Function pointer type of GetValidateError().</div><div class="ttdef"><b>Definition:</b> error.h:208</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7d3acf640886b1f2552dc8c4cd6dea60"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">rapidjson::ParseErrorCode</a></div><div class="ttdeci">ParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> error.h:64</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aerror_8h_html"><div class="ttname"><a href="error_8h.html">error.h</a></div></div> <div class="ttc" id="areader_8h_html"><div class="ttname"><a href="reader_8h.html">reader.h</a></div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7e4636fd48d0148f102b8a13f0539d8c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7e4636fd48d0148f102b8a13f0539d8c">RAPIDJSON_ERROR_CHARTYPE</a></div><div class="ttdeci">#define RAPIDJSON_ERROR_CHARTYPE</div><div class="ttdoc">Character type of error messages.</div><div class="ttdef"><b>Definition:</b> error.h:39</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga9d6e699072f8275623a52c4892005751"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga9d6e699072f8275623a52c4892005751">rapidjson::GetParseErrorFunc</a></div><div class="ttdeci">const typedef RAPIDJSON_ERROR_CHARTYPE *(* GetParseErrorFunc)(ParseErrorCode)</div><div class="ttdoc">Function pointer type of GetParseError().</div><div class="ttdef"><b>Definition:</b> error.h:153</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_a0f03679d5fa2736d9e351541e767fac1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1">rapidjson::ParseResult::ParseResult</a></div><div class="ttdeci">ParseResult()</div><div class="ttdoc">Default constructor, no error.</div><div class="ttdef"><b>Definition:</b> error.h:111</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gabdaf1a7a4db30fb0e3d927fdf0fabe79"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79">rapidjson::GetParseError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)</div><div class="ttdoc">Maps error code of parsing into error message.</div><div class="ttdef"><b>Definition:</b> en.h:36</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/ieee754_8h_source.html b/ieee754_8h_source.html index f5fd66af..b8e2a7d4 100644 --- a/ieee754_8h_source.html +++ b/ieee754_8h_source.html @@ -168,9 +168,9 @@ $(document).ready(function(){initNavTree('ieee754_8h_source.html','');}); <div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="preprocessor">#endif // RAPIDJSON_IEEE754_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> @@ -276,10 +276,10 @@ Copyright and Licensing</h3> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue</a></div><div class="ttdoc">Represents a JSON value. Use Value for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> document.h:57</div></div> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_string_buffer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_string_buffer.html">rapidjson::GenericStringBuffer</a></div><div class="ttdoc">Represents an in-memory output stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:59</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer.</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/istreamwrapper_8h_source.html b/istreamwrapper_8h_source.html index a3a8ef39..85cdbd09 100644 --- a/istreamwrapper_8h_source.html +++ b/istreamwrapper_8h_source.html @@ -219,7 +219,7 @@ $(document).ready(function(){initNavTree('istreamwrapper_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_basic_i_stream_wrapper_html"><div class="ttname"><a href="classrapidjson_1_1_basic_i_stream_wrapper.html">rapidjson::BasicIStreamWrapper</a></div><div class="ttdoc">Wrapper of std::basic_istream into RapidJSON's Stream concept.</div><div class="ttdef"><b>Definition:</b> istreamwrapper.h:49</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aclassrapidjson_1_1_basic_i_stream_wrapper_html_a2b4e069522fa9119685f1cee836e5cfa"><div class="ttname"><a href="classrapidjson_1_1_basic_i_stream_wrapper.html#a2b4e069522fa9119685f1cee836e5cfa">rapidjson::BasicIStreamWrapper::BasicIStreamWrapper</a></div><div class="ttdeci">BasicIStreamWrapper(StreamType &stream)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> istreamwrapper.h:57</div></div> <div class="ttc" id="aclassrapidjson_1_1_basic_i_stream_wrapper_html_acd380a93ccc01d02aef95ea2a926e154"><div class="ttname"><a href="classrapidjson_1_1_basic_i_stream_wrapper.html#acd380a93ccc01d02aef95ea2a926e154">rapidjson::BasicIStreamWrapper::BasicIStreamWrapper</a></div><div class="ttdeci">BasicIStreamWrapper(StreamType &stream, char *buffer, size_t bufferSize)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> istreamwrapper.h:67</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/itoa_8h_source.html b/itoa_8h_source.html index 4a2f4a5c..7e278b7c 100644 --- a/itoa_8h_source.html +++ b/itoa_8h_source.html @@ -398,7 +398,7 @@ $(document).ready(function(){initNavTree('itoa_8h_source.html','');}); <div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor">#endif // RAPIDJSON_ITOA_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/md_doc_dom.html b/md_doc_dom.html index db72fc38..742b6d56 100644 --- a/md_doc_dom.html +++ b/md_doc_dom.html @@ -357,15 +357,15 @@ User Buffer</h2> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue</a></div><div class="ttdoc">Represents a JSON value. Use Value for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> document.h:57</div></div> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2348</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2615</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> <div class="ttc" id="astructrapidjson_1_1_auto_u_t_f_html"><div class="ttname"><a href="structrapidjson_1_1_auto_u_t_f.html">rapidjson::AutoUTF</a></div><div class="ttdoc">Dynamically select encoding according to stream's runtime-specified UTF encoding type.</div><div class="ttdef"><b>Definition:</b> encodings.h:615</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7ba626bf84eb45a9bca0b7723bf47f3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string.</div><div class="ttdef"><b>Definition:</b> document.h:2391</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7ba626bf84eb45a9bca0b7723bf47f3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string.</div><div class="ttdef"><b>Definition:</b> document.h:2658</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_input_stream.html">rapidjson::AutoUTFInputStream</a></div><div class="ttdoc">Input stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:135</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gabdaf1a7a4db30fb0e3d927fdf0fabe79"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79">rapidjson::GetParseError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)</div><div class="ttdoc">Maps error code of parsing into error message.</div><div class="ttdef"><b>Definition:</b> en.h:36</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/md_doc_encoding.html b/md_doc_encoding.html index 63208a85..9f264b25 100644 --- a/md_doc_encoding.html +++ b/md_doc_encoding.html @@ -218,7 +218,7 @@ Transcoder</h2> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer.</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> <div class="ttc" id="astructrapidjson_1_1_u_t_f8_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f8.html">rapidjson::UTF8</a></div><div class="ttdoc">UTF-8 encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:96</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/md_doc_faq.html b/md_doc_faq.html index 7adbde0a..56a23059 100644 --- a/md_doc_faq.html +++ b/md_doc_faq.html @@ -323,9 +323,9 @@ Gossip</h1> </div></div><!-- contents --> </div><!-- PageDoc --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/md_doc_pointer.html b/md_doc_pointer.html index bade55b9..040ad2a2 100644 --- a/md_doc_pointer.html +++ b/md_doc_pointer.html @@ -287,8 +287,8 @@ User-Supplied Tokens</h1> </div><!-- PageDoc --> </div><!-- doc-content --> <div class="ttc" id="anamespacerapidjson_html_a080910f74d2f5046e6724280159cf374"><div class="ttname"><a href="namespacerapidjson.html#a080910f74d2f5046e6724280159cf374">rapidjson::Pointer</a></div><div class="ttdeci">GenericPointer< Value, CrtAllocator > Pointer</div><div class="ttdoc">GenericPointer for Value (UTF-8, default allocator).</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/md_doc_sax.html b/md_doc_sax.html index dcbb13fb..a00ffc49 100644 --- a/md_doc_sax.html +++ b/md_doc_sax.html @@ -518,7 +518,7 @@ Filtering of JSON</h2> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7d3acf640886b1f2552dc8c4cd6dea60"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">rapidjson::ParseErrorCode</a></div><div class="ttdeci">ParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> error.h:64</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_write_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_write_stream.html">rapidjson::FileWriteStream</a></div><div class="ttdoc">Wrapper of C file stream for output using fwrite().</div><div class="ttdef"><b>Definition:</b> filewritestream.h:32</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ac9c540b77de19661f6f45e04b9b0937b"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b">rapidjson::GenericReader::Parse</a></div><div class="ttdeci">ParseResult Parse(InputStream &is, Handler &handler)</div><div class="ttdoc">Parse JSON text.</div><div class="ttdef"><b>Definition:</b> reader.h:559</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader</a></div><div class="ttdoc">SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_a042c621cf745c5ed3a6f5ff9418dd05e"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#a042c621cf745c5ed3a6f5ff9418dd05e">rapidjson::GenericReader::GetParseErrorCode</a></div><div class="ttdeci">ParseErrorCode GetParseErrorCode() const</div><div class="ttdoc">Get the ParseErrorCode of last parsing.</div><div class="ttdef"><b>Definition:</b> reader.h:685</div></div> @@ -527,7 +527,7 @@ Filtering of JSON</h2> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9a5640cb00db7814b7f22be3683dda9835"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a5640cb00db7814b7f22be3683dda9835">rapidjson::kParseDefaultFlags</a></div><div class="ttdoc">Default parse flags. Can be customized by defining RAPIDJSON_PARSE_DEFAULT_FLAGS.</div><div class="ttdef"><b>Definition:</b> reader.h:158</div></div> <div class="ttc" id="astructrapidjson_1_1_base_reader_handler_html"><div class="ttname"><a href="structrapidjson_1_1_base_reader_handler.html">rapidjson::BaseReaderHandler</a></div><div class="ttdoc">Default implementation of Handler.</div><div class="ttdef"><b>Definition:</b> fwd.h:85</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer.</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <div class="ttc" id="anamespacerapidjson_html_ad5310edd1226f5b3ea82dc0d4d3740c6"><div class="ttname"><a href="namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6">rapidjson::Reader</a></div><div class="ttdeci">GenericReader< UTF8< char >, UTF8< char >, CrtAllocator > Reader</div><div class="ttdoc">Reader with UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gabdaf1a7a4db30fb0e3d927fdf0fabe79"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79">rapidjson::GetParseError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)</div><div class="ttdoc">Maps error code of parsing into error message.</div><div class="ttdef"><b>Definition:</b> en.h:36</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ab50019e0a715320f83b7610b83dcef8f"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ab50019e0a715320f83b7610b83dcef8f">rapidjson::GenericReader::GetErrorOffset</a></div><div class="ttdeci">size_t GetErrorOffset() const</div><div class="ttdoc">Get the position of last parsing error in input, 0 otherwise.</div><div class="ttdef"><b>Definition:</b> reader.h:688</div></div> diff --git a/md_doc_schema.html b/md_doc_schema.html index 9f5e7358..afb515ab 100644 --- a/md_doc_schema.html +++ b/md_doc_schema.html @@ -517,7 +517,7 @@ not</h3> </div><!-- doc-content --> <div class="ttc" id="anamespacerapidjson_html_a52bbb5d64d1319495089e1713a0653cf"><div class="ttname"><a href="namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf">rapidjson::SchemaDocument</a></div><div class="ttdeci">GenericSchemaDocument< Value, CrtAllocator > SchemaDocument</div><div class="ttdoc">GenericSchemaDocument using Value type.</div><div class="ttdef"><b>Definition:</b> fwd.h:136</div></div> <div class="ttc" id="anamespacerapidjson_html_ac0765ea91f41539645c4b78689d03f21"><div class="ttname"><a href="namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21">rapidjson::StringBuffer</a></div><div class="ttdeci">GenericStringBuffer< UTF8< char >, CrtAllocator > StringBuffer</div><div class="ttdoc">String buffer with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> fwd.h:59</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/md_doc_stream.html b/md_doc_stream.html index b4824d0b..a3b375ac 100644 --- a/md_doc_stream.html +++ b/md_doc_stream.html @@ -451,19 +451,19 @@ Summary</h1> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> <div class="ttc" id="aclassrapidjson_1_1_encoded_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_encoded_input_stream.html">rapidjson::EncodedInputStream</a></div><div class="ttdoc">Input byte stream wrapper with a statically bound encoding.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:39</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html">rapidjson::GenericStringStream</a></div><div class="ttdoc">Read-only string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:47</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2348</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2615</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_write_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_write_stream.html">rapidjson::FileWriteStream</a></div><div class="ttdoc">Wrapper of C file stream for output using fwrite().</div><div class="ttdef"><b>Definition:</b> filewritestream.h:32</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> <div class="ttc" id="aclassrapidjson_1_1_basic_i_stream_wrapper_html"><div class="ttname"><a href="classrapidjson_1_1_basic_i_stream_wrapper.html">rapidjson::BasicIStreamWrapper</a></div><div class="ttdoc">Wrapper of std::basic_istream into RapidJSON's Stream concept.</div><div class="ttdef"><b>Definition:</b> istreamwrapper.h:49</div></div> <div class="ttc" id="astructrapidjson_1_1_auto_u_t_f_html"><div class="ttname"><a href="structrapidjson_1_1_auto_u_t_f.html">rapidjson::AutoUTF</a></div><div class="ttdoc">Dynamically select encoding according to stream's runtime-specified UTF encoding type.</div><div class="ttdef"><b>Definition:</b> encodings.h:615</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> <div class="ttc" id="anamespacerapidjson_html_ac0765ea91f41539645c4b78689d03f21"><div class="ttname"><a href="namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21">rapidjson::StringBuffer</a></div><div class="ttdeci">GenericStringBuffer< UTF8< char >, CrtAllocator > StringBuffer</div><div class="ttdoc">String buffer with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> fwd.h:59</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer.</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eb"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb">rapidjson::UTFType</a></div><div class="ttdeci">UTFType</div><div class="ttdoc">Runtime-specified UTF encoding type of a stream.</div><div class="ttdef"><b>Definition:</b> encodings.h:603</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_output_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_output_stream.html">rapidjson::AutoUTFOutputStream</a></div><div class="ttdoc">Output stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:233</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_input_stream.html">rapidjson::AutoUTFInputStream</a></div><div class="ttdoc">Input stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:135</div></div> <div class="ttc" id="astructrapidjson_1_1_u_t_f16_l_e_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f16_l_e.html">rapidjson::UTF16LE</a></div><div class="ttdoc">UTF-16 little endian encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:342</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/md_doc_tutorial.html b/md_doc_tutorial.html index 7cbd85e6..ad367d40 100644 --- a/md_doc_tutorial.html +++ b/md_doc_tutorial.html @@ -495,15 +495,15 @@ What's next</h1> </div><!-- doc-content --> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_aa6b9fd9f6aa49405a574c362ba9af6b5"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5">rapidjson::GenericStringRef::StringRef</a></div><div class="ttdeci">GenericStringRef< CharType > StringRef(const CharType *str)</div><div class="ttdoc">Mark a character pointer as constant string.</div><div class="ttdef"><b>Definition:</b> document.h:445</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ad92c6cd025d411258d1f2ad890e2ee3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">rapidjson::GenericDocument::GetAllocator</a></div><div class="ttdeci">Allocator & GetAllocator()</div><div class="ttdoc">Get the allocator of this document.</div><div class="ttdef"><b>Definition:</b> document.h:2501</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ad92c6cd025d411258d1f2ad890e2ee3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">rapidjson::GenericDocument::GetAllocator</a></div><div class="ttdeci">Allocator & GetAllocator()</div><div class="ttdoc">Get the allocator of this document.</div><div class="ttdef"><b>Definition:</b> document.h:2768</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/memorystream_8h_source.html b/memorystream_8h_source.html index 7837f159..21f5bd83 100644 --- a/memorystream_8h_source.html +++ b/memorystream_8h_source.html @@ -164,10 +164,10 @@ $(document).ready(function(){initNavTree('memorystream_8h_source.html','');}); <div class="ttc" id="astructrapidjson_1_1_memory_stream_html_a8c8437d59c32168a74226312d9e96ace"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace">rapidjson::MemoryStream::size_</a></div><div class="ttdeci">size_t size_</div><div class="ttdoc">Size of the stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:62</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html">rapidjson::MemoryStream</a></div><div class="ttdoc">Represents an in-memory input byte stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:40</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html_a47f45298891e8156121b4017954fabe8"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html#a47f45298891e8156121b4017954fabe8">rapidjson::MemoryStream::end_</a></div><div class="ttdeci">const Ch * end_</div><div class="ttdoc">End of stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:61</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html_a1cc586e50fbfc0bd5994977b42243b93"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html#a1cc586e50fbfc0bd5994977b42243b93">rapidjson::MemoryStream::begin_</a></div><div class="ttdeci">const Ch * begin_</div><div class="ttdoc">Original head of the string.</div><div class="ttdef"><b>Definition:</b> memorystream.h:60</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html_ac0b4da6016e5ba6241604fd4258fb722"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722">rapidjson::MemoryStream::src_</a></div><div class="ttdeci">const Ch * src_</div><div class="ttdoc">Current read position.</div><div class="ttdef"><b>Definition:</b> memorystream.h:59</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/meta_8h_source.html b/meta_8h_source.html index e4b39761..0e075509 100644 --- a/meta_8h_source.html +++ b/meta_8h_source.html @@ -276,9 +276,9 @@ $(document).ready(function(){initNavTree('meta_8h_source.html','');}); <div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor">#endif // RAPIDJSON_INTERNAL_META_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:458</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/navtreedata.js b/navtreedata.js index cc9405a6..5b34ae59 100644 --- a/navtreedata.js +++ b/navtreedata.js @@ -308,10 +308,10 @@ var NAVTREEINDEX = [ "allocators_8h_source.html", "classrapidjson_1_1_generic_object.html#a90e43c69c44aba575dd7a662155bd6d2", -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa83126491228c86f6858706d21663adbb", -"fwd_8h_source.html", -"md_doc_sax.html#GenericReader", -"structrapidjson_1_1_generic_value_1_1_short_string.html#ac39a049dc7bca3f337ed858686065752" +"classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c", +"error_8h_source.html", +"md_doc_pointer.html#JsonPointer", +"structrapidjson_1_1_generic_value_1_1_number_1_1_u.html#a5e882e180f56ea6cc4fd1e1d508e5a63" ]; var SYNCONMSG = 'click to disable panel synchronisation'; diff --git a/navtreeindex1.js b/navtreeindex1.js index 5ef83e3d..e38eeea9 100644 --- a/navtreeindex1.js +++ b/navtreeindex1.js @@ -195,23 +195,25 @@ var NAVTREEINDEX1 = "classrapidjson_1_1_generic_string_buffer.html#ae70a632053e258c7c431e0e35b095c84":[14,0,0,26,12], "classrapidjson_1_1_generic_string_buffer.html#afb41bae09405ddd9aa9250ac47ab235e":[14,0,0,26,7], "classrapidjson_1_1_generic_value.html":[14,0,0,29], -"classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e":[14,0,0,29,69], -"classrapidjson_1_1_generic_value.html#a019c4c8beb3c6d675a03f2f72ba9c6b8":[14,0,0,29,71], +"classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e":[14,0,0,29,78], +"classrapidjson_1_1_generic_value.html#a019c4c8beb3c6d675a03f2f72ba9c6b8":[14,0,0,29,80], "classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559":[14,0,0,29,14], "classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d":[14,0,0,29,13], +"classrapidjson_1_1_generic_value.html#a0655ea1a6fb2cf09f845a4e50b6b961f":[14,0,0,29,70], "classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e":[14,0,0,29,18], -"classrapidjson_1_1_generic_value.html#a19199230941f1fe59b5b6a27281fcd1b":[14,0,0,29,72], -"classrapidjson_1_1_generic_value.html#a19e954a8f4731fea785abe0defa0ac44":[14,0,0,29,77], -"classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac":[14,0,0,29,73], +"classrapidjson_1_1_generic_value.html#a19199230941f1fe59b5b6a27281fcd1b":[14,0,0,29,81], +"classrapidjson_1_1_generic_value.html#a19e954a8f4731fea785abe0defa0ac44":[14,0,0,29,86], +"classrapidjson_1_1_generic_value.html#a1c2162a0a065a59bf465497e5110788c":[14,0,0,29,65], +"classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac":[14,0,0,29,82], "classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563":[14,0,0,29,52], -"classrapidjson_1_1_generic_value.html#a1f56ed626112cc824a93b6c29afc0cea":[14,0,0,29,64], -"classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835":[14,0,0,29,75], +"classrapidjson_1_1_generic_value.html#a1f56ed626112cc824a93b6c29afc0cea":[14,0,0,29,73], +"classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835":[14,0,0,29,84], "classrapidjson_1_1_generic_value.html#a39f5e1993897a86741b55c32ed4f54ef":[14,0,0,29,12], "classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437":[14,0,0,29,62], -"classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7":[14,0,0,29,79], +"classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7":[14,0,0,29,88], "classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6":[14,0,0,29,50], "classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1":[14,0,0,29,55], -"classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0":[14,0,0,29,68], +"classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0":[14,0,0,29,77], "classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379":[14,0,0,29,17], "classrapidjson_1_1_generic_value.html#a5d47340c96346c5028fee4c9068d783d":[14,0,0,29,7], "classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58":[14,0,0,29,46], @@ -219,35 +221,33 @@ var NAVTREEINDEX1 = "classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f":[14,0,0,29,11], "classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a":[14,0,0,29,53], "classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8":[14,0,0,29,60], -"classrapidjson_1_1_generic_value.html#a7d1d50ccd6639e29231b3f67d94c9ecf":[14,0,0,29,80], +"classrapidjson_1_1_generic_value.html#a7d1d50ccd6639e29231b3f67d94c9ecf":[14,0,0,29,89], +"classrapidjson_1_1_generic_value.html#a7e5cf02ff6ee4938b672d98258a79546":[14,0,0,29,69], "classrapidjson_1_1_generic_value.html#a81291ad1031afe43aca4719e2989d7dc":[14,0,0,29,8], "classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f":[14,0,0,29,58], "classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc":[14,0,0,29,59], "classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e":[14,0,0,29,61], "classrapidjson_1_1_generic_value.html#a8fb89523de7b22be0c69069f05d04b41":[14,0,0,29,10], -"classrapidjson_1_1_generic_value.html#a9cc2eb5c196affb861560219a4973dd0":[14,0,0,29,70], -"classrapidjson_1_1_generic_value.html#ab05bc9e52e201a2867ea5bac141ee1ae":[14,0,0,29,78], -"classrapidjson_1_1_generic_value.html#ab562c68bda956d38f6c5bd1c47e20213":[14,0,0,29,65], +"classrapidjson_1_1_generic_value.html#a9125585f7d3315da5e9aec2b5587bb7d":[14,0,0,29,64], +"classrapidjson_1_1_generic_value.html#a92627391393b9aa6245275593040cf0a":[14,0,0,29,63], +"classrapidjson_1_1_generic_value.html#a94105ff1a8eeb895cee95fb4eca7781b":[14,0,0,29,68], +"classrapidjson_1_1_generic_value.html#a98ce0a47cc6951eb7ee106160e3b637a":[14,0,0,29,67], +"classrapidjson_1_1_generic_value.html#a9cc2eb5c196affb861560219a4973dd0":[14,0,0,29,79], +"classrapidjson_1_1_generic_value.html#ab05bc9e52e201a2867ea5bac141ee1ae":[14,0,0,29,87], +"classrapidjson_1_1_generic_value.html#ab562c68bda956d38f6c5bd1c47e20213":[14,0,0,29,74], "classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9":[14,0,0,29,48], "classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19":[14,0,0,29,49], -"classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c":[14,0,0,29,76], -"classrapidjson_1_1_generic_value.html#abfbb8243823943bb75f9bb8543e59d1e":[14,0,0,29,74], +"classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c":[14,0,0,29,85], +"classrapidjson_1_1_generic_value.html#abfbb8243823943bb75f9bb8543e59d1e":[14,0,0,29,83], +"classrapidjson_1_1_generic_value.html#aca2fab62d3450b24d46cc9841ed8cfef":[14,0,0,29,66], "classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b":[14,0,0,29,15], "classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8":[14,0,0,29,51], "classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5":[14,0,0,29,45], "classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202":[14,0,0,29,19], +"classrapidjson_1_1_generic_value.html#ad4451b6417bf2ada4d8b56ba0b3b6031":[14,0,0,29,71], "classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2":[14,0,0,29,57], "classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac":[14,0,0,29,47], "classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4":[14,0,0,29,9], "classrapidjson_1_1_generic_value.html#ae1b1a60a9c69ce5ac48b8c445e3e9231":[14,0,0,29,16], -"classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac":[14,0,0,29,66], -"classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c":[14,0,0,29,67], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa1c975cbe158db5f7d0f0f21fd2a5d21b":[14,0,0,29,27], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa1ea62c509fe8cbf11e98e5a4b534dc80":[14,0,0,29,31], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2123664d6bfcad55133a459ee15e1105":[14,0,0,29,37], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa27cb7107112927ff50c61388ad5c94ac":[14,0,0,29,36], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2810cb4d3c04174d0c3d100d64507a84":[14,0,0,29,32], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2db564c128104305e42930694a170da4":[14,0,0,29,26], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa70b4aa8d262bbad9b75f378836653378":[14,0,0,29,43], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa79d4762b164cc9f10cf1ea1874bec517":[14,0,0,29,39] +"classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac":[14,0,0,29,75] }; diff --git a/navtreeindex2.js b/navtreeindex2.js index ff9ead7f..f480001e 100644 --- a/navtreeindex2.js +++ b/navtreeindex2.js @@ -1,5 +1,14 @@ var NAVTREEINDEX2 = { +"classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c":[14,0,0,29,76], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa1c975cbe158db5f7d0f0f21fd2a5d21b":[14,0,0,29,27], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa1ea62c509fe8cbf11e98e5a4b534dc80":[14,0,0,29,31], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2123664d6bfcad55133a459ee15e1105":[14,0,0,29,37], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa27cb7107112927ff50c61388ad5c94ac":[14,0,0,29,36], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2810cb4d3c04174d0c3d100d64507a84":[14,0,0,29,32], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2db564c128104305e42930694a170da4":[14,0,0,29,26], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa70b4aa8d262bbad9b75f378836653378":[14,0,0,29,43], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa79d4762b164cc9f10cf1ea1874bec517":[14,0,0,29,39], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa83126491228c86f6858706d21663adbb":[14,0,0,29,30], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa85ff6bc88aa819a240a1e38016b3084e":[14,0,0,29,44], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa8783e10b5dc4d4938e609a35fe9639b0":[14,0,0,29,22], @@ -17,7 +26,7 @@ var NAVTREEINDEX2 = "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaadb1d00e419c06f227ac65f4c1b1f0118":[14,0,0,29,21], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaaedfdee10bf43991c4181758c86b3aaea":[14,0,0,29,29], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaaef20be24474b0e9ffee7d02bd00190e1":[14,0,0,29,24], -"classrapidjson_1_1_generic_value.html#af2475845538fccc217d8cf3e94d6a5e0":[14,0,0,29,63], +"classrapidjson_1_1_generic_value.html#af2475845538fccc217d8cf3e94d6a5e0":[14,0,0,29,72], "classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b":[14,0,0,29,54], "classrapidjson_1_1_handler.html":[14,0,3], "classrapidjson_1_1_i_generic_remote_schema_document_provider.html":[14,0,0,30], @@ -240,14 +249,5 @@ var NAVTREEINDEX2 = "error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab707b848425668e765def25554735242":[15,0,0,0,0,1,2,4], "error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57":[15,0,0,0,0,1,2,3], "error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f":[15,0,0,0,0,1,2,14], -"error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60af7daa91caa53abb881ea231a874a4f40":[15,0,0,0,0,1,2,11], -"error_8h_source.html":[15,0,0,0,0,1], -"filereadstream_8h_source.html":[15,0,0,0,7], -"files.html":[15,0], -"filewritestream_8h_source.html":[15,0,0,0,8], -"functions.html":[14,2,0], -"functions_func.html":[14,2,1], -"functions_rela.html":[14,2,4], -"functions_type.html":[14,2,3], -"functions_vars.html":[14,2,2] +"error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60af7daa91caa53abb881ea231a874a4f40":[15,0,0,0,0,1,2,11] }; diff --git a/navtreeindex3.js b/navtreeindex3.js index 46790665..89b541aa 100644 --- a/navtreeindex3.js +++ b/navtreeindex3.js @@ -1,18 +1,27 @@ var NAVTREEINDEX3 = { +"error_8h_source.html":[15,0,0,0,0,1], +"filereadstream_8h_source.html":[15,0,0,0,7], +"files.html":[15,0], +"filewritestream_8h_source.html":[15,0,0,0,8], +"functions.html":[14,2,0], +"functions_func.html":[14,2,1], +"functions_rela.html":[14,2,4], +"functions_type.html":[14,2,3], +"functions_vars.html":[14,2,2], "fwd_8h_source.html":[15,0,0,0,9], "globals.html":[15,1,0], "globals_defs.html":[15,1,1], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html":[12,0], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga04a88f0b2db9091006eb7fc6deb6077b":[12,0,4], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga04a88f0b2db9091006eb7fc6deb6077b":[15,0,0,0,4,20], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga04a88f0b2db9091006eb7fc6deb6077b":[12,0,4], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b":[15,0,0,0,16,23], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b":[12,0,17], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7":[12,0,20], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7":[15,0,0,0,4,22], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7":[12,0,21], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1178cffff7c596922a5ed3fda30c5520":[15,0,0,0,4,21], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1178cffff7c596922a5ed3fda30c5520":[12,0,5], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6":[12,0,23], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6":[12,0,24], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f":[15,0,0,0,16,18], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f":[12,0,13], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952":[15,0,0,0,16,19], @@ -21,8 +30,8 @@ var NAVTREEINDEX3 = "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f":[12,0,7], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242":[15,0,0,0,16,2], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242":[12,0,1], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272":[12,0,22], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272":[15,0,0,0,4,23], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272":[12,0,21], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1":[15,0,0,0,16,10], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1":[12,0,8], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5":[15,0,0,0,16,26], @@ -34,15 +43,17 @@ var NAVTREEINDEX3 = "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c":[15,0,0,0,16,17], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c":[12,0,12], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5":[12,0,2], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc":[12,0,19], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185":[15,0,0,0,16,0], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b":[15,0,0,0,16,27], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b":[12,0,19], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc":[12,0,20], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185":[12,0,0], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185":[15,0,0,0,16,0], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07":[15,0,0,0,16,6], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07":[12,0,6], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c":[15,0,0,0,16,3], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c":[12,0,3], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6":[15,0,0,0,16,27], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6":[12,0,22], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6":[15,0,0,0,16,28], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6":[12,0,23], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf1ff1685be6cbebb5d4b2ab997776f45":[15,0,0,0,16,12], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf1ff1685be6cbebb5d4b2ab997776f45":[12,0,9], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf9125105c593a636a79f1c2d96835376":[15,0,0,0,16,14], @@ -238,16 +249,5 @@ var NAVTREEINDEX3 = "md_doc_pointer.html":[3], "md_doc_pointer.html#BasicUsage":[3,1], "md_doc_pointer.html#ErrorHandling":[3,4], -"md_doc_pointer.html#HelperFunctions":[3,2], -"md_doc_pointer.html#JsonPointer":[3,0], -"md_doc_pointer.html#ResolvingPointer":[3,3], -"md_doc_pointer.html#URIFragment":[3,5], -"md_doc_pointer.html#UserSuppliedTokens":[3,7], -"md_doc_pointer.html#autotoc_md51":[3,3,0], -"md_doc_pointer.html#autotoc_md52":[3,3,1], -"md_doc_pointer.html#autotoc_md53":[3,6], -"md_doc_sax.html":[7], -"md_doc_sax.html#CompletenessReset":[7,1,2], -"md_doc_sax.html#CustomDataStructure":[7,2,0], -"md_doc_sax.html#Filtering":[7,2,1] +"md_doc_pointer.html#HelperFunctions":[3,2] }; diff --git a/navtreeindex4.js b/navtreeindex4.js index 0e7a63e1..a2b6b062 100644 --- a/navtreeindex4.js +++ b/navtreeindex4.js @@ -1,5 +1,16 @@ var NAVTREEINDEX4 = { +"md_doc_pointer.html#JsonPointer":[3,0], +"md_doc_pointer.html#ResolvingPointer":[3,3], +"md_doc_pointer.html#URIFragment":[3,5], +"md_doc_pointer.html#UserSuppliedTokens":[3,7], +"md_doc_pointer.html#autotoc_md51":[3,3,0], +"md_doc_pointer.html#autotoc_md52":[3,3,1], +"md_doc_pointer.html#autotoc_md53":[3,6], +"md_doc_sax.html":[7], +"md_doc_sax.html#CompletenessReset":[7,1,2], +"md_doc_sax.html#CustomDataStructure":[7,2,0], +"md_doc_sax.html#Filtering":[7,2,1], "md_doc_sax.html#GenericReader":[7,0,1], "md_doc_sax.html#Handler":[7,0,0], "md_doc_sax.html#PrettyWriter":[7,1,1], @@ -102,7 +113,7 @@ var NAVTREEINDEX4 = "rapidjson_8h.html":[15,0,0,0,16], "rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27":[15,0,0,0,16,13], "rapidjson_8h.html#a113598c4750b3aab4de2782ff1865ed4":[15,0,0,0,16,22], -"rapidjson_8h.html#a44eb33eaa523e36d466b1ced64b85c84":[15,0,0,0,16,28], +"rapidjson_8h.html#a44eb33eaa523e36d466b1ced64b85c84":[15,0,0,0,16,29], "rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a":[15,0,0,0,16,5], "rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52":[15,0,0,0,16,1], "rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67":[15,0,0,0,16,21], @@ -112,14 +123,14 @@ var NAVTREEINDEX4 = "rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b":[15,0,0,0,16,16], "rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974":[15,0,0,0,16,4], "rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c":[15,0,0,0,16,11], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4":[15,0,0,0,16,29], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468":[15,0,0,0,16,29,4], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e":[15,0,0,0,16,29,2], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff":[15,0,0,0,16,29,0], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607":[15,0,0,0,16,29,1], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a":[15,0,0,0,16,29,6], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9":[15,0,0,0,16,29,3], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7":[15,0,0,0,16,29,5], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4":[15,0,0,0,16,30], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468":[15,0,0,0,16,30,4], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e":[15,0,0,0,16,30,2], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff":[15,0,0,0,16,30,0], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607":[15,0,0,0,16,30,1], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a":[15,0,0,0,16,30,6], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9":[15,0,0,0,16,30,3], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7":[15,0,0,0,16,30,5], "rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4":[15,0,0,0,16,24], "rapidjson_8h_source.html":[15,0,0,0,16], "reader_8h.html":[15,0,0,0,17], @@ -238,16 +249,5 @@ var NAVTREEINDEX4 = "structrapidjson_1_1_generic_value_1_1_number_1_1_i.html":[14,0,0,29,3,0], "structrapidjson_1_1_generic_value_1_1_number_1_1_i.html#ae0b11ea3695bf3abb23d5cef1f1517d2":[14,0,0,29,3,0,1], "structrapidjson_1_1_generic_value_1_1_number_1_1_i.html#aee43f62c5529fb886642fb410ff93a05":[14,0,0,29,3,0,0], -"structrapidjson_1_1_generic_value_1_1_number_1_1_u.html":[14,0,0,29,3,1], -"structrapidjson_1_1_generic_value_1_1_number_1_1_u.html#a5e882e180f56ea6cc4fd1e1d508e5a63":[14,0,0,29,3,1,0], -"structrapidjson_1_1_generic_value_1_1_number_1_1_u.html#aa624c2fe538411dd515dcfb0d72472b1":[14,0,0,29,3,1,1], -"structrapidjson_1_1_generic_value_1_1_object_data.html":[14,0,0,29,4], -"structrapidjson_1_1_generic_value_1_1_object_data.html#a9b9052818979866b380571d59c8178af":[14,0,0,29,4,1], -"structrapidjson_1_1_generic_value_1_1_object_data.html#ae01f535401624121d8180b5615f17c1d":[14,0,0,29,4,2], -"structrapidjson_1_1_generic_value_1_1_object_data.html#af7d0d82d23bebb85e425a7fd527463e4":[14,0,0,29,4,0], -"structrapidjson_1_1_generic_value_1_1_short_string.html":[14,0,0,29,5], -"structrapidjson_1_1_generic_value_1_1_short_string.html#a554140e81e30bb27c92b1074b0f34c0e":[14,0,0,29,5,3], -"structrapidjson_1_1_generic_value_1_1_short_string.html#a77aa02281a84b131e4d4eb3a13146815a78cfea23edd64c3767922023807ced64":[14,0,0,29,5,0], -"structrapidjson_1_1_generic_value_1_1_short_string.html#a77aa02281a84b131e4d4eb3a13146815a8e7b3228397abe6824e515799763198f":[14,0,0,29,5,1], -"structrapidjson_1_1_generic_value_1_1_short_string.html#a77aa02281a84b131e4d4eb3a13146815ac9ee3c47d8cbe0265c8bc0d5da4e08d9":[14,0,0,29,5,2] +"structrapidjson_1_1_generic_value_1_1_number_1_1_u.html":[14,0,0,29,3,1] }; diff --git a/navtreeindex5.js b/navtreeindex5.js index de096b9d..098f4078 100644 --- a/navtreeindex5.js +++ b/navtreeindex5.js @@ -1,5 +1,16 @@ var NAVTREEINDEX5 = { +"structrapidjson_1_1_generic_value_1_1_number_1_1_u.html#a5e882e180f56ea6cc4fd1e1d508e5a63":[14,0,0,29,3,1,0], +"structrapidjson_1_1_generic_value_1_1_number_1_1_u.html#aa624c2fe538411dd515dcfb0d72472b1":[14,0,0,29,3,1,1], +"structrapidjson_1_1_generic_value_1_1_object_data.html":[14,0,0,29,4], +"structrapidjson_1_1_generic_value_1_1_object_data.html#a9b9052818979866b380571d59c8178af":[14,0,0,29,4,1], +"structrapidjson_1_1_generic_value_1_1_object_data.html#ae01f535401624121d8180b5615f17c1d":[14,0,0,29,4,2], +"structrapidjson_1_1_generic_value_1_1_object_data.html#af7d0d82d23bebb85e425a7fd527463e4":[14,0,0,29,4,0], +"structrapidjson_1_1_generic_value_1_1_short_string.html":[14,0,0,29,5], +"structrapidjson_1_1_generic_value_1_1_short_string.html#a554140e81e30bb27c92b1074b0f34c0e":[14,0,0,29,5,3], +"structrapidjson_1_1_generic_value_1_1_short_string.html#a77aa02281a84b131e4d4eb3a13146815a78cfea23edd64c3767922023807ced64":[14,0,0,29,5,0], +"structrapidjson_1_1_generic_value_1_1_short_string.html#a77aa02281a84b131e4d4eb3a13146815a8e7b3228397abe6824e515799763198f":[14,0,0,29,5,1], +"structrapidjson_1_1_generic_value_1_1_short_string.html#a77aa02281a84b131e4d4eb3a13146815ac9ee3c47d8cbe0265c8bc0d5da4e08d9":[14,0,0,29,5,2], "structrapidjson_1_1_generic_value_1_1_short_string.html#ac39a049dc7bca3f337ed858686065752":[14,0,0,29,5,4], "structrapidjson_1_1_generic_value_1_1_short_string.html#af01f91b1cd1ed9a53a7dc2eb9022c1e0":[14,0,0,29,5,5], "structrapidjson_1_1_generic_value_1_1_string.html":[14,0,0,29,6], diff --git a/ostreamwrapper_8h_source.html b/ostreamwrapper_8h_source.html index 7df1821c..bc96ec84 100644 --- a/ostreamwrapper_8h_source.html +++ b/ostreamwrapper_8h_source.html @@ -172,7 +172,7 @@ $(document).ready(function(){initNavTree('ostreamwrapper_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_basic_o_stream_wrapper_html"><div class="ttname"><a href="classrapidjson_1_1_basic_o_stream_wrapper.html">rapidjson::BasicOStreamWrapper</a></div><div class="ttdoc">Wrapper of std::basic_ostream into RapidJSON's Stream concept.</div><div class="ttdef"><b>Definition:</b> ostreamwrapper.h:45</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/pointer_8h_source.html b/pointer_8h_source.html index cc56eed1..4d1f4db3 100644 --- a/pointer_8h_source.html +++ b/pointer_8h_source.html @@ -1509,7 +1509,7 @@ $(document).ready(function(){initNavTree('pointer_8h_source.html','');}); <div class="ttc" id="astructrapidjson_1_1_generic_pointer_1_1_token_html_ad866d674dbddf9690ad571b65e968600"><div class="ttname"><a href="structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600">rapidjson::GenericPointer::Token::length</a></div><div class="ttdeci">SizeType length</div><div class="ttdoc">Length of the name.</div><div class="ttdef"><b>Definition:</b> pointer.h:99</div></div> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a850f78846c5548565f8395be5f3427b7"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">rapidjson::GenericPointer::Ch</a></div><div class="ttdeci">ValueType::Ch Ch</div><div class="ttdoc">Character type from Value.</div><div class="ttdef"><b>Definition:</b> pointer.h:82</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a0e144b9956a5272c13ceff3b9306e748"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748">rapidjson::GenericPointer::~GenericPointer</a></div><div class="ttdeci">~GenericPointer()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> pointer.h:176</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_afedfcaac36fa589a46667825d3d0b763"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#afedfcaac36fa589a46667825d3d0b763">rapidjson::GenericPointer::GenericPointer</a></div><div class="ttdeci">GenericPointer(const GenericPointer &rhs, Allocator *allocator)</div><div class="ttdoc">Copy constructor.</div><div class="ttdef"><b>Definition:</b> pointer.h:171</div></div> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> @@ -1520,11 +1520,11 @@ $(document).ready(function(){initNavTree('pointer_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ggade540ee4cc2a416c23b8ee2c12393c7bae244a98f53279fda5a750f847b81c54f"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7bae244a98f53279fda5a750f847b81c54f">rapidjson::kPointerParseErrorCharacterMustPercentEncode</a></div><div class="ttdoc">A character must percent encoded in URI fragment.</div><div class="ttdef"><b>Definition:</b> pointer.h:43</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a399790c5fe8076d91a58c621c0c2a79e"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a399790c5fe8076d91a58c621c0c2a79e">rapidjson::GenericPointer::EncodingType</a></div><div class="ttdeci">ValueType::EncodingType EncodingType</div><div class="ttdoc">Encoding type from Value.</div><div class="ttdef"><b>Definition:</b> pointer.h:81</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a8798d7fdb02cd5b95bf032760aed8445"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445">rapidjson::GenericPointer::ownAllocator_</a></div><div class="ttdeci">Allocator * ownAllocator_</div><div class="ttdoc">Allocator owned by this Pointer.</div><div class="ttdef"><b>Definition:</b> pointer.h:1101</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a23194bb6ce6c07c78981344fe80ac3a6"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6">rapidjson::GenericPointer::operator=</a></div><div class="ttdeci">GenericPointer & operator=(const GenericPointer &rhs)</div><div class="ttdoc">Assignment operator.</div><div class="ttdef"><b>Definition:</b> pointer.h:183</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gade540ee4cc2a416c23b8ee2c12393c7b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b">rapidjson::PointerParseErrorCode</a></div><div class="ttdeci">PointerParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> pointer.h:37</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a8f831aae14afc493a82b5fb6aa9c3c43"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a8f831aae14afc493a82b5fb6aa9c3c43">rapidjson::GenericPointer::GenericPointer</a></div><div class="ttdeci">GenericPointer(const Ch *source, Allocator *allocator=0)</div><div class="ttdoc">Constructor that parses a string or URI fragment representation.</div><div class="ttdef"><b>Definition:</b> pointer.h:114</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a20d76ef128abbdd0acd87d2f1fb0ae34"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34">rapidjson::GenericPointer::parseErrorCode_</a></div><div class="ttdeci">PointerParseErrorCode parseErrorCode_</div><div class="ttdoc">Parsing error code.</div><div class="ttdef"><b>Definition:</b> pointer.h:1106</div></div> @@ -1532,8 +1532,8 @@ $(document).ready(function(){initNavTree('pointer_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ggade540ee4cc2a416c23b8ee2c12393c7ba907c9fe4e541b257513e3a18635379f7"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba907c9fe4e541b257513e3a18635379f7">rapidjson::kPointerParseErrorInvalidEscape</a></div><div class="ttdoc">Invalid escape.</div><div class="ttdef"><b>Definition:</b> pointer.h:41</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_aa077ce171ea25cf501c12f2d5df7f248"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#aa077ce171ea25cf501c12f2d5df7f248">rapidjson::GenericPointer::GenericPointer</a></div><div class="ttdeci">GenericPointer(Allocator *allocator=0)</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition:</b> pointer.h:107</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a></div><div class="ttdoc">Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_acb657759c16fa63da15186db8c29122b"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b">rapidjson::GenericPointer::tokenCount_</a></div><div class="ttdeci">size_t tokenCount_</div><div class="ttdoc">Number of tokens in tokens_.</div><div class="ttdef"><b>Definition:</b> pointer.h:1104</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a7cb5eda2af1722e52efa591c4103ebec"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec">rapidjson::GenericPointer::Append</a></div><div class="ttdeci">GenericPointer Append(const Token &token, Allocator *allocator=0) const</div><div class="ttdoc">Append a token and return a new Pointer.</div><div class="ttdef"><b>Definition:</b> pointer.h:244</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_aeefcd60e5ad37d80ec43f5315ae84809"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#aeefcd60e5ad37d80ec43f5315ae84809">rapidjson::GenericPointer::GenericPointer</a></div><div class="ttdeci">GenericPointer(const std::basic_string< Ch > &source, Allocator *allocator=0)</div><div class="ttdoc">Constructor that parses a string or URI fragment representation.</div><div class="ttdef"><b>Definition:</b> pointer.h:125</div></div> diff --git a/pow10_8h_source.html b/pow10_8h_source.html index 2db24764..8b230eee 100644 --- a/pow10_8h_source.html +++ b/pow10_8h_source.html @@ -145,7 +145,7 @@ $(document).ready(function(){initNavTree('pow10_8h_source.html','');}); <div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor">#endif // RAPIDJSON_POW10_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/prettywriter_8h_source.html b/prettywriter_8h_source.html index 79a76e03..e653d0eb 100644 --- a/prettywriter_8h_source.html +++ b/prettywriter_8h_source.html @@ -368,24 +368,24 @@ $(document).ready(function(){initNavTree('prettywriter_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="anamespacerapidjson_html_a084b31753ef2edefdeca8a5374eccc4b"><div class="ttname"><a href="namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b">rapidjson::PrettyFormatOptions</a></div><div class="ttdeci">PrettyFormatOptions</div><div class="ttdoc">Combination of PrettyWriter format flags.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:35</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="anamespacerapidjson_html_a084b31753ef2edefdeca8a5374eccc4ba64b0f8a37ab3125118682046ff06500f"><div class="ttname"><a href="namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba64b0f8a37ab3125118682046ff06500f">rapidjson::kFormatSingleLineArray</a></div><div class="ttdoc">Format arrays on a single line.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:37</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_a3136e3426a5d06e5da50f6e6aab8a5be"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be">rapidjson::PrettyWriter::RawValue</a></div><div class="ttdeci">bool RawValue(const Ch *json, size_t length, Type type)</div><div class="ttdoc">Write a raw JSON value.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:201</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_acde6176577f29869e28a4f3c4a251090"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090">rapidjson::PrettyWriter::SetFormatOptions</a></div><div class="ttdeci">PrettyWriter & SetFormatOptions(PrettyFormatOptions options)</div><div class="ttdoc">Set pretty writer formatting options.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:85</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_a121686c29ca7fe071fa4108c46955ff0"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0">rapidjson::PrettyWriter::SetIndent</a></div><div class="ttdeci">PrettyWriter & SetIndent(Ch indentChar, unsigned indentCharCount)</div><div class="ttdoc">Set custom indentation.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:75</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_a688d7ebf5c8015e423b7a970afc8e0a0"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0">rapidjson::PrettyWriter::PrettyWriter</a></div><div class="ttdeci">PrettyWriter(OutputStream &os, StackAllocator *allocator=0, size_t levelDepth=Base::kDefaultLevelDepth)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:58</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html">rapidjson::PrettyWriter</a></div><div class="ttdoc">Writer with indentation and spacing.</div><div class="ttdef"><b>Definition:</b> fwd.h:100</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> <div class="ttc" id="anamespacerapidjson_html_a084b31753ef2edefdeca8a5374eccc4ba8164b0d4993439856171585b9cf3adc0"><div class="ttname"><a href="namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba8164b0d4993439856171585b9cf3adc0">rapidjson::kFormatDefault</a></div><div class="ttdoc">Default pretty formatting.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:36</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer.</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_a363c2280393e27e19bceb8d015c2832c"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c">rapidjson::PrettyWriter::String</a></div><div class="ttdeci">bool String(const Ch *str)</div><div class="ttdoc">Simpler but slower overload.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:187</div></div> <div class="ttc" id="anamespacerapidjson_html_a1ac13bac5976fc06587e00fc0bcfb32a"><div class="ttname"><a href="namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a">rapidjson::PutN</a></div><div class="ttdeci">void PutN(FileWriteStream &stream, char c, size_t n)</div><div class="ttdoc">Implement specialized version of PutN() with memset() for better performance.</div><div class="ttdef"><b>Definition:</b> filewritestream.h:94</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/rapidjson_8h.html b/rapidjson_8h.html index 071a7159..9e69d70a 100644 --- a/rapidjson_8h.html +++ b/rapidjson_8h.html @@ -133,6 +133,9 @@ Macros</h2></td></tr> <tr class="memitem:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f">RAPIDJSON_HAS_STDSTRING</a></td></tr> <tr class="memdesc:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="mdescLeft"> </td><td class="mdescRight">Enable RapidJSON support for <code>std::string</code>. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f">More...</a><br /></td></tr> <tr class="separator:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga87dc65109882910388121e1dba15038b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">RAPIDJSON_USE_MEMBERSMAP</a></td></tr> +<tr class="memdesc:ga87dc65109882910388121e1dba15038b"><td class="mdescLeft"> </td><td class="mdescRight">Enable RapidJSON support for object members handling in a <code>std::multimap</code>. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">More...</a><br /></td></tr> +<tr class="separator:ga87dc65109882910388121e1dba15038b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c">RAPIDJSON_NO_INT64DEFINE</a></td></tr> <tr class="memdesc:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="mdescLeft"> </td><td class="mdescRight">Use external 64-bit integer types. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c">More...</a><br /></td></tr> <tr class="separator:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="memSeparator" colspan="2"> </td></tr> diff --git a/rapidjson_8h.js b/rapidjson_8h.js index 6054f280..78d4ab42 100644 --- a/rapidjson_8h.js +++ b/rapidjson_8h.js @@ -27,6 +27,7 @@ var rapidjson_8h = [ "RAPIDJSON_STATIC_ASSERT", "rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4", null ], [ "RAPIDJSON_UINT64_C2", "rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f", null ], [ "RAPIDJSON_UNLIKELY", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5", null ], + [ "RAPIDJSON_USE_MEMBERSMAP", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b", null ], [ "RAPIDJSON_VERSION_STRING", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6", null ], [ "SizeType", "rapidjson_8h.html#a44eb33eaa523e36d466b1ced64b85c84", null ], [ "Type", "rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4", [ diff --git a/rapidjson_8h_source.html b/rapidjson_8h_source.html index 82e8a189..8c55bcb6 100644 --- a/rapidjson_8h_source.html +++ b/rapidjson_8h_source.html @@ -253,571 +253,593 @@ $(document).ready(function(){initNavTree('rapidjson_8h_source.html','');}); <div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_STDSTRING</span></div> <div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment"></span> </div> <div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment"></span><span class="comment">// RAPIDJSON_USE_MEMBERSMAP</span></div> <div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment"></span> </div> -<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment">/*! \def RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment">/*! \def RAPIDJSON_USE_MEMBERSMAP</span></div> <div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment"> \brief Use external 64-bit integer types.</span></div> +<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment"> \brief Enable RapidJSON support for object members handling in a \c std::multimap</span></div> <div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="comment"></span> </div> -<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment"> RapidJSON requires the 64-bit integer types \c int64_t and \c uint64_t types</span></div> -<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="comment"> to be available at global scope.</span></div> -<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment"></span> </div> -<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment"> If users have their own definition, define RAPIDJSON_NO_INT64DEFINE to</span></div> -<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="comment"> prevent RapidJSON from defining its own types.</span></div> -<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor">#ifndef RAPIDJSON_NO_INT64DEFINE</span></div> -<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> -<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="comment"></span><span class="preprocessor">#if defined(_MSC_VER) && (_MSC_VER < 1800) // Visual Studio 2013</span></div> -<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor">#include "msinttypes/stdint.h"</span></div> -<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor">#include "msinttypes/inttypes.h"</span></div> -<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment">// Other compilers should have this.</span></div> -<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor">#include <stdint.h></span></div> -<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor">#include <inttypes.h></span></div> -<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment">//!@endcond</span></div> -<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"></span><span class="preprocessor">#ifdef RAPIDJSON_DOXYGEN_RUNNING</span></div> -<div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c"> 190</a></span> <span class="preprocessor">#define RAPIDJSON_NO_INT64DEFINE</span></div> -<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="preprocessor">#endif // RAPIDJSON_NO_INT64TYPEDEF</span></div> -<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"></span> </div> -<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment"></span><span class="comment">// RAPIDJSON_FORCEINLINE</span></div> -<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  </div> -<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor">#ifndef RAPIDJSON_FORCEINLINE</span></div> -<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> -<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="comment"></span><span class="preprocessor">#if defined(_MSC_VER) && defined(NDEBUG)</span></div> -<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE __forceinline</span></div> -<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="preprocessor">#elif defined(__GNUC__) && __GNUC__ >= 4 && defined(NDEBUG)</span></div> -<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE __attribute__((always_inline))</span></div> -<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment"> By defining this preprocessor symbol to \c 1, \ref rapidjson::GenericValue object</span></div> +<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="comment"> members are stored in a \c std::multimap for faster lookup and deletion times, a</span></div> +<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment"> trade off with a slightly slower insertion time and a small object allocat(or)ed</span></div> +<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment"> memory overhead.</span></div> +<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="comment"></span> </div> +<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="comment"> \hideinitializer</span></div> +<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor">#ifndef RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b"> 180</a></span> <span class="preprocessor">#define RAPIDJSON_USE_MEMBERSMAP 0 // not by default</span></div> +<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment"></span> </div> +<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment"></span> </div> +<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="comment">/*! \def RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment"> \brief Use external 64-bit integer types.</span></div> +<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"></span> </div> +<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment"> RapidJSON requires the 64-bit integer types \c int64_t and \c uint64_t types</span></div> +<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment"> to be available at global scope.</span></div> +<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment"></span> </div> +<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"> If users have their own definition, define RAPIDJSON_NO_INT64DEFINE to</span></div> +<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment"> prevent RapidJSON from defining its own types.</span></div> +<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor">#ifndef RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="comment"></span><span class="preprocessor">#if defined(_MSC_VER) && (_MSC_VER < 1800) // Visual Studio 2013</span></div> +<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor">#include "msinttypes/stdint.h"</span></div> +<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor">#include "msinttypes/inttypes.h"</span></div> +<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="comment">// Other compilers should have this.</span></div> +<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor">#include <stdint.h></span></div> +<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor">#include <inttypes.h></span></div> <div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="comment">//!@endcond</span></div> -<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="comment"></span><span class="preprocessor">#endif // RAPIDJSON_FORCEINLINE</span></div> -<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="comment"></span> </div> -<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c"> 211</a></span> <span class="preprocessor">#define RAPIDJSON_LITTLEENDIAN 0 </span><span class="comment">//!< Little endian machine</span></div> -<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974"> 212</a></span> <span class="comment"></span>#define RAPIDJSON_BIGENDIAN 1 <span class="comment">//!< Big endian machine</span></div> -<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment"></span> </div> -<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="comment">//! Endianness of the machine.</span></div> -<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="comment"> \def RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="comment"></span> </div> -<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="comment"> GCC 4.6 provided macro for detecting endianness of the target machine. But other</span></div> -<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="comment"> compilers may not have this. User can define RAPIDJSON_ENDIAN to either</span></div> -<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment"> \ref RAPIDJSON_LITTLEENDIAN or \ref RAPIDJSON_BIGENDIAN.</span></div> -<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="comment"></span> </div> -<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="comment"> Default detection implemented with reference to</span></div> -<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment"> \li https://gcc.gnu.org/onlinedocs/gcc-4.6.0/cpp/Common-Predefined-Macros.html</span></div> -<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="comment"> \li http://www.boost.org/doc/libs/1_42_0/boost/detail/endian.hpp</span></div> -<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="preprocessor">#ifndef RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment">// Detect with GCC 4.6's macro</span></div> -<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor"># ifdef __BYTE_ORDER__</span></div> -<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor"># if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__</span></div> -<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor"># elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__</span></div> -<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> -<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor"># else</span></div> -<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN.</span></div> -<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor"># endif // __BYTE_ORDER__</span></div> -<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="comment">// Detect with GLIBC's endian.h</span></div> -<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="preprocessor"># elif defined(__GLIBC__)</span></div> -<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="preprocessor"># include <endian.h></span></div> -<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="preprocessor"># if (__BYTE_ORDER == __LITTLE_ENDIAN)</span></div> -<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor"># elif (__BYTE_ORDER == __BIG_ENDIAN)</span></div> -<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> -<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="preprocessor"># else</span></div> -<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN.</span></div> -<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="preprocessor"># endif // __GLIBC__</span></div> -<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="comment">// Detect with _LITTLE_ENDIAN and _BIG_ENDIAN macro</span></div> -<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"># elif defined(_LITTLE_ENDIAN) && !defined(_BIG_ENDIAN)</span></div> -<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"># elif defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN)</span></div> -<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> -<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="comment">// Detect with architecture macros</span></div> -<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor"># elif defined(__sparc) || defined(__sparc__) || defined(_POWER) || defined(__powerpc__) || defined(__ppc__) || defined(__hpux) || defined(__hppa) || defined(_MIPSEB) || defined(_POWER) || defined(__s390__)</span></div> -<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> -<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor"># elif defined(__i386__) || defined(__alpha__) || defined(__ia64) || defined(__ia64__) || defined(_M_IX86) || defined(_M_IA64) || defined(_M_ALPHA) || defined(__amd64) || defined(__amd64__) || defined(_M_AMD64) || defined(__x86_64) || defined(__x86_64__) || defined(_M_X64) || defined(__bfin__)</span></div> -<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"># elif defined(_MSC_VER) && (defined(_M_ARM) || defined(_M_ARM64))</span></div> -<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor"># elif defined(RAPIDJSON_DOXYGEN_RUNNING)</span></div> -<div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07"> 260</a></span> <span class="preprocessor"># define RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"># else</span></div> -<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN. </span></div> -<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"># endif</span></div> -<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor">#endif // RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="comment"></span> </div> -<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="comment"></span><span class="comment">// RAPIDJSON_64BIT</span></div> -<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="comment"></span> </div> -<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="comment">//! Whether using 64-bit architecture</span></div> -<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="comment"></span><span class="preprocessor">#ifndef RAPIDJSON_64BIT</span></div> -<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor">#if defined(__LP64__) || (defined(__x86_64__) && defined(__ILP32__)) || defined(_WIN64) || defined(__EMSCRIPTEN__)</span></div> -<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor">#define RAPIDJSON_64BIT 1</span></div> -<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52"> 274</a></span> <span class="preprocessor">#define RAPIDJSON_64BIT 0</span></div> -<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor">#endif // RAPIDJSON_64BIT</span></div> -<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="comment"></span> </div> -<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ALIGN</span></div> -<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="comment"></span> </div> -<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="comment">//! Data alignment of the machine.</span></div> -<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="comment"></span><span class="comment">/*! \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="comment"> \param x pointer to align</span></div> -<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="comment"></span> </div> -<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="comment"> Some machines require strict data alignment. The default is 8 bytes.</span></div> -<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment"> User can customize by defining the RAPIDJSON_ALIGN function macro.</span></div> -<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="preprocessor">#ifndef RAPIDJSON_ALIGN</span></div> -<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242"> 289</a></span> <span class="preprocessor">#define RAPIDJSON_ALIGN(x) (((x) + static_cast<size_t>(7u)) & ~static_cast<size_t>(7u))</span></div> -<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="comment"></span> </div> -<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="comment"></span><span class="comment">// RAPIDJSON_UINT64_C2</span></div> -<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="comment"></span> </div> -<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="comment">//! Construct a 64-bit literal by a pair of 32-bit integer.</span></div> -<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="comment"> 64-bit literal with or without ULL suffix is prone to compiler warnings.</span></div> -<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment"> UINT64_C() is C macro which cause compilation problems.</span></div> -<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment"> Use this macro to define 64-bit constants by a pair of 32-bit integer.</span></div> -<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor">#ifndef RAPIDJSON_UINT64_C2</span></div> -<div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f"> 302</a></span> <span class="preprocessor">#define RAPIDJSON_UINT64_C2(high32, low32) ((static_cast<uint64_t>(high32) << 32) | static_cast<uint64_t>(low32))</span></div> -<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="comment"></span> </div> -<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="comment"></span><span class="comment">// RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="comment"></span> </div> -<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="comment">//! Use only lower 48-bit address for some pointers.</span></div> -<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment"></span> </div> -<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment"> This optimization uses the fact that current X86-64 architecture only implement lower 48-bit virtual address.</span></div> -<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment"> The higher 16-bit can be used for storing other data.</span></div> -<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="comment"> \c GenericValue uses this optimization to reduce its size form 24 bytes to 16 bytes in 64-bit architecture.</span></div> -<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor">#ifndef RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="preprocessor">#if defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64)</span></div> -<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="preprocessor">#define RAPIDJSON_48BITPOINTER_OPTIMIZATION 1</span></div> -<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185"> 320</a></span> <span class="preprocessor">#define RAPIDJSON_48BITPOINTER_OPTIMIZATION 0</span></div> +<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="comment"></span><span class="preprocessor">#ifdef RAPIDJSON_DOXYGEN_RUNNING</span></div> +<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c"> 208</a></span> <span class="preprocessor">#define RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor">#endif // RAPIDJSON_NO_INT64TYPEDEF</span></div> +<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="comment"></span> </div> +<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment"></span><span class="comment">// RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  </div> +<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor">#ifndef RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="comment"></span><span class="preprocessor">#if defined(_MSC_VER) && defined(NDEBUG)</span></div> +<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE __forceinline</span></div> +<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor">#elif defined(__GNUC__) && __GNUC__ >= 4 && defined(NDEBUG)</span></div> +<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE __attribute__((always_inline))</span></div> +<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment">//!@endcond</span></div> +<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="comment"></span><span class="preprocessor">#endif // RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="comment"></span> </div> +<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c"> 229</a></span> <span class="preprocessor">#define RAPIDJSON_LITTLEENDIAN 0 </span><span class="comment">//!< Little endian machine</span></div> +<div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974"> 230</a></span> <span class="comment"></span>#define RAPIDJSON_BIGENDIAN 1 <span class="comment">//!< Big endian machine</span></div> +<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="comment"></span> </div> +<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="comment">//! Endianness of the machine.</span></div> +<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="comment"> \def RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="comment"></span> </div> +<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="comment"> GCC 4.6 provided macro for detecting endianness of the target machine. But other</span></div> +<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="comment"> compilers may not have this. User can define RAPIDJSON_ENDIAN to either</span></div> +<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="comment"> \ref RAPIDJSON_LITTLEENDIAN or \ref RAPIDJSON_BIGENDIAN.</span></div> +<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="comment"></span> </div> +<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="comment"> Default detection implemented with reference to</span></div> +<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="comment"> \li https://gcc.gnu.org/onlinedocs/gcc-4.6.0/cpp/Common-Predefined-Macros.html</span></div> +<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="comment"> \li http://www.boost.org/doc/libs/1_42_0/boost/detail/endian.hpp</span></div> +<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor">#ifndef RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="comment">// Detect with GCC 4.6's macro</span></div> +<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="preprocessor"># ifdef __BYTE_ORDER__</span></div> +<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"># if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__</span></div> +<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"># elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__</span></div> +<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> +<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor"># else</span></div> +<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN.</span></div> +<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor"># endif // __BYTE_ORDER__</span></div> +<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="comment">// Detect with GLIBC's endian.h</span></div> +<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"># elif defined(__GLIBC__)</span></div> +<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"># include <endian.h></span></div> +<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"># if (__BYTE_ORDER == __LITTLE_ENDIAN)</span></div> +<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"># elif (__BYTE_ORDER == __BIG_ENDIAN)</span></div> +<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> +<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor"># else</span></div> +<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN.</span></div> +<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor"># endif // __GLIBC__</span></div> +<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="comment">// Detect with _LITTLE_ENDIAN and _BIG_ENDIAN macro</span></div> +<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="preprocessor"># elif defined(_LITTLE_ENDIAN) && !defined(_BIG_ENDIAN)</span></div> +<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="preprocessor"># elif defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN)</span></div> +<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> +<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="comment">// Detect with architecture macros</span></div> +<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor"># elif defined(__sparc) || defined(__sparc__) || defined(_POWER) || defined(__powerpc__) || defined(__ppc__) || defined(__hpux) || defined(__hppa) || defined(_MIPSEB) || defined(_POWER) || defined(__s390__)</span></div> +<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> +<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="preprocessor"># elif defined(__i386__) || defined(__alpha__) || defined(__ia64) || defined(__ia64__) || defined(_M_IX86) || defined(_M_IA64) || defined(_M_ALPHA) || defined(__amd64) || defined(__amd64__) || defined(_M_AMD64) || defined(__x86_64) || defined(__x86_64__) || defined(_M_X64) || defined(__bfin__)</span></div> +<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor"># elif defined(_MSC_VER) && (defined(_M_ARM) || defined(_M_ARM64))</span></div> +<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="preprocessor"># elif defined(RAPIDJSON_DOXYGEN_RUNNING)</span></div> +<div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07"> 278</a></span> <span class="preprocessor"># define RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="preprocessor"># else</span></div> +<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN. </span></div> +<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="preprocessor"># endif</span></div> +<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor">#endif // RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="comment"></span> </div> +<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="comment"></span><span class="comment">// RAPIDJSON_64BIT</span></div> +<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment"></span> </div> +<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="comment">//! Whether using 64-bit architecture</span></div> +<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment"></span><span class="preprocessor">#ifndef RAPIDJSON_64BIT</span></div> +<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="preprocessor">#if defined(__LP64__) || (defined(__x86_64__) && defined(__ILP32__)) || defined(_WIN64) || defined(__EMSCRIPTEN__)</span></div> +<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor">#define RAPIDJSON_64BIT 1</span></div> +<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52"> 292</a></span> <span class="preprocessor">#define RAPIDJSON_64BIT 0</span></div> +<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="preprocessor">#endif // RAPIDJSON_64BIT</span></div> +<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="comment"></span> </div> +<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ALIGN</span></div> +<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment"></span> </div> +<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment">//! Data alignment of the machine.</span></div> +<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment"></span><span class="comment">/*! \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="comment"> \param x pointer to align</span></div> +<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="comment"></span> </div> +<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="comment"> Some machines require strict data alignment. The default is 8 bytes.</span></div> +<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="comment"> User can customize by defining the RAPIDJSON_ALIGN function macro.</span></div> +<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="preprocessor">#ifndef RAPIDJSON_ALIGN</span></div> +<div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242"> 307</a></span> <span class="preprocessor">#define RAPIDJSON_ALIGN(x) (((x) + static_cast<size_t>(7u)) & ~static_cast<size_t>(7u))</span></div> +<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment"></span> </div> +<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment"></span><span class="comment">// RAPIDJSON_UINT64_C2</span></div> +<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment"></span> </div> +<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment">//! Construct a 64-bit literal by a pair of 32-bit integer.</span></div> +<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="comment"> 64-bit literal with or without ULL suffix is prone to compiler warnings.</span></div> +<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="comment"> UINT64_C() is C macro which cause compilation problems.</span></div> +<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment"> Use this macro to define 64-bit constants by a pair of 32-bit integer.</span></div> +<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor">#ifndef RAPIDJSON_UINT64_C2</span></div> +<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f"> 320</a></span> <span class="preprocessor">#define RAPIDJSON_UINT64_C2(high32, low32) ((static_cast<uint64_t>(high32) << 32) | static_cast<uint64_t>(low32))</span></div> <div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="preprocessor">#endif // RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  </div> -<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor">#if RAPIDJSON_48BITPOINTER_OPTIMIZATION == 1</span></div> -<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="preprocessor">#if RAPIDJSON_64BIT != 1</span></div> -<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor">#error RAPIDJSON_48BITPOINTER_OPTIMIZATION can only be set to 1 when RAPIDJSON_64BIT=1</span></div> -<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="preprocessor">#define RAPIDJSON_SETPOINTER(type, p, x) (p = reinterpret_cast<type *>((reinterpret_cast<uintptr_t>(p) & static_cast<uintptr_t>(RAPIDJSON_UINT64_C2(0xFFFF0000, 0x00000000))) | reinterpret_cast<uintptr_t>(reinterpret_cast<const void*>(x))))</span></div> -<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="preprocessor">#define RAPIDJSON_GETPOINTER(type, p) (reinterpret_cast<type *>(reinterpret_cast<uintptr_t>(p) & static_cast<uintptr_t>(RAPIDJSON_UINT64_C2(0x0000FFFF, 0xFFFFFFFF))))</span></div> -<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="preprocessor">#define RAPIDJSON_SETPOINTER(type, p, x) (p = (x))</span></div> -<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="preprocessor">#define RAPIDJSON_GETPOINTER(type, p) (p)</span></div> -<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="comment"></span> </div> -<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="comment"></span><span class="comment">// RAPIDJSON_SSE2/RAPIDJSON_SSE42/RAPIDJSON_NEON/RAPIDJSON_SIMD</span></div> -<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="comment"></span> </div> -<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="comment">/*! \def RAPIDJSON_SIMD</span></div> -<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="comment"> \brief Enable SSE2/SSE4.2/Neon optimization.</span></div> -<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="comment"></span> </div> -<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="comment"> RapidJSON supports optimized implementations for some parsing operations</span></div> -<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="comment"> based on the SSE2, SSE4.2 or NEon SIMD extensions on modern Intel</span></div> -<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="comment"> or ARM compatible processors.</span></div> -<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="comment"></span> </div> -<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="comment"> To enable these optimizations, three different symbols can be defined;</span></div> -<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="comment"> // Enable SSE2 optimization.</span></div> -<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="comment"> #define RAPIDJSON_SSE2</span></div> -<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="comment"></span> </div> -<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="comment"> // Enable SSE4.2 optimization.</span></div> -<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="comment"> #define RAPIDJSON_SSE42</span></div> -<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="comment"></span> </div> -<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="comment"> // Enable ARM Neon optimization.</span></div> -<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="comment"> #define RAPIDJSON_NEON</span></div> -<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="comment"></span> </div> -<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment"> \c RAPIDJSON_SSE42 takes precedence over SSE2, if both are defined.</span></div> -<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="comment"></span> </div> -<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="comment"> If any of these symbols is defined, RapidJSON defines the macro</span></div> -<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="comment"> \c RAPIDJSON_SIMD to indicate the availability of the optimized code.</span></div> -<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor">#if defined(RAPIDJSON_SSE2) || defined(RAPIDJSON_SSE42) \</span></div> -<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="preprocessor"> || defined(RAPIDJSON_NEON) || defined(RAPIDJSON_DOXYGEN_RUNNING)</span></div> -<div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b"> 366</a></span> <span class="preprocessor">#define RAPIDJSON_SIMD</span></div> -<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="comment"></span> </div> +<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="comment"></span><span class="comment">// RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="comment"></span> </div> +<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="comment">//! Use only lower 48-bit address for some pointers.</span></div> +<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="comment"></span> </div> +<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="comment"> This optimization uses the fact that current X86-64 architecture only implement lower 48-bit virtual address.</span></div> +<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="comment"> The higher 16-bit can be used for storing other data.</span></div> +<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment"> \c GenericValue uses this optimization to reduce its size form 24 bytes to 16 bytes in 64-bit architecture.</span></div> +<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="preprocessor">#ifndef RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="preprocessor">#if defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64)</span></div> +<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="preprocessor">#define RAPIDJSON_48BITPOINTER_OPTIMIZATION 1</span></div> +<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185"> 338</a></span> <span class="preprocessor">#define RAPIDJSON_48BITPOINTER_OPTIMIZATION 0</span></div> +<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="preprocessor">#endif // RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  </div> +<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="preprocessor">#if RAPIDJSON_48BITPOINTER_OPTIMIZATION == 1</span></div> +<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="preprocessor">#if RAPIDJSON_64BIT != 1</span></div> +<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="preprocessor">#error RAPIDJSON_48BITPOINTER_OPTIMIZATION can only be set to 1 when RAPIDJSON_64BIT=1</span></div> +<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="preprocessor">#define RAPIDJSON_SETPOINTER(type, p, x) (p = reinterpret_cast<type *>((reinterpret_cast<uintptr_t>(p) & static_cast<uintptr_t>(RAPIDJSON_UINT64_C2(0xFFFF0000, 0x00000000))) | reinterpret_cast<uintptr_t>(reinterpret_cast<const void*>(x))))</span></div> +<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor">#define RAPIDJSON_GETPOINTER(type, p) (reinterpret_cast<type *>(reinterpret_cast<uintptr_t>(p) & static_cast<uintptr_t>(RAPIDJSON_UINT64_C2(0x0000FFFF, 0xFFFFFFFF))))</span></div> +<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="preprocessor">#define RAPIDJSON_SETPOINTER(type, p, x) (p = (x))</span></div> +<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="preprocessor">#define RAPIDJSON_GETPOINTER(type, p) (p)</span></div> +<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="comment"></span> </div> +<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="comment"></span><span class="comment">// RAPIDJSON_SSE2/RAPIDJSON_SSE42/RAPIDJSON_NEON/RAPIDJSON_SIMD</span></div> +<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="comment"></span> </div> +<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="comment">/*! \def RAPIDJSON_SIMD</span></div> +<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="comment"> \brief Enable SSE2/SSE4.2/Neon optimization.</span></div> +<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment"></span> </div> +<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="comment"> RapidJSON supports optimized implementations for some parsing operations</span></div> +<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="comment"> based on the SSE2, SSE4.2 or NEon SIMD extensions on modern Intel</span></div> +<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="comment"> or ARM compatible processors.</span></div> +<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="comment"></span> </div> +<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="comment"> To enable these optimizations, three different symbols can be defined;</span></div> +<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="comment"> // Enable SSE2 optimization.</span></div> +<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="comment"> #define RAPIDJSON_SSE2</span></div> <div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="comment"></span> </div> -<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  </div> -<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="preprocessor">#ifndef RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="comment">/*! \def RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="comment"> \brief User-provided \c SizeType definition.</span></div> +<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="comment"> // Enable SSE4.2 optimization.</span></div> +<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"> #define RAPIDJSON_SSE42</span></div> +<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="comment"></span> </div> +<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="comment"> // Enable ARM Neon optimization.</span></div> +<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="comment"> #define RAPIDJSON_NEON</span></div> +<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="comment"> \endcode</span></div> <div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="comment"></span> </div> -<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="comment"> In order to avoid using 32-bit size types for indexing strings and arrays,</span></div> -<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="comment"> define this preprocessor symbol and provide the type rapidjson::SizeType</span></div> -<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="comment"> before including RapidJSON:</span></div> -<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment"> #define RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="comment"> namespace rapidjson { typedef ::std::size_t SizeType; }</span></div> -<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="comment"> #include "rapidjson/..."</span></div> -<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment"></span> </div> -<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"> \see rapidjson::SizeType</span></div> -<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="preprocessor">#ifdef RAPIDJSON_DOXYGEN_RUNNING</span></div> -<div class="line"><a name="l00389"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f"> 389</a></span> <span class="preprocessor">#define RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="namespacerapidjson.html"> 391</a></span> RAPIDJSON_NAMESPACE_BEGIN<span class="comment"></span></div> -<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="comment">//! Size type (for string lengths, array sizes, etc.)</span></div> -<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="comment"></span><span class="comment">/*! RapidJSON uses 32-bit array/string indices even on 64-bit platforms,</span></div> -<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="comment"> instead of using \c size_t. Users may override the SizeType by defining</span></div> -<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="comment"> \ref RAPIDJSON_NO_SIZETYPEDEFINE.</span></div> -<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00397"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84"> 397</a></span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>;</div> -<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  </div> -<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="comment">// always import std::size_t to rapidjson namespace</span></div> -<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> RAPIDJSON_NAMESPACE_BEGIN</div> -<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="keyword">using</span> std::size_t;</div> -<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment"></span> </div> -<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ASSERT</span></div> -<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="comment"></span> </div> -<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="comment">//! Assertion.</span></div> -<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="comment"></span><span class="comment">/*! \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="comment"> By default, rapidjson uses C \c assert() for internal assertions.</span></div> -<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="comment"> User can override it by defining RAPIDJSON_ASSERT(x) macro.</span></div> -<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="comment"></span> </div> -<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="comment"> \note Parsing errors are handled and can be customized by the</span></div> -<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="comment"> \ref RAPIDJSON_ERRORS APIs.</span></div> -<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor">#ifndef RAPIDJSON_ASSERT</span></div> -<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor">#include <cassert></span></div> -<div class="line"><a name="l00419"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c"> 419</a></span> <span class="preprocessor">#define RAPIDJSON_ASSERT(x) assert(x)</span></div> -<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor">#endif // RAPIDJSON_ASSERT</span></div> -<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="comment"></span> </div> -<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment"></span><span class="comment">// RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  </div> -<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="comment">// Prefer C++11 static_assert, if available</span></div> -<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="preprocessor">#ifndef RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor">#if RAPIDJSON_CPLUSPLUS >= 201103L || ( defined(_MSC_VER) && _MSC_VER >= 1800 )</span></div> -<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT(x) \</span></div> -<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor"> static_assert(x, RAPIDJSON_STRINGIFY(x))</span></div> -<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor">#endif // C++11</span></div> -<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor">#endif // RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  </div> -<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="comment">// Adopt C++03 implementation from boost</span></div> -<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="preprocessor">#ifndef RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor">#ifndef __clang__</span></div> -<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> -<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> RAPIDJSON_NAMESPACE_BEGIN</div> -<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> x> <span class="keyword">struct </span>STATIC_ASSERTION_FAILURE;</div> -<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keyword">template</span> <> <span class="keyword">struct </span>STATIC_ASSERTION_FAILURE<true> { <span class="keyword">enum</span> { value = 1 }; };</div> -<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="keyword">template</span> <<span class="keywordtype">size_t</span> x> <span class="keyword">struct </span>StaticAssertTest {};</div> -<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  </div> -<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> -<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE __attribute__((unused))</span></div> -<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE </span></div> -<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor">#ifndef __clang__</span></div> -<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="comment">//!@endcond</span></div> -<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="comment"></span> </div> -<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="comment">/*! \def RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="comment"> \brief (Internal) macro to check for conditions at compile-time</span></div> -<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="comment"> \param x compile-time condition</span></div> -<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="comment"> \hideinitializer</span></div> -<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00458"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4"> 458</a></span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT(x) \</span></div> -<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="preprocessor"> typedef ::RAPIDJSON_NAMESPACE::StaticAssertTest< \</span></div> -<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor"> sizeof(::RAPIDJSON_NAMESPACE::STATIC_ASSERTION_FAILURE<bool(x) >)> \</span></div> -<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor"> RAPIDJSON_JOIN(StaticAssertTypedef, __LINE__) RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE</span></div> -<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">#endif // RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="comment"></span> </div> -<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="comment"></span><span class="comment">// RAPIDJSON_LIKELY, RAPIDJSON_UNLIKELY</span></div> -<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="comment"></span> </div> -<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="comment">//! Compiler branching hint for expression with high probability to be true.</span></div> -<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="comment"> \param x Boolean expression likely to be true.</span></div> -<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor">#ifndef RAPIDJSON_LIKELY</span></div> -<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> -<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor">#define RAPIDJSON_LIKELY(x) __builtin_expect(!!(x), 1)</span></div> -<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00476"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1"> 476</a></span> <span class="preprocessor">#define RAPIDJSON_LIKELY(x) (x)</span></div> -<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="comment"></span> </div> -<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="comment">//! Compiler branching hint for expression with low probability to be true.</span></div> -<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="comment"> \param x Boolean expression unlikely to be true.</span></div> -<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor">#ifndef RAPIDJSON_UNLIKELY</span></div> -<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> -<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor">#define RAPIDJSON_UNLIKELY(x) __builtin_expect(!!(x), 0)</span></div> -<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00489"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5"> 489</a></span> <span class="preprocessor">#define RAPIDJSON_UNLIKELY(x) (x)</span></div> -<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="comment"></span> </div> -<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="comment"></span><span class="comment">// Helpers</span></div> -<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="comment"></span> </div> -<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="comment"> \c RAPIDJSON_SSE42 takes precedence over SSE2, if both are defined.</span></div> +<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="comment"></span> </div> +<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="comment"> If any of these symbols is defined, RapidJSON defines the macro</span></div> +<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="comment"> \c RAPIDJSON_SIMD to indicate the availability of the optimized code.</span></div> +<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor">#if defined(RAPIDJSON_SSE2) || defined(RAPIDJSON_SSE42) \</span></div> +<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="preprocessor"> || defined(RAPIDJSON_NEON) || defined(RAPIDJSON_DOXYGEN_RUNNING)</span></div> +<div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b"> 384</a></span> <span class="preprocessor">#define RAPIDJSON_SIMD</span></div> +<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"></span> </div> +<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  </div> +<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor">#ifndef RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="comment">/*! \def RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="comment"> \brief User-provided \c SizeType definition.</span></div> +<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="comment"></span> </div> +<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="comment"> In order to avoid using 32-bit size types for indexing strings and arrays,</span></div> +<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="comment"> define this preprocessor symbol and provide the type rapidjson::SizeType</span></div> +<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="comment"> before including RapidJSON:</span></div> +<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="comment"> #define RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="comment"> namespace rapidjson { typedef ::std::size_t SizeType; }</span></div> +<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="comment"> #include "rapidjson/..."</span></div> +<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="comment"></span> </div> +<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="comment"> \see rapidjson::SizeType</span></div> +<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor">#ifdef RAPIDJSON_DOXYGEN_RUNNING</span></div> +<div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f"> 407</a></span> <span class="preprocessor">#define RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00409"></a><span class="lineno"><a class="line" href="namespacerapidjson.html"> 409</a></span> RAPIDJSON_NAMESPACE_BEGIN<span class="comment"></span></div> +<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="comment">//! Size type (for string lengths, array sizes, etc.)</span></div> +<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="comment"></span><span class="comment">/*! RapidJSON uses 32-bit array/string indices even on 64-bit platforms,</span></div> +<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="comment"> instead of using \c size_t. Users may override the SizeType by defining</span></div> +<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="comment"> \ref RAPIDJSON_NO_SIZETYPEDEFINE.</span></div> +<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84"> 415</a></span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>;</div> +<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  </div> +<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="comment">// always import std::size_t to rapidjson namespace</span></div> +<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> RAPIDJSON_NAMESPACE_BEGIN</div> +<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keyword">using</span> std::size_t;</div> +<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment"></span> </div> +<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ASSERT</span></div> +<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="comment"></span> </div> +<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="comment">//! Assertion.</span></div> +<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="comment"></span><span class="comment">/*! \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="comment"> By default, rapidjson uses C \c assert() for internal assertions.</span></div> +<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="comment"> User can override it by defining RAPIDJSON_ASSERT(x) macro.</span></div> +<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="comment"></span> </div> +<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="comment"> \note Parsing errors are handled and can be customized by the</span></div> +<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="comment"> \ref RAPIDJSON_ERRORS APIs.</span></div> +<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor">#ifndef RAPIDJSON_ASSERT</span></div> +<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="preprocessor">#include <cassert></span></div> +<div class="line"><a name="l00437"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c"> 437</a></span> <span class="preprocessor">#define RAPIDJSON_ASSERT(x) assert(x)</span></div> +<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor">#endif // RAPIDJSON_ASSERT</span></div> +<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="comment"></span> </div> +<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="comment"></span><span class="comment">// RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>  </div> +<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="comment">// Prefer C++11 static_assert, if available</span></div> +<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor">#ifndef RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor">#if RAPIDJSON_CPLUSPLUS >= 201103L || ( defined(_MSC_VER) && _MSC_VER >= 1800 )</span></div> +<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT(x) \</span></div> +<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="preprocessor"> static_assert(x, RAPIDJSON_STRINGIFY(x))</span></div> +<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor">#endif // C++11</span></div> +<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor">#endif // RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  </div> +<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="comment">// Adopt C++03 implementation from boost</span></div> +<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor">#ifndef RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor">#ifndef __clang__</span></div> +<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> RAPIDJSON_NAMESPACE_BEGIN</div> +<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> x> <span class="keyword">struct </span>STATIC_ASSERTION_FAILURE;</div> +<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="keyword">template</span> <> <span class="keyword">struct </span>STATIC_ASSERTION_FAILURE<true> { <span class="keyword">enum</span> { value = 1 }; };</div> +<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="keyword">template</span> <<span class="keywordtype">size_t</span> x> <span class="keyword">struct </span>StaticAssertTest {};</div> +<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  </div> +<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> +<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE __attribute__((unused))</span></div> +<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE </span></div> +<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor">#ifndef __clang__</span></div> +<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="comment">//!@endcond</span></div> +<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="comment"></span> </div> +<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="comment">/*! \def RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="comment"> \brief (Internal) macro to check for conditions at compile-time</span></div> +<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="comment"> \param x compile-time condition</span></div> +<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="comment"> \hideinitializer</span></div> +<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00476"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4"> 476</a></span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT(x) \</span></div> +<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor"> typedef ::RAPIDJSON_NAMESPACE::StaticAssertTest< \</span></div> +<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor"> sizeof(::RAPIDJSON_NAMESPACE::STATIC_ASSERTION_FAILURE<bool(x) >)> \</span></div> +<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"> RAPIDJSON_JOIN(StaticAssertTypedef, __LINE__) RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE</span></div> +<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor">#endif // RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="comment"></span> </div> +<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="comment"></span><span class="comment">// RAPIDJSON_LIKELY, RAPIDJSON_UNLIKELY</span></div> +<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="comment"></span> </div> +<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="comment">//! Compiler branching hint for expression with high probability to be true.</span></div> +<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="comment"> \param x Boolean expression likely to be true.</span></div> +<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor">#ifndef RAPIDJSON_LIKELY</span></div> +<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> +<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor">#define RAPIDJSON_LIKELY(x) __builtin_expect(!!(x), 1)</span></div> +<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00494"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1"> 494</a></span> <span class="preprocessor">#define RAPIDJSON_LIKELY(x) (x)</span></div> +<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="comment"></span> </div> -<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor">#define RAPIDJSON_MULTILINEMACRO_BEGIN do { </span></div> -<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor">#define RAPIDJSON_MULTILINEMACRO_END \</span></div> -<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor">} while((void)0, 0)</span></div> -<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  </div> -<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="comment">// adopted from Boost</span></div> -<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor">#define RAPIDJSON_VERSION_CODE(x,y,z) \</span></div> -<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor"> (((x)*100000) + ((y)*100) + (z))</span></div> -<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  </div> -<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor">#if defined(__has_builtin)</span></div> -<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor">#define RAPIDJSON_HAS_BUILTIN(x) __has_builtin(x)</span></div> -<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor">#define RAPIDJSON_HAS_BUILTIN(x) 0</span></div> -<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="comment"></span> </div> -<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="comment"></span><span class="comment">// RAPIDJSON_DIAG_PUSH/POP, RAPIDJSON_DIAG_OFF</span></div> -<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  </div> -<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="preprocessor">#if defined(__GNUC__)</span></div> -<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor">#define RAPIDJSON_GNUC \</span></div> -<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor"> RAPIDJSON_VERSION_CODE(__GNUC__,__GNUC_MINOR__,__GNUC_PATCHLEVEL__)</span></div> -<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="comment">//! Compiler branching hint for expression with low probability to be true.</span></div> +<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="comment"> \param x Boolean expression unlikely to be true.</span></div> +<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor">#ifndef RAPIDJSON_UNLIKELY</span></div> +<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> +<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor">#define RAPIDJSON_UNLIKELY(x) __builtin_expect(!!(x), 0)</span></div> +<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00507"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5"> 507</a></span> <span class="preprocessor">#define RAPIDJSON_UNLIKELY(x) (x)</span></div> +<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="comment"></span> </div> +<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="comment"></span><span class="comment">// Helpers</span></div> +<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="comment"></span> </div> +<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="comment"></span> </div> +<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor">#define RAPIDJSON_MULTILINEMACRO_BEGIN do { </span></div> +<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor">#define RAPIDJSON_MULTILINEMACRO_END \</span></div> +<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">} while((void)0, 0)</span></div> <div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  </div> -<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="preprocessor">#if defined(__clang__) || (defined(RAPIDJSON_GNUC) && RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,2,0))</span></div> -<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  </div> -<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor">#define RAPIDJSON_PRAGMA(x) _Pragma(RAPIDJSON_STRINGIFY(x))</span></div> -<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PRAGMA(x) RAPIDJSON_PRAGMA(GCC diagnostic x)</span></div> -<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) \</span></div> -<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor"> RAPIDJSON_DIAG_PRAGMA(ignored RAPIDJSON_STRINGIFY(RAPIDJSON_JOIN(-W,x)))</span></div> -<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  </div> -<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="comment">// push/pop support in Clang and GCC>=4.6</span></div> -<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor">#if defined(__clang__) || (defined(RAPIDJSON_GNUC) && RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0))</span></div> -<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH RAPIDJSON_DIAG_PRAGMA(push)</span></div> -<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP RAPIDJSON_DIAG_PRAGMA(pop)</span></div> -<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="preprocessor">#else // GCC >= 4.2, < 4.6</span></div> -<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  </div> -<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="preprocessor">#elif defined(_MSC_VER)</span></div> +<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="comment">// adopted from Boost</span></div> +<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> <span class="preprocessor">#define RAPIDJSON_VERSION_CODE(x,y,z) \</span></div> +<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor"> (((x)*100000) + ((y)*100) + (z))</span></div> +<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  </div> +<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor">#if defined(__has_builtin)</span></div> +<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor">#define RAPIDJSON_HAS_BUILTIN(x) __has_builtin(x)</span></div> +<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="preprocessor">#define RAPIDJSON_HAS_BUILTIN(x) 0</span></div> +<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="comment"></span> </div> +<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="comment"></span><span class="comment">// RAPIDJSON_DIAG_PUSH/POP, RAPIDJSON_DIAG_OFF</span></div> +<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  </div> +<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor">#if defined(__GNUC__)</span></div> +<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="preprocessor">#define RAPIDJSON_GNUC \</span></div> +<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="preprocessor"> RAPIDJSON_VERSION_CODE(__GNUC__,__GNUC_MINOR__,__GNUC_PATCHLEVEL__)</span></div> +<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00537"></a><span class="lineno"> 537</span>  </div> -<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="comment">// pragma (MSVC specific)</span></div> -<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="preprocessor">#define RAPIDJSON_PRAGMA(x) __pragma(x)</span></div> -<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PRAGMA(x) RAPIDJSON_PRAGMA(warning(x))</span></div> -<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  </div> -<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) RAPIDJSON_DIAG_PRAGMA(disable: x)</span></div> -<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH RAPIDJSON_DIAG_PRAGMA(push)</span></div> -<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP RAPIDJSON_DIAG_PRAGMA(pop)</span></div> -<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  </div> -<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>  </div> -<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  </div> -<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor">#endif // RAPIDJSON_DIAG_*</span></div> -<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="comment"></span> </div> -<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="comment"></span><span class="comment">// C++11 features</span></div> -<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  </div> -<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11 (RAPIDJSON_CPLUSPLUS >= 201103L)</span></div> -<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  </div> -<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> -<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor">#elif defined(__clang__)</span></div> -<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor">#if __has_feature(cxx_rvalue_references) && \</span></div> -<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="preprocessor"> (defined(_MSC_VER) || defined(_LIBCPP_VERSION) || defined(__GLIBCXX__) && __GLIBCXX__ >= 20080306)</span></div> -<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> -<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 0</span></div> -<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,3,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> -<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1600) || \</span></div> -<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> +<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="preprocessor">#if defined(__clang__) || (defined(RAPIDJSON_GNUC) && RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,2,0))</span></div> +<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  </div> +<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor">#define RAPIDJSON_PRAGMA(x) _Pragma(RAPIDJSON_STRINGIFY(x))</span></div> +<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PRAGMA(x) RAPIDJSON_PRAGMA(GCC diagnostic x)</span></div> +<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) \</span></div> +<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="preprocessor"> RAPIDJSON_DIAG_PRAGMA(ignored RAPIDJSON_STRINGIFY(RAPIDJSON_JOIN(-W,x)))</span></div> +<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>  </div> +<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="comment">// push/pop support in Clang and GCC>=4.6</span></div> +<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="preprocessor">#if defined(__clang__) || (defined(RAPIDJSON_GNUC) && RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0))</span></div> +<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH RAPIDJSON_DIAG_PRAGMA(push)</span></div> +<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP RAPIDJSON_DIAG_PRAGMA(pop)</span></div> +<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="preprocessor">#else // GCC >= 4.2, < 4.6</span></div> +<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  </div> +<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="preprocessor">#elif defined(_MSC_VER)</span></div> +<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  </div> +<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="comment">// pragma (MSVC specific)</span></div> +<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor">#define RAPIDJSON_PRAGMA(x) __pragma(x)</span></div> +<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PRAGMA(x) RAPIDJSON_PRAGMA(warning(x))</span></div> +<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  </div> +<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) RAPIDJSON_DIAG_PRAGMA(disable: x)</span></div> +<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH RAPIDJSON_DIAG_PRAGMA(push)</span></div> +<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP RAPIDJSON_DIAG_PRAGMA(pop)</span></div> +<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  </div> +<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  </div> +<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  </div> +<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor">#endif // RAPIDJSON_DIAG_*</span></div> +<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="comment"></span> </div> +<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="comment"></span><span class="comment">// C++11 features</span></div> <div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  </div> -<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> -<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 0</span></div> -<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  </div> -<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> -<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 1</span></div> -<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="preprocessor">#elif defined(__clang__)</span></div> -<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT __has_feature(cxx_noexcept)</span></div> -<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> -<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1900) || \</span></div> -<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> -<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 1</span></div> -<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 0</span></div> -<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor">#ifndef RAPIDJSON_NOEXCEPT</span></div> -<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> -<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT noexcept</span></div> -<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT throw()</span></div> -<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> -<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>  </div> -<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="comment">// no automatic detection, yet</span></div> -<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_TYPETRAITS</span></div> -<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor">#if (defined(_MSC_VER) && _MSC_VER >= 1700)</span></div> -<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_TYPETRAITS 1</span></div> -<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_TYPETRAITS 0</span></div> -<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>  </div> -<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> -<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="preprocessor">#if defined(__clang__)</span></div> -<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR __has_feature(cxx_range_for)</span></div> -<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> -<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1700) || \</span></div> -<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> -<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR 1</span></div> -<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR 0</span></div> -<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> -<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="comment"></span> </div> -<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="comment"></span><span class="comment">// C++17 features</span></div> -<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>  </div> -<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX17</span></div> -<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX17 (RAPIDJSON_CPLUSPLUS >= 201703L)</span></div> -<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>  </div> -<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX17</span></div> -<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH [[fallthrough]]</span></div> -<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="preprocessor">#elif defined(__has_cpp_attribute)</span></div> -<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor"># if __has_cpp_attribute(clang::fallthrough)</span></div> -<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH [[clang::fallthrough]]</span></div> -<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="preprocessor"># elif __has_cpp_attribute(fallthrough)</span></div> -<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH __attribute__((fallthrough))</span></div> -<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor"># else</span></div> -<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH</span></div> -<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="preprocessor"># endif</span></div> +<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11 (RAPIDJSON_CPLUSPLUS >= 201103L)</span></div> +<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  </div> +<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> +<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor">#elif defined(__clang__)</span></div> +<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="preprocessor">#if __has_feature(cxx_rvalue_references) && \</span></div> +<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="preprocessor"> (defined(_MSC_VER) || defined(_LIBCPP_VERSION) || defined(__GLIBCXX__) && __GLIBCXX__ >= 20080306)</span></div> +<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> +<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 0</span></div> +<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,3,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> +<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1600) || \</span></div> +<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> +<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  </div> +<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> +<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 0</span></div> +<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>  </div> +<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor">#include <utility></span> <span class="comment">// std::move</span></div> +<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>  </div> +<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> +<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 1</span></div> +<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor">#elif defined(__clang__)</span></div> +<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT __has_feature(cxx_noexcept)</span></div> +<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> +<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1900) || \</span></div> +<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> +<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 1</span></div> +<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 0</span></div> +<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor">#ifndef RAPIDJSON_NOEXCEPT</span></div> +<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> +<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT noexcept</span></div> +<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT throw()</span></div> +<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> +<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>  </div> +<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="comment">// no automatic detection, yet</span></div> +<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_TYPETRAITS</span></div> +<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="preprocessor">#if (defined(_MSC_VER) && _MSC_VER >= 1700)</span></div> +<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_TYPETRAITS 1</span></div> +<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_TYPETRAITS 0</span></div> +<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>  </div> +<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> +<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="preprocessor">#if defined(__clang__)</span></div> +<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR __has_feature(cxx_range_for)</span></div> +<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> +<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1700) || \</span></div> +<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> +<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR 1</span></div> <div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH</span></div> +<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR 0</span></div> <div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="comment"></span> </div> -<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="comment">//!@endcond</span></div> -<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="comment">//! Assertion (in non-throwing contexts).</span></div> -<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <span class="comment"></span><span class="comment"> /*! \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="comment"> Some functions provide a \c noexcept guarantee, if the compiler supports it.</span></div> -<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="comment"> In these cases, the \ref RAPIDJSON_ASSERT macro cannot be overridden to</span></div> -<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="comment"> throw an exception. This macro adds a separate customization point for</span></div> -<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="comment"> such cases.</span></div> -<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="comment"></span> </div> -<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="comment"> Defaults to C \c assert() (as \ref RAPIDJSON_ASSERT), if \c noexcept is</span></div> -<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="comment"> supported, and to \ref RAPIDJSON_ASSERT otherwise.</span></div> -<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="comment"></span> </div> -<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NOEXCEPT_ASSERT</span></div> -<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>  </div> -<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="preprocessor">#ifndef RAPIDJSON_NOEXCEPT_ASSERT</span></div> -<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="preprocessor">#ifdef RAPIDJSON_ASSERT_THROWS</span></div> -<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="preprocessor">#include <cassert></span></div> -<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT_ASSERT(x) assert(x)</span></div> -<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00665"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952"> 665</a></span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT_ASSERT(x) RAPIDJSON_ASSERT(x)</span></div> -<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="preprocessor">#endif // RAPIDJSON_ASSERT_THROWS</span></div> -<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="preprocessor">#endif // RAPIDJSON_NOEXCEPT_ASSERT</span></div> -<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="comment"></span> </div> -<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="comment"></span><span class="comment">// malloc/realloc/free</span></div> -<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>  </div> -<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="preprocessor">#ifndef RAPIDJSON_MALLOC</span></div> -<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="comment">///! customization point for global \c malloc</span></div> -<div class="line"><a name="l00674"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27"> 674</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_MALLOC(size) std::malloc(size)</span></div> -<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="preprocessor">#ifndef RAPIDJSON_REALLOC</span></div> -<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="comment">///! customization point for global \c realloc</span></div> -<div class="line"><a name="l00678"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67"> 678</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_REALLOC(ptr, new_size) std::realloc(ptr, new_size)</span></div> -<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="preprocessor">#ifndef RAPIDJSON_FREE</span></div> -<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> <span class="comment">///! customization point for global \c free</span></div> -<div class="line"><a name="l00682"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f"> 682</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_FREE(ptr) std::free(ptr)</span></div> -<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="comment"></span> </div> -<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="comment"></span><span class="comment">// new/delete</span></div> -<div class="line"><a name="l00687"></a><span class="lineno"> 687</span>  </div> -<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor">#ifndef RAPIDJSON_NEW</span></div> -<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="comment">///! customization point for global \c new</span></div> -<div class="line"><a name="l00690"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b"> 690</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_NEW(TypeName) new TypeName</span></div> -<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="preprocessor">#ifndef RAPIDJSON_DELETE</span></div> -<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> <span class="comment">///! customization point for global \c delete</span></div> -<div class="line"><a name="l00694"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a"> 694</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_DELETE(x) delete x</span></div> -<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <span class="comment"></span> </div> -<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="comment"></span><span class="comment">// Type</span></div> -<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="comment"></span> </div> -<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> <span class="comment">/*! \namespace rapidjson</span></div> -<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="comment"> \brief main RapidJSON namespace</span></div> -<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <span class="comment"> \see RAPIDJSON_NAMESPACE</span></div> -<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> RAPIDJSON_NAMESPACE_BEGIN</div> -<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="comment"></span> </div> -<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="comment">//! Type of JSON value</span></div> -<div class="line"><a name="l00707"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4"> 707</a></span> <span class="comment"></span><span class="keyword">enum</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> {</div> -<div class="line"><a name="l00708"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"> 708</a></span>  <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a> = 0, <span class="comment">//!< null</span></div> -<div class="line"><a name="l00709"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"> 709</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a> = 1, <span class="comment">//!< false</span></div> -<div class="line"><a name="l00710"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"> 710</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a> = 2, <span class="comment">//!< true</span></div> -<div class="line"><a name="l00711"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"> 711</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a> = 3, <span class="comment">//!< object</span></div> -<div class="line"><a name="l00712"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"> 712</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a> = 4, <span class="comment">//!< array </span></div> -<div class="line"><a name="l00713"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"> 713</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a> = 5, <span class="comment">//!< string</span></div> -<div class="line"><a name="l00714"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"> 714</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a> = 6 <span class="comment">//!< number</span></div> -<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="comment"></span>};</div> -<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>  </div> -<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>  </div> -<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="preprocessor">#endif // RAPIDJSON_RAPIDJSON_H_</span></div> +<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> +<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="comment"></span> </div> +<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="comment"></span><span class="comment">// C++17 features</span></div> +<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  </div> +<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX17</span></div> +<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX17 (RAPIDJSON_CPLUSPLUS >= 201703L)</span></div> +<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>  </div> +<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX17</span></div> +<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH [[fallthrough]]</span></div> +<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="preprocessor">#elif defined(__has_cpp_attribute)</span></div> +<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="preprocessor"># if __has_cpp_attribute(clang::fallthrough)</span></div> +<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH [[clang::fallthrough]]</span></div> +<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="preprocessor"># elif __has_cpp_attribute(fallthrough)</span></div> +<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH __attribute__((fallthrough))</span></div> +<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="preprocessor"># else</span></div> +<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH</span></div> +<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="preprocessor"># endif</span></div> +<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH</span></div> +<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="comment"></span> </div> +<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="comment">//!@endcond</span></div> +<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="comment">//! Assertion (in non-throwing contexts).</span></div> +<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="comment"></span><span class="comment"> /*! \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="comment"> Some functions provide a \c noexcept guarantee, if the compiler supports it.</span></div> +<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="comment"> In these cases, the \ref RAPIDJSON_ASSERT macro cannot be overridden to</span></div> +<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="comment"> throw an exception. This macro adds a separate customization point for</span></div> +<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="comment"> such cases.</span></div> +<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="comment"></span> </div> +<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="comment"> Defaults to C \c assert() (as \ref RAPIDJSON_ASSERT), if \c noexcept is</span></div> +<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="comment"> supported, and to \ref RAPIDJSON_ASSERT otherwise.</span></div> +<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="comment"></span> </div> +<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NOEXCEPT_ASSERT</span></div> +<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>  </div> +<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="preprocessor">#ifndef RAPIDJSON_NOEXCEPT_ASSERT</span></div> +<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="preprocessor">#ifdef RAPIDJSON_ASSERT_THROWS</span></div> +<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="preprocessor">#include <cassert></span></div> +<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT_ASSERT(x) assert(x)</span></div> +<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00687"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952"> 687</a></span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT_ASSERT(x) RAPIDJSON_ASSERT(x)</span></div> +<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor">#endif // RAPIDJSON_ASSERT_THROWS</span></div> +<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="preprocessor">#endif // RAPIDJSON_NOEXCEPT_ASSERT</span></div> +<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="comment"></span> </div> +<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="comment"></span><span class="comment">// malloc/realloc/free</span></div> +<div class="line"><a name="l00693"></a><span class="lineno"> 693</span>  </div> +<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="preprocessor">#ifndef RAPIDJSON_MALLOC</span></div> +<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="comment">///! customization point for global \c malloc</span></div> +<div class="line"><a name="l00696"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27"> 696</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_MALLOC(size) std::malloc(size)</span></div> +<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="preprocessor">#ifndef RAPIDJSON_REALLOC</span></div> +<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="comment">///! customization point for global \c realloc</span></div> +<div class="line"><a name="l00700"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67"> 700</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_REALLOC(ptr, new_size) std::realloc(ptr, new_size)</span></div> +<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <span class="preprocessor">#ifndef RAPIDJSON_FREE</span></div> +<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="comment">///! customization point for global \c free</span></div> +<div class="line"><a name="l00704"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f"> 704</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_FREE(ptr) std::free(ptr)</span></div> +<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="comment"></span> </div> +<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="comment"></span><span class="comment">// new/delete</span></div> +<div class="line"><a name="l00709"></a><span class="lineno"> 709</span>  </div> +<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="preprocessor">#ifndef RAPIDJSON_NEW</span></div> +<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="comment">///! customization point for global \c new</span></div> +<div class="line"><a name="l00712"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b"> 712</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_NEW(TypeName) new TypeName</span></div> +<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="preprocessor">#ifndef RAPIDJSON_DELETE</span></div> +<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="comment">///! customization point for global \c delete</span></div> +<div class="line"><a name="l00716"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a"> 716</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_DELETE(x) delete x</span></div> +<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="comment"></span> </div> +<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="comment"></span><span class="comment">// Type</span></div> +<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="comment"></span> </div> +<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="comment">/*! \namespace rapidjson</span></div> +<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="comment"> \brief main RapidJSON namespace</span></div> +<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="comment"> \see RAPIDJSON_NAMESPACE</span></div> +<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> RAPIDJSON_NAMESPACE_BEGIN</div> +<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> <span class="comment"></span> </div> +<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> <span class="comment">//! Type of JSON value</span></div> +<div class="line"><a name="l00729"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4"> 729</a></span> <span class="comment"></span><span class="keyword">enum</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> {</div> +<div class="line"><a name="l00730"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"> 730</a></span>  <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a> = 0, <span class="comment">//!< null</span></div> +<div class="line"><a name="l00731"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"> 731</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a> = 1, <span class="comment">//!< false</span></div> +<div class="line"><a name="l00732"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"> 732</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a> = 2, <span class="comment">//!< true</span></div> +<div class="line"><a name="l00733"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"> 733</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a> = 3, <span class="comment">//!< object</span></div> +<div class="line"><a name="l00734"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"> 734</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a> = 4, <span class="comment">//!< array </span></div> +<div class="line"><a name="l00735"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"> 735</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a> = 5, <span class="comment">//!< string</span></div> +<div class="line"><a name="l00736"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"> 736</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a> = 6 <span class="comment">//!< number</span></div> +<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="comment"></span>};</div> +<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>  </div> +<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  </div> +<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> <span class="preprocessor">#endif // RAPIDJSON_RAPIDJSON_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/reader_8h_source.html b/reader_8h_source.html index ce3487fd..2508081e 100644 --- a/reader_8h_source.html +++ b/reader_8h_source.html @@ -2342,7 +2342,7 @@ $(document).ready(function(){initNavTree('reader_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a2022599bcd4f64d58885a026f95751d5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2022599bcd4f64d58885a026f95751d5">rapidjson::kParseErrorDocumentRootNotSingular</a></div><div class="ttdoc">The document root must not follow by other values.</div><div class="ttdef"><b>Definition:</b> error.h:68</div></div> <div class="ttc" id="astructrapidjson_1_1_base_reader_handler_html_a0de969fd05528960c2a7de51b2265bf1"><div class="ttname"><a href="structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1">rapidjson::BaseReaderHandler::RawNumber</a></div><div class="ttdeci">bool RawNumber(const Ch *str, SizeType len, bool copy)</div><div class="ttdoc">enabled via kParseNumbersAsStringsFlag, string is not null-terminated (use length)</div><div class="ttdef"><b>Definition:</b> reader.h:212</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_insitu_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_insitu_string_stream.html">rapidjson::GenericInsituStringStream</a></div><div class="ttdoc">A read-write string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:52</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0">rapidjson::kParseNoFlags</a></div><div class="ttdoc">No flags are set.</div><div class="ttdef"><b>Definition:</b> reader.h:147</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8">rapidjson::kParseNanAndInfFlag</a></div><div class="ttdoc">Allow parsing NaN, Inf, Infinity, -Inf and -Infinity as doubles.</div><div class="ttdef"><b>Definition:</b> reader.h:156</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a2a81a684f39fc882ec99f07e86343f73"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2a81a684f39fc882ec99f07e86343f73">rapidjson::kParseErrorObjectMissCommaOrCurlyBracket</a></div><div class="ttdoc">Missing a comma or '}' after an object member.</div><div class="ttdef"><b>Definition:</b> error.h:74</div></div> @@ -2358,9 +2358,9 @@ $(document).ready(function(){initNavTree('reader_8h_source.html','');}); <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0">rapidjson::kParseFullPrecisionFlag</a></div><div class="ttdoc">Parse number in full precision (but slower).</div><div class="ttdef"><b>Definition:</b> reader.h:152</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7d3acf640886b1f2552dc8c4cd6dea60"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">rapidjson::ParseErrorCode</a></div><div class="ttdeci">ParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> error.h:64</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a636209a2e516fbdb4db5ad0a83a6b386"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a636209a2e516fbdb4db5ad0a83a6b386">rapidjson::kParseErrorStringUnicodeSurrogateInvalid</a></div><div class="ttdoc">The surrogate pair in string is invalid.</div><div class="ttdef"><b>Definition:</b> error.h:79</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec">rapidjson::kParseTrailingCommasFlag</a></div><div class="ttdoc">Allow trailing commas at the end of objects and arrays.</div><div class="ttdef"><b>Definition:</b> reader.h:155</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ac9c540b77de19661f6f45e04b9b0937b"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b">rapidjson::GenericReader::Parse</a></div><div class="ttdeci">ParseResult Parse(InputStream &is, Handler &handler)</div><div class="ttdoc">Parse JSON text.</div><div class="ttdef"><b>Definition:</b> reader.h:559</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_a2bac14d193873d661d79ad000473a908"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908">rapidjson::GenericReader::Parse</a></div><div class="ttdeci">ParseResult Parse(InputStream &is, Handler &handler)</div><div class="ttdoc">Parse JSON text (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> reader.h:600</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7f8c4265b2edda78568ae3338aaf1461"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7f8c4265b2edda78568ae3338aaf1461">RAPIDJSON_PARSE_ERROR_NORETURN</a></div><div class="ttdeci">#define RAPIDJSON_PARSE_ERROR_NORETURN(parseErrorCode, offset)</div><div class="ttdoc">Macro to indicate a parse error.</div><div class="ttdef"><b>Definition:</b> reader.h:100</div></div> @@ -2381,15 +2381,15 @@ $(document).ready(function(){initNavTree('reader_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f">rapidjson::kParseErrorNumberMissFraction</a></div><div class="ttdoc">Miss fraction part in number.</div><div class="ttdef"><b>Definition:</b> error.h:85</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_a56ab1065ea75167aeacb4802425bf57f"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#a56ab1065ea75167aeacb4802425bf57f">rapidjson::GenericReader::GenericReader</a></div><div class="ttdeci">GenericReader(StackAllocator *stackAllocator=0, size_t stackCapacity=kDefaultStackCapacity)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> reader.h:547</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a28a1c720ae63560780ccd992dc999ab7"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a28a1c720ae63560780ccd992dc999ab7">rapidjson::kParseErrorNumberMissExponent</a></div><div class="ttdoc">Miss exponent in number.</div><div class="ttdef"><b>Definition:</b> error.h:86</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:494</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a8dd0af5e6103a6503c61c38cb2b0bab9"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a8dd0af5e6103a6503c61c38cb2b0bab9">rapidjson::kParseErrorStringEscapeInvalid</a></div><div class="ttdoc">Invalid escape character in string.</div><div class="ttdef"><b>Definition:</b> error.h:80</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gae3689840fa6e89a241313f33b602f865"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865">RAPIDJSON_PARSE_ERROR</a></div><div class="ttdeci">#define RAPIDJSON_PARSE_ERROR(parseErrorCode, offset)</div><div class="ttdoc">(Internal) macro to indicate and handle a parse error.</div><div class="ttdef"><b>Definition:</b> reader.h:119</div></div> <div class="ttc" id="anamespacerapidjson_html_ad5310edd1226f5b3ea82dc0d4d3740c6"><div class="ttname"><a href="namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6">rapidjson::Reader</a></div><div class="ttdeci">GenericReader< UTF8< char >, UTF8< char >, CrtAllocator > Reader</div><div class="ttdoc">Reader with UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57">rapidjson::kParseErrorValueInvalid</a></div><div class="ttdoc">Invalid value.</div><div class="ttdef"><b>Definition:</b> error.h:70</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ac42370c3497a0e2b6973110f298e3a59"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ac42370c3497a0e2b6973110f298e3a59">rapidjson::GenericReader::HasParseError</a></div><div class="ttdeci">bool HasParseError() const</div><div class="ttdoc">Whether a parse error has occurred in the last parsing.</div><div class="ttdef"><b>Definition:</b> reader.h:682</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ab50019e0a715320f83b7610b83dcef8f"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ab50019e0a715320f83b7610b83dcef8f">rapidjson::GenericReader::GetErrorOffset</a></div><div class="ttdeci">size_t GetErrorOffset() const</div><div class="ttdoc">Get the position of last parsing error in input, 0 otherwise.</div><div class="ttdef"><b>Definition:</b> reader.h:688</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html_a9a38a9d5b1ce782cacd4ec1bdf87fc2d"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d">rapidjson::GenericStringStream::src_</a></div><div class="ttdeci">const Ch * src_</div><div class="ttdoc">Current read position.</div><div class="ttdef"><b>Definition:</b> stream.h:168</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987">rapidjson::kParseNumbersAsStringsFlag</a></div><div class="ttdoc">Parse all numbers (ints/doubles) as strings.</div><div class="ttdef"><b>Definition:</b> reader.h:154</div></div> <div class="ttc" id="aclassrapidjson_1_1_handler_html"><div class="ttname"><a href="classrapidjson_1_1_handler.html">Handler</a></div><div class="ttdoc">Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...</div></div> diff --git a/regex_8h_source.html b/regex_8h_source.html index 70ca54fe..b65833dd 100644 --- a/regex_8h_source.html +++ b/regex_8h_source.html @@ -830,10 +830,10 @@ $(document).ready(function(){initNavTree('regex_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> <div class="ttc" id="aclassrapidjson_1_1_encoding_html"><div class="ttname"><a href="classrapidjson_1_1_encoding.html">Encoding</a></div><div class="ttdoc">Concept for encoding of Unicode characters.</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> diff --git a/schema_8h_source.html b/schema_8h_source.html index 1653d36c..55fe592b 100644 --- a/schema_8h_source.html +++ b/schema_8h_source.html @@ -2745,13 +2745,13 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="anamespacerapidjson_html_abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699"><div class="ttname"><a href="namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699">rapidjson::kValidateContinueOnErrorFlag</a></div><div class="ttdoc">Don't stop after first validation error.</div><div class="ttdef"><b>Definition:</b> schema.h:143</div></div> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_ad9f00d71bf62b8983cf2514c43fb1572"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572">rapidjson::GenericSchemaValidator::~GenericSchemaValidator</a></div><div class="ttdeci">~GenericSchemaValidator()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> schema.h:1919</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_ab521826cfc7ca994856323f9f1420d66"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66">rapidjson::GenericSchemaValidator::SetValidateFlags</a></div><div class="ttdeci">void SetValidateFlags(unsigned flags)</div><div class="ttdoc">Implementation of ISchemaValidator.</div><div class="ttdef"><b>Definition:</b> schema.h:1941</div></div> <div class="ttc" id="aclassrapidjson_1_1_i_generic_remote_schema_document_provider_html"><div class="ttname"><a href="classrapidjson_1_1_i_generic_remote_schema_document_provider.html">rapidjson::IGenericRemoteSchemaDocumentProvider</a></div><div class="ttdef"><b>Definition:</b> fwd.h:133</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff">rapidjson::kValidateErrorExclusiveMaximum</a></div><div class="ttdoc">Number is greater than or equal to the 'maximum' value.</div><div class="ttdef"><b>Definition:</b> error.h:168</div></div> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446">rapidjson::kValidateErrorRequired</a></div><div class="ttdoc">Object is missing one or more members required by the schema.</div><div class="ttdef"><b>Definition:</b> error.h:183</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103">rapidjson::kValidateErrorOneOf</a></div><div class="ttdoc">Property did not match any of the sub-schemas specified by 'oneOf'.</div><div class="ttdef"><b>Definition:</b> error.h:191</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga8d06f2d50592811d2890b45243b8adcc"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc">RAPIDJSON_VALIDATE_DEFAULT_FLAGS</a></div><div class="ttdeci">#define RAPIDJSON_VALIDATE_DEFAULT_FLAGS</div><div class="ttdoc">User-defined kValidateDefaultFlags definition.</div><div class="ttdef"><b>Definition:</b> schema.h:135</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d">rapidjson::kValidateErrorOneOfMatch</a></div><div class="ttdoc">Property matched more than one of the sub-schemas specified by 'oneOf'.</div><div class="ttdef"><b>Definition:</b> error.h:192</div></div> @@ -2759,20 +2759,20 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_a03bcd5497a574cffbd066d0aec2b5585"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#a03bcd5497a574cffbd066d0aec2b5585">rapidjson::GenericSchemaValidator::GetInvalidSchemaKeyword</a></div><div class="ttdeci">const Ch * GetInvalidSchemaKeyword() const</div><div class="ttdoc">Gets the keyword of invalid schema.</div><div class="ttdef"><b>Definition:</b> schema.h:1968</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b">rapidjson::kValidateErrorExclusiveMinimum</a></div><div class="ttdoc">Number is less than or equal to the 'minimum' value.</div><div class="ttdef"><b>Definition:</b> error.h:170</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3">rapidjson::kValidateErrorEnum</a></div><div class="ttdoc">Property has a value that is not one of its allowed enumerated values.</div><div class="ttdef"><b>Definition:</b> error.h:188</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_acc07bd08b00195d84bb5b83f59c593d3"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#acc07bd08b00195d84bb5b83f59c593d3">rapidjson::GenericSchemaValidator::GenericSchemaValidator</a></div><div class="ttdeci">GenericSchemaValidator(const SchemaDocumentType &schemaDocument, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)</div><div class="ttdoc">Constructor without output handler.</div><div class="ttdef"><b>Definition:</b> schema.h:1862</div></div> <div class="ttc" id="anamespacerapidjson_html_a52bbb5d64d1319495089e1713a0653cf"><div class="ttname"><a href="namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf">rapidjson::SchemaDocument</a></div><div class="ttdeci">GenericSchemaDocument< Value, CrtAllocator > SchemaDocument</div><div class="ttdoc">GenericSchemaDocument using Value type.</div><div class="ttdef"><b>Definition:</b> fwd.h:136</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html_adf6f3372013227873ed392dee1e752bf"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf">rapidjson::GenericSchemaDocument::~GenericSchemaDocument</a></div><div class="ttdeci">~GenericSchemaDocument()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> schema.h:1670</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b">rapidjson::kValidateErrorAdditionalProperties</a></div><div class="ttdoc">Object has additional members that are not allowed by the schema.</div><div class="ttdef"><b>Definition:</b> error.h:184</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_ad32a9ad31dbb588edaaf038ab053275b"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#ad32a9ad31dbb588edaaf038ab053275b">rapidjson::GenericSchemaValidator::IsValid</a></div><div class="ttdeci">virtual bool IsValid() const</div><div class="ttdoc">Checks whether the current state is valid.</div><div class="ttdef"><b>Definition:</b> schema.h:1950</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e">rapidjson::kValidateErrorMaxProperties</a></div><div class="ttdoc">Object has more members than 'maxProperties' value.</div><div class="ttdef"><b>Definition:</b> error.h:181</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_afe6cd0d9088a1d4cf8100c0efc9f76fc"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc">rapidjson::GenericSchemaValidator::Reset</a></div><div class="ttdeci">void Reset()</div><div class="ttdoc">Reset the internal states.</div><div class="ttdef"><b>Definition:</b> schema.h:1925</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f">rapidjson::kValidateErrorMinProperties</a></div><div class="ttdoc">Object has less members than 'minProperties' value.</div><div class="ttdef"><b>Definition:</b> error.h:182</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> <div class="ttc" id="anamespacerapidjson_html_abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde"><div class="ttname"><a href="namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde">rapidjson::kValidateNoFlags</a></div><div class="ttdoc">No flags are set.</div><div class="ttdef"><b>Definition:</b> schema.h:142</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader</a></div><div class="ttdoc">SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429">rapidjson::kValidateErrorNot</a></div><div class="ttdoc">Property matched the sub-schema specified by 'not'.</div><div class="ttdef"><b>Definition:</b> error.h:195</div></div> @@ -2782,10 +2782,10 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_aab6478132518857d1bb2bc66c0dd03e7"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7">rapidjson::GenericSchemaValidator::ResetError</a></div><div class="ttdeci">void ResetError()</div><div class="ttdoc">Reset the error state.</div><div class="ttdef"><b>Definition:</b> schema.h:1933</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html_a8b2ac6de85dc9c1fb4f4d0be4aeb2d6a"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html#a8b2ac6de85dc9c1fb4f4d0be4aeb2d6a">rapidjson::GenericSchemaDocument::GetRoot</a></div><div class="ttdeci">const SchemaType & GetRoot() const</div><div class="ttdoc">Get the root schema.</div><div class="ttdef"><b>Definition:</b> schema.h:1685</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a">rapidjson::kValidateErrorPattern</a></div><div class="ttdoc">String does not match the 'pattern' regular expression.</div><div class="ttdef"><b>Definition:</b> error.h:174</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a></div><div class="ttdoc">Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> <div class="ttc" id="anamespacerapidjson_html_af91eb8eea47b79d75b23e29fa9c0abb5"><div class="ttname"><a href="namespacerapidjson.html#af91eb8eea47b79d75b23e29fa9c0abb5">rapidjson::IRemoteSchemaDocumentProvider</a></div><div class="ttdeci">IGenericRemoteSchemaDocumentProvider< SchemaDocument > IRemoteSchemaDocumentProvider</div><div class="ttdoc">IGenericRemoteSchemaDocumentProvider using SchemaDocument.</div><div class="ttdef"><b>Definition:</b> fwd.h:139</div></div> <div class="ttc" id="anamespacerapidjson_html_abfd1e973a5f464025877decd4dd6ece5"><div class="ttname"><a href="namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5">rapidjson::ValidateFlag</a></div><div class="ttdeci">ValidateFlag</div><div class="ttdoc">Combination of validate flags.</div><div class="ttdef"><b>Definition:</b> schema.h:141</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666">rapidjson::kValidateErrorAllOf</a></div><div class="ttdoc">Property did not match all of the sub-schemas specified by 'allOf'.</div><div class="ttdef"><b>Definition:</b> error.h:193</div></div> @@ -2799,7 +2799,7 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b">rapidjson::kValidateErrorMaximum</a></div><div class="ttdoc">Number is greater than the 'maximum' value.</div><div class="ttdef"><b>Definition:</b> error.h:167</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962">rapidjson::kValidateErrorDependencies</a></div><div class="ttdoc">Object has missing property or schema dependencies.</div><div class="ttdef"><b>Definition:</b> error.h:186</div></div> <div class="ttc" id="aclassrapidjson_1_1_schema_validating_reader_html_a1e2bcc66cad23376241cd91e8bf8c706"><div class="ttname"><a href="classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706">rapidjson::SchemaValidatingReader::SchemaValidatingReader</a></div><div class="ttdeci">SchemaValidatingReader(InputStream &is, const SchemaDocumentType &sd)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> schema.h:2597</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e">rapidjson::kValidateErrorMinLength</a></div><div class="ttdoc">String is longer than the 'maxLength' value.</div><div class="ttdef"><b>Definition:</b> error.h:173</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html_aeebf51ef6353f6a01d6f6618da6d0865"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html#aeebf51ef6353f6a01d6f6618da6d0865">rapidjson::GenericSchemaDocument::GenericSchemaDocument</a></div><div class="ttdeci">GenericSchemaDocument(const ValueType &document, const Ch *uri=0, SizeType uriLength=0, IRemoteSchemaDocumentProviderType *remoteProvider=0, Allocator *allocator=0)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> schema.h:1604</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb">rapidjson::kValidateErrorAdditionalItems</a></div><div class="ttdoc">Array has additional items that are not allowed by the schema.</div><div class="ttdef"><b>Definition:</b> error.h:179</div></div> @@ -2807,7 +2807,7 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_a422c16457e512835b0d0f64ec1c81ba2"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#a422c16457e512835b0d0f64ec1c81ba2">rapidjson::GenericSchemaValidator::GetError</a></div><div class="ttdeci">ValueType & GetError()</div><div class="ttdoc">Gets the error object.</div><div class="ttdef"><b>Definition:</b> schema.h:1957</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_a60dfb4a89593c8d3ca4c89a6202feb52"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#a60dfb4a89593c8d3ca4c89a6202feb52">rapidjson::GenericSchemaValidator::GetInvalidDocumentPointer</a></div><div class="ttdeci">PointerType GetInvalidDocumentPointer() const</div><div class="ttdoc">Gets the JSON pointer pointed to the invalid value.</div><div class="ttdef"><b>Definition:</b> schema.h:1984</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e">rapidjson::kValidateErrors</a></div><div class="ttdoc">Top level error code when kValidateContinueOnErrorsFlag set.</div><div class="ttdef"><b>Definition:</b> error.h:163</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html">rapidjson::GenericSchemaDocument</a></div><div class="ttdoc">JSON schema document.</div><div class="ttdef"><b>Definition:</b> fwd.h:136</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html">rapidjson::GenericSchemaValidator</a></div><div class="ttdoc">JSON Schema Validator.</div><div class="ttdef"><b>Definition:</b> fwd.h:145</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49">rapidjson::kValidateErrorMaxLength</a></div><div class="ttdoc">String is longer than the 'maxLength' value.</div><div class="ttdef"><b>Definition:</b> error.h:172</div></div> diff --git a/search/all_10.js b/search/all_10.js index 920e908f..37ccad9f 100644 --- a/search/all_10.js +++ b/search/all_10.js @@ -1,35 +1,35 @@ var searchData= [ - ['sax_279',['SAX',['../md_doc_sax.html',1,'']]], - ['schema_280',['Schema',['../md_doc_schema.html',1,'']]], - ['stream_281',['Stream',['../md_doc_stream.html',1,'']]], - ['s_282',['s',['../structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994',1,'rapidjson::GenericStringRef']]], - ['schemadocument_283',['SchemaDocument',['../namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf',1,'rapidjson']]], - ['schemavalidatingreader_284',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html',1,'rapidjson::SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >'],['../classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706',1,'rapidjson::SchemaValidatingReader::SchemaValidatingReader()']]], - ['set_285',['Set',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a40c0bd4d6c535c57acbb5c2e656bea38',1,'rapidjson::ParseResult']]], - ['setformatoptions_286',['SetFormatOptions',['../classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090',1,'rapidjson::PrettyWriter']]], - ['setindent_287',['SetIndent',['../classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0',1,'rapidjson::PrettyWriter']]], - ['setmaxdecimalplaces_288',['SetMaxDecimalPlaces',['../classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634',1,'rapidjson::Writer']]], - ['setobjectraw_289',['SetObjectRaw',['../classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac',1,'rapidjson::GenericValue']]], - ['setstringraw_290',['SetStringRaw',['../classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s, Allocator &allocator)']]], - ['setvalidateflags_291',['SetValidateFlags',['../classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66',1,'rapidjson::GenericSchemaValidator']]], - ['shared_292',['Shared',['../classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc',1,'rapidjson::MemoryPoolAllocator']]], - ['shortstring_293',['ShortString',['../structrapidjson_1_1_generic_value_1_1_short_string.html',1,'rapidjson::GenericValue']]], - ['size_294',['Size',['../classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265',1,'rapidjson::MemoryPoolAllocator']]], - ['size_5f_295',['size_',['../structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace',1,'rapidjson::MemoryStream']]], - ['sizetype_296',['SizeType',['../namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84',1,'rapidjson']]], - ['skipwhitespace_297',['SkipWhitespace',['../namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a',1,'rapidjson::SkipWhitespace(InputStream &is)'],['../namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2',1,'rapidjson::SkipWhitespace(InsituStringStream &is)'],['../namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568',1,'rapidjson::SkipWhitespace(StringStream &is)']]], - ['src_5f_298',['src_',['../structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722',1,'rapidjson::MemoryStream::src_()'],['../structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d',1,'rapidjson::GenericStringStream::src_()']]], - ['stdallocator_299',['StdAllocator',['../classrapidjson_1_1_std_allocator.html',1,'rapidjson']]], - ['stdallocator_3c_20void_2c_20baseallocator_20_3e_300',['StdAllocator< void, BaseAllocator >',['../classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html',1,'rapidjson']]], - ['stream_301',['Stream',['../classrapidjson_1_1_stream.html',1,'']]], - ['streamtraits_302',['StreamTraits',['../structrapidjson_1_1_stream_traits.html',1,'rapidjson']]], - ['streamtraits_3c_20genericinsitustringstream_3c_20encoding_20_3e_20_3e_303',['StreamTraits< GenericInsituStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], - ['streamtraits_3c_20genericstringstream_3c_20encoding_20_3e_20_3e_304',['StreamTraits< GenericStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], - ['string_305',['String',['../structrapidjson_1_1_generic_value_1_1_string.html',1,'rapidjson::GenericValue< Encoding, Allocator >::String'],['../classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c',1,'rapidjson::PrettyWriter::String()'],['../classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24',1,'rapidjson::Writer::String()']]], - ['stringbuffer_306',['StringBuffer',['../namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21',1,'rapidjson']]], - ['stringref_307',['StringRef',['../structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::GenericStringRef::StringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::GenericStringRef::StringRef(const CharType *str, size_t length)'],['../structrapidjson_1_1_generic_string_ref.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::GenericStringRef::StringRef(const std::basic_string< CharType > &str)'],['../namespacerapidjson.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::StringRef(const CharType *str)'],['../namespacerapidjson.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::StringRef(const CharType *str, size_t length)'],['../namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::StringRef(const std::basic_string< CharType > &str)']]], - ['stringreftype_308',['StringRefType',['../classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379',1,'rapidjson::GenericValue']]], - ['stringstream_309',['StringStream',['../namespacerapidjson.html#a021f77051e9f85188fc2f71ff5a15ebc',1,'rapidjson']]], - ['swap_310',['Swap',['../classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b',1,'rapidjson::GenericDocument::Swap()'],['../classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b',1,'rapidjson::GenericPointer::Swap()'],['../classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d',1,'rapidjson::GenericDocument::swap()'],['../classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937',1,'rapidjson::GenericPointer::swap()']]] + ['sax_281',['SAX',['../md_doc_sax.html',1,'']]], + ['schema_282',['Schema',['../md_doc_schema.html',1,'']]], + ['stream_283',['Stream',['../md_doc_stream.html',1,'']]], + ['s_284',['s',['../structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994',1,'rapidjson::GenericStringRef']]], + ['schemadocument_285',['SchemaDocument',['../namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf',1,'rapidjson']]], + ['schemavalidatingreader_286',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html',1,'rapidjson::SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >'],['../classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706',1,'rapidjson::SchemaValidatingReader::SchemaValidatingReader()']]], + ['set_287',['Set',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a40c0bd4d6c535c57acbb5c2e656bea38',1,'rapidjson::ParseResult']]], + ['setformatoptions_288',['SetFormatOptions',['../classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090',1,'rapidjson::PrettyWriter']]], + ['setindent_289',['SetIndent',['../classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0',1,'rapidjson::PrettyWriter']]], + ['setmaxdecimalplaces_290',['SetMaxDecimalPlaces',['../classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634',1,'rapidjson::Writer']]], + ['setobjectraw_291',['SetObjectRaw',['../classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac',1,'rapidjson::GenericValue']]], + ['setstringraw_292',['SetStringRaw',['../classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s, Allocator &allocator)']]], + ['setvalidateflags_293',['SetValidateFlags',['../classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66',1,'rapidjson::GenericSchemaValidator']]], + ['shared_294',['Shared',['../classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc',1,'rapidjson::MemoryPoolAllocator']]], + ['shortstring_295',['ShortString',['../structrapidjson_1_1_generic_value_1_1_short_string.html',1,'rapidjson::GenericValue']]], + ['size_296',['Size',['../classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265',1,'rapidjson::MemoryPoolAllocator']]], + ['size_5f_297',['size_',['../structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace',1,'rapidjson::MemoryStream']]], + ['sizetype_298',['SizeType',['../namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84',1,'rapidjson']]], + ['skipwhitespace_299',['SkipWhitespace',['../namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a',1,'rapidjson::SkipWhitespace(InputStream &is)'],['../namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2',1,'rapidjson::SkipWhitespace(InsituStringStream &is)'],['../namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568',1,'rapidjson::SkipWhitespace(StringStream &is)']]], + ['src_5f_300',['src_',['../structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722',1,'rapidjson::MemoryStream::src_()'],['../structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d',1,'rapidjson::GenericStringStream::src_()']]], + ['stdallocator_301',['StdAllocator',['../classrapidjson_1_1_std_allocator.html',1,'rapidjson']]], + ['stdallocator_3c_20void_2c_20baseallocator_20_3e_302',['StdAllocator< void, BaseAllocator >',['../classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html',1,'rapidjson']]], + ['stream_303',['Stream',['../classrapidjson_1_1_stream.html',1,'']]], + ['streamtraits_304',['StreamTraits',['../structrapidjson_1_1_stream_traits.html',1,'rapidjson']]], + ['streamtraits_3c_20genericinsitustringstream_3c_20encoding_20_3e_20_3e_305',['StreamTraits< GenericInsituStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], + ['streamtraits_3c_20genericstringstream_3c_20encoding_20_3e_20_3e_306',['StreamTraits< GenericStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], + ['string_307',['String',['../structrapidjson_1_1_generic_value_1_1_string.html',1,'rapidjson::GenericValue< Encoding, Allocator >::String'],['../classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c',1,'rapidjson::PrettyWriter::String()'],['../classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24',1,'rapidjson::Writer::String()']]], + ['stringbuffer_308',['StringBuffer',['../namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21',1,'rapidjson']]], + ['stringref_309',['StringRef',['../structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::GenericStringRef::StringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::GenericStringRef::StringRef(const CharType *str, size_t length)'],['../structrapidjson_1_1_generic_string_ref.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::GenericStringRef::StringRef(const std::basic_string< CharType > &str)'],['../namespacerapidjson.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::StringRef(const CharType *str)'],['../namespacerapidjson.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::StringRef(const CharType *str, size_t length)'],['../namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::StringRef(const std::basic_string< CharType > &str)']]], + ['stringreftype_310',['StringRefType',['../classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379',1,'rapidjson::GenericValue']]], + ['stringstream_311',['StringStream',['../namespacerapidjson.html#a021f77051e9f85188fc2f71ff5a15ebc',1,'rapidjson']]], + ['swap_312',['swap',['../classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d',1,'rapidjson::GenericDocument::swap()'],['../classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937',1,'rapidjson::GenericPointer::swap()'],['../classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b',1,'rapidjson::GenericDocument::Swap()'],['../classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b',1,'rapidjson::GenericPointer::Swap()']]] ]; diff --git a/search/all_11.js b/search/all_11.js index 555b0325..382685cc 100644 --- a/search/all_11.js +++ b/search/all_11.js @@ -1,11 +1,11 @@ var searchData= [ - ['tutorial_311',['Tutorial',['../md_doc_tutorial.html',1,'']]], - ['token_312',['Token',['../structrapidjson_1_1_generic_pointer_1_1_token.html',1,'rapidjson::GenericPointer']]], - ['tokencount_5f_313',['tokenCount_',['../classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b',1,'rapidjson::GenericPointer']]], - ['tokens_5f_314',['tokens_',['../classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7',1,'rapidjson::GenericPointer']]], - ['transcode_315',['Transcode',['../structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664',1,'rapidjson::Transcoder']]], - ['transcoder_316',['Transcoder',['../structrapidjson_1_1_transcoder.html',1,'rapidjson']]], - ['transcoder_3c_20encoding_2c_20encoding_20_3e_317',['Transcoder< Encoding, Encoding >',['../structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html',1,'rapidjson']]], - ['type_318',['Type',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4',1,'rapidjson']]] + ['tutorial_313',['Tutorial',['../md_doc_tutorial.html',1,'']]], + ['token_314',['Token',['../structrapidjson_1_1_generic_pointer_1_1_token.html',1,'rapidjson::GenericPointer']]], + ['tokencount_5f_315',['tokenCount_',['../classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b',1,'rapidjson::GenericPointer']]], + ['tokens_5f_316',['tokens_',['../classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7',1,'rapidjson::GenericPointer']]], + ['transcode_317',['Transcode',['../structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664',1,'rapidjson::Transcoder']]], + ['transcoder_318',['Transcoder',['../structrapidjson_1_1_transcoder.html',1,'rapidjson']]], + ['transcoder_3c_20encoding_2c_20encoding_20_3e_319',['Transcoder< Encoding, Encoding >',['../structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html',1,'rapidjson']]], + ['type_320',['Type',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4',1,'rapidjson']]] ]; diff --git a/search/all_12.js b/search/all_12.js index f0d0f3eb..ec3e2320 100644 --- a/search/all_12.js +++ b/search/all_12.js @@ -1,12 +1,12 @@ var searchData= [ - ['u_319',['U',['../structrapidjson_1_1_generic_value_1_1_number_1_1_u.html',1,'rapidjson::GenericValue::Number']]], - ['utf16_320',['UTF16',['../structrapidjson_1_1_u_t_f16.html',1,'rapidjson']]], - ['utf16be_321',['UTF16BE',['../structrapidjson_1_1_u_t_f16_b_e.html',1,'rapidjson']]], - ['utf16le_322',['UTF16LE',['../structrapidjson_1_1_u_t_f16_l_e.html',1,'rapidjson']]], - ['utf32_323',['UTF32',['../structrapidjson_1_1_u_t_f32.html',1,'rapidjson']]], - ['utf32be_324',['UTF32BE',['../structrapidjson_1_1_u_t_f32_b_e.html',1,'rapidjson']]], - ['utf32le_325',['UTF32LE',['../structrapidjson_1_1_u_t_f32_l_e.html',1,'rapidjson']]], - ['utf8_326',['UTF8',['../structrapidjson_1_1_u_t_f8.html',1,'rapidjson']]], - ['utftype_327',['UTFType',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb',1,'rapidjson']]] + ['u_321',['U',['../structrapidjson_1_1_generic_value_1_1_number_1_1_u.html',1,'rapidjson::GenericValue::Number']]], + ['utf16_322',['UTF16',['../structrapidjson_1_1_u_t_f16.html',1,'rapidjson']]], + ['utf16be_323',['UTF16BE',['../structrapidjson_1_1_u_t_f16_b_e.html',1,'rapidjson']]], + ['utf16le_324',['UTF16LE',['../structrapidjson_1_1_u_t_f16_l_e.html',1,'rapidjson']]], + ['utf32_325',['UTF32',['../structrapidjson_1_1_u_t_f32.html',1,'rapidjson']]], + ['utf32be_326',['UTF32BE',['../structrapidjson_1_1_u_t_f32_b_e.html',1,'rapidjson']]], + ['utf32le_327',['UTF32LE',['../structrapidjson_1_1_u_t_f32_l_e.html',1,'rapidjson']]], + ['utf8_328',['UTF8',['../structrapidjson_1_1_u_t_f8.html',1,'rapidjson']]], + ['utftype_329',['UTFType',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb',1,'rapidjson']]] ]; diff --git a/search/all_13.js b/search/all_13.js index 400c7286..3a9d118d 100644 --- a/search/all_13.js +++ b/search/all_13.js @@ -1,10 +1,10 @@ var searchData= [ - ['validate_328',['Validate',['../structrapidjson_1_1_transcoder.html#ae9178e512e99394a38785e73927140da',1,'rapidjson::Transcoder']]], - ['validateerrorcode_329',['ValidateErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga633f43fd92e6ed5ceb87dbf570647847',1,'rapidjson']]], - ['validateflag_330',['ValidateFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5',1,'rapidjson']]], - ['value_331',['value',['../classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6',1,'rapidjson::GenericMember::value()'],['../namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505',1,'rapidjson::Value()']]], - ['valuecount_332',['valueCount',['../structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b',1,'rapidjson::Writer::Level']]], - ['valueiterator_333',['ValueIterator',['../classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e',1,'rapidjson::GenericValue']]], - ['valuetype_334',['ValueType',['../classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202',1,'rapidjson::GenericValue::ValueType()'],['../classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc',1,'rapidjson::GenericDocument::ValueType()']]] + ['validate_330',['Validate',['../structrapidjson_1_1_transcoder.html#ae9178e512e99394a38785e73927140da',1,'rapidjson::Transcoder']]], + ['validateerrorcode_331',['ValidateErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga633f43fd92e6ed5ceb87dbf570647847',1,'rapidjson']]], + ['validateflag_332',['ValidateFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5',1,'rapidjson']]], + ['value_333',['value',['../classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6',1,'rapidjson::GenericMember::value()'],['../namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505',1,'rapidjson::Value()']]], + ['valuecount_334',['valueCount',['../structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b',1,'rapidjson::Writer::Level']]], + ['valueiterator_335',['ValueIterator',['../classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e',1,'rapidjson::GenericValue']]], + ['valuetype_336',['ValueType',['../classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202',1,'rapidjson::GenericValue::ValueType()'],['../classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc',1,'rapidjson::GenericDocument::ValueType()']]] ]; diff --git a/search/all_14.js b/search/all_14.js index 3c65f370..a4763cc0 100644 --- a/search/all_14.js +++ b/search/all_14.js @@ -1,5 +1,5 @@ var searchData= [ - ['writeflag_335',['WriteFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19',1,'rapidjson']]], - ['writer_336',['Writer',['../classrapidjson_1_1_writer.html',1,'rapidjson::Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >'],['../classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2',1,'rapidjson::Writer::Writer()']]] + ['writeflag_337',['WriteFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19',1,'rapidjson']]], + ['writer_338',['Writer',['../classrapidjson_1_1_writer.html',1,'rapidjson::Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >'],['../classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2',1,'rapidjson::Writer::Writer()']]] ]; diff --git a/search/all_15.js b/search/all_15.js index 968a1fce..ed54210d 100644 --- a/search/all_15.js +++ b/search/all_15.js @@ -1,8 +1,8 @@ var searchData= [ - ['_7egenericpointer_337',['~GenericPointer',['../classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748',1,'rapidjson::GenericPointer']]], - ['_7egenericschemadocument_338',['~GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf',1,'rapidjson::GenericSchemaDocument']]], - ['_7egenericschemavalidator_339',['~GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572',1,'rapidjson::GenericSchemaValidator']]], - ['_7egenericvalue_340',['~GenericValue',['../classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437',1,'rapidjson::GenericValue']]], - ['_7ememorypoolallocator_341',['~MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700',1,'rapidjson::MemoryPoolAllocator']]] + ['_7egenericpointer_339',['~GenericPointer',['../classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748',1,'rapidjson::GenericPointer']]], + ['_7egenericschemadocument_340',['~GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf',1,'rapidjson::GenericSchemaDocument']]], + ['_7egenericschemavalidator_341',['~GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572',1,'rapidjson::GenericSchemaValidator']]], + ['_7egenericvalue_342',['~GenericValue',['../classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437',1,'rapidjson::GenericValue']]], + ['_7ememorypoolallocator_343',['~MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/search/all_9.js b/search/all_9.js index 05870f1a..10f56251 100644 --- a/search/all_9.js +++ b/search/all_9.js @@ -43,45 +43,46 @@ var searchData= ['kpointerparseerrorinvalidpercentencoding_142',['kPointerParseErrorInvalidPercentEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba29831a02b8ee23a05d552b47f4d64d28',1,'rapidjson']]], ['kpointerparseerrornone_143',['kPointerParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba9094f236b2ec70c42f1ea91dffc1e39b',1,'rapidjson']]], ['kpointerparseerrortokenmustbeginwithsolidus_144',['kPointerParseErrorTokenMustBeginWithSolidus',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba2f2f8b238e201b7d540e8914bbfd2bed',1,'rapidjson']]], - ['kstringtype_145',['kStringType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7',1,'rapidjson']]], - ['ktruetype_146',['kTrueType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e',1,'rapidjson']]], - ['kutf16be_147',['kUTF16BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d',1,'rapidjson']]], - ['kutf16le_148',['kUTF16LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebaa7ffda68d3584eb92155daf3cd1d6481',1,'rapidjson']]], - ['kutf32be_149',['kUTF32BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f',1,'rapidjson']]], - ['kutf32le_150',['kUTF32LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4',1,'rapidjson']]], - ['kutf8_151',['kUTF8',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba3bda3a2e3f0ec2b7e8c5a3d5d4f60a81',1,'rapidjson']]], - ['kvalidatecontinueonerrorflag_152',['kValidateContinueOnErrorFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699',1,'rapidjson']]], - ['kvalidatedefaultflags_153',['kValidateDefaultFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5aee88d74111644920cabddc20fe57eb7c',1,'rapidjson']]], - ['kvalidateerroradditionalitems_154',['kValidateErrorAdditionalItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb',1,'rapidjson']]], - ['kvalidateerroradditionalproperties_155',['kValidateErrorAdditionalProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b',1,'rapidjson']]], - ['kvalidateerrorallof_156',['kValidateErrorAllOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666',1,'rapidjson']]], - ['kvalidateerroranyof_157',['kValidateErrorAnyOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aaba92c1f6cbea5e14e5e8d8b86b042d4',1,'rapidjson']]], - ['kvalidateerrordependencies_158',['kValidateErrorDependencies',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962',1,'rapidjson']]], - ['kvalidateerrorenum_159',['kValidateErrorEnum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3',1,'rapidjson']]], - ['kvalidateerrorexclusivemaximum_160',['kValidateErrorExclusiveMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff',1,'rapidjson']]], - ['kvalidateerrorexclusiveminimum_161',['kValidateErrorExclusiveMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b',1,'rapidjson']]], - ['kvalidateerrormaximum_162',['kValidateErrorMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b',1,'rapidjson']]], - ['kvalidateerrormaxitems_163',['kValidateErrorMaxItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa',1,'rapidjson']]], - ['kvalidateerrormaxlength_164',['kValidateErrorMaxLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49',1,'rapidjson']]], - ['kvalidateerrormaxproperties_165',['kValidateErrorMaxProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e',1,'rapidjson']]], - ['kvalidateerrorminimum_166',['kValidateErrorMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad365b8abebe4008652940df0a5add9c4',1,'rapidjson']]], - ['kvalidateerrorminitems_167',['kValidateErrorMinItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adbf02986e366165c0ef1d89697893802',1,'rapidjson']]], - ['kvalidateerrorminlength_168',['kValidateErrorMinLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e',1,'rapidjson']]], - ['kvalidateerrorminproperties_169',['kValidateErrorMinProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f',1,'rapidjson']]], - ['kvalidateerrormultipleof_170',['kValidateErrorMultipleOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aa01437cd68a424643a8d9c12c1a3ff5a',1,'rapidjson']]], - ['kvalidateerrornone_171',['kValidateErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a569afaca49e48ee8bd928284409dcab5',1,'rapidjson']]], - ['kvalidateerrornot_172',['kValidateErrorNot',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429',1,'rapidjson']]], - ['kvalidateerroroneof_173',['kValidateErrorOneOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103',1,'rapidjson']]], - ['kvalidateerroroneofmatch_174',['kValidateErrorOneOfMatch',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d',1,'rapidjson']]], - ['kvalidateerrorpattern_175',['kValidateErrorPattern',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a',1,'rapidjson']]], - ['kvalidateerrorpatternproperties_176',['kValidateErrorPatternProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac6f7c8c63dd5ec2c838f34c49300e0a1',1,'rapidjson']]], - ['kvalidateerrorrequired_177',['kValidateErrorRequired',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446',1,'rapidjson']]], - ['kvalidateerrors_178',['kValidateErrors',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e',1,'rapidjson']]], - ['kvalidateerrortype_179',['kValidateErrorType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a7035a7fc3f6b3a51c91be264537fc504',1,'rapidjson']]], - ['kvalidateerroruniqueitems_180',['kValidateErrorUniqueItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aebecfc4b0017d7ff7eeeb32a8c97b509',1,'rapidjson']]], - ['kvalidatenoflags_181',['kValidateNoFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde',1,'rapidjson']]], - ['kwritedefaultflags_182',['kWriteDefaultFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226',1,'rapidjson']]], - ['kwritenanandinfflag_183',['kWriteNanAndInfFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39',1,'rapidjson']]], - ['kwritenoflags_184',['kWriteNoFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a',1,'rapidjson']]], - ['kwritevalidateencodingflag_185',['kWriteValidateEncodingFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10',1,'rapidjson']]] + ['krefcounted_145',['kRefCounted',['../classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496',1,'rapidjson::MemoryPoolAllocator']]], + ['kstringtype_146',['kStringType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7',1,'rapidjson']]], + ['ktruetype_147',['kTrueType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e',1,'rapidjson']]], + ['kutf16be_148',['kUTF16BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d',1,'rapidjson']]], + ['kutf16le_149',['kUTF16LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebaa7ffda68d3584eb92155daf3cd1d6481',1,'rapidjson']]], + ['kutf32be_150',['kUTF32BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f',1,'rapidjson']]], + ['kutf32le_151',['kUTF32LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4',1,'rapidjson']]], + ['kutf8_152',['kUTF8',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba3bda3a2e3f0ec2b7e8c5a3d5d4f60a81',1,'rapidjson']]], + ['kvalidatecontinueonerrorflag_153',['kValidateContinueOnErrorFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699',1,'rapidjson']]], + ['kvalidatedefaultflags_154',['kValidateDefaultFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5aee88d74111644920cabddc20fe57eb7c',1,'rapidjson']]], + ['kvalidateerroradditionalitems_155',['kValidateErrorAdditionalItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb',1,'rapidjson']]], + ['kvalidateerroradditionalproperties_156',['kValidateErrorAdditionalProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b',1,'rapidjson']]], + ['kvalidateerrorallof_157',['kValidateErrorAllOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666',1,'rapidjson']]], + ['kvalidateerroranyof_158',['kValidateErrorAnyOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aaba92c1f6cbea5e14e5e8d8b86b042d4',1,'rapidjson']]], + ['kvalidateerrordependencies_159',['kValidateErrorDependencies',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962',1,'rapidjson']]], + ['kvalidateerrorenum_160',['kValidateErrorEnum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3',1,'rapidjson']]], + ['kvalidateerrorexclusivemaximum_161',['kValidateErrorExclusiveMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff',1,'rapidjson']]], + ['kvalidateerrorexclusiveminimum_162',['kValidateErrorExclusiveMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b',1,'rapidjson']]], + ['kvalidateerrormaximum_163',['kValidateErrorMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b',1,'rapidjson']]], + ['kvalidateerrormaxitems_164',['kValidateErrorMaxItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa',1,'rapidjson']]], + ['kvalidateerrormaxlength_165',['kValidateErrorMaxLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49',1,'rapidjson']]], + ['kvalidateerrormaxproperties_166',['kValidateErrorMaxProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e',1,'rapidjson']]], + ['kvalidateerrorminimum_167',['kValidateErrorMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad365b8abebe4008652940df0a5add9c4',1,'rapidjson']]], + ['kvalidateerrorminitems_168',['kValidateErrorMinItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adbf02986e366165c0ef1d89697893802',1,'rapidjson']]], + ['kvalidateerrorminlength_169',['kValidateErrorMinLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e',1,'rapidjson']]], + ['kvalidateerrorminproperties_170',['kValidateErrorMinProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f',1,'rapidjson']]], + ['kvalidateerrormultipleof_171',['kValidateErrorMultipleOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aa01437cd68a424643a8d9c12c1a3ff5a',1,'rapidjson']]], + ['kvalidateerrornone_172',['kValidateErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a569afaca49e48ee8bd928284409dcab5',1,'rapidjson']]], + ['kvalidateerrornot_173',['kValidateErrorNot',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429',1,'rapidjson']]], + ['kvalidateerroroneof_174',['kValidateErrorOneOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103',1,'rapidjson']]], + ['kvalidateerroroneofmatch_175',['kValidateErrorOneOfMatch',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d',1,'rapidjson']]], + ['kvalidateerrorpattern_176',['kValidateErrorPattern',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a',1,'rapidjson']]], + ['kvalidateerrorpatternproperties_177',['kValidateErrorPatternProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac6f7c8c63dd5ec2c838f34c49300e0a1',1,'rapidjson']]], + ['kvalidateerrorrequired_178',['kValidateErrorRequired',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446',1,'rapidjson']]], + ['kvalidateerrors_179',['kValidateErrors',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e',1,'rapidjson']]], + ['kvalidateerrortype_180',['kValidateErrorType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a7035a7fc3f6b3a51c91be264537fc504',1,'rapidjson']]], + ['kvalidateerroruniqueitems_181',['kValidateErrorUniqueItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aebecfc4b0017d7ff7eeeb32a8c97b509',1,'rapidjson']]], + ['kvalidatenoflags_182',['kValidateNoFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde',1,'rapidjson']]], + ['kwritedefaultflags_183',['kWriteDefaultFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226',1,'rapidjson']]], + ['kwritenanandinfflag_184',['kWriteNanAndInfFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39',1,'rapidjson']]], + ['kwritenoflags_185',['kWriteNoFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a',1,'rapidjson']]], + ['kwritevalidateencodingflag_186',['kWriteValidateEncodingFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10',1,'rapidjson']]] ]; diff --git a/search/all_a.js b/search/all_a.js index 0b599dc2..58d57728 100644 --- a/search/all_a.js +++ b/search/all_a.js @@ -1,5 +1,5 @@ var searchData= [ - ['length_186',['length',['../structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111',1,'rapidjson::GenericStringRef::length()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600',1,'rapidjson::GenericPointer::Token::length()']]], - ['level_187',['Level',['../structrapidjson_1_1_writer_1_1_level.html',1,'rapidjson::Writer']]] + ['length_187',['length',['../structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111',1,'rapidjson::GenericStringRef::length()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600',1,'rapidjson::GenericPointer::Token::length()']]], + ['level_188',['Level',['../structrapidjson_1_1_writer_1_1_level.html',1,'rapidjson::Writer']]] ]; diff --git a/search/all_b.js b/search/all_b.js index 1c875ec7..b87415b1 100644 --- a/search/all_b.js +++ b/search/all_b.js @@ -1,8 +1,8 @@ var searchData= [ - ['malloc_188',['Malloc',['../classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344',1,'rapidjson::MemoryPoolAllocator']]], - ['member_189',['Member',['../classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559',1,'rapidjson::GenericValue']]], - ['memberiterator_190',['MemberIterator',['../classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b',1,'rapidjson::GenericValue']]], - ['memorypoolallocator_191',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html',1,'rapidjson::MemoryPoolAllocator< BaseAllocator >'],['../classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)'],['../classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)']]], - ['memorystream_192',['MemoryStream',['../structrapidjson_1_1_memory_stream.html',1,'rapidjson']]] + ['malloc_189',['Malloc',['../classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344',1,'rapidjson::MemoryPoolAllocator']]], + ['member_190',['Member',['../classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559',1,'rapidjson::GenericValue']]], + ['memberiterator_191',['MemberIterator',['../classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b',1,'rapidjson::GenericValue']]], + ['memorypoolallocator_192',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html',1,'rapidjson::MemoryPoolAllocator< BaseAllocator >'],['../classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)'],['../classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)']]], + ['memorystream_193',['MemoryStream',['../structrapidjson_1_1_memory_stream.html',1,'rapidjson']]] ]; diff --git a/search/all_c.js b/search/all_c.js index ba6e7e24..b5701049 100644 --- a/search/all_c.js +++ b/search/all_c.js @@ -1,7 +1,7 @@ var searchData= [ - ['name_193',['name',['../classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607',1,'rapidjson::GenericMember::name()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#aceb59c9796418c20da27b03bf1948fe8',1,'rapidjson::GenericPointer::Token::name()']]], - ['namebuffer_5f_194',['nameBuffer_',['../classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465',1,'rapidjson::GenericPointer']]], - ['nonconstiterator_195',['NonConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb',1,'rapidjson::GenericMemberIterator']]], - ['number_196',['Number',['../unionrapidjson_1_1_generic_value_1_1_number.html',1,'rapidjson::GenericValue']]] + ['name_194',['name',['../classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607',1,'rapidjson::GenericMember::name()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#aceb59c9796418c20da27b03bf1948fe8',1,'rapidjson::GenericPointer::Token::name()']]], + ['namebuffer_5f_195',['nameBuffer_',['../classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465',1,'rapidjson::GenericPointer']]], + ['nonconstiterator_196',['NonConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb',1,'rapidjson::GenericMemberIterator']]], + ['number_197',['Number',['../unionrapidjson_1_1_generic_value_1_1_number.html',1,'rapidjson::GenericValue']]] ]; diff --git a/search/all_d.js b/search/all_d.js index 20b37ac0..e0f338dd 100644 --- a/search/all_d.js +++ b/search/all_d.js @@ -1,13 +1,13 @@ var searchData= [ - ['objectdata_197',['ObjectData',['../structrapidjson_1_1_generic_value_1_1_object_data.html',1,'rapidjson::GenericValue']]], - ['offset_198',['Offset',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a85036788b0cfd1c676900de6f8260bd6',1,'rapidjson::ParseResult']]], - ['operator_20booleantype_199',['operator BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#af0936ace1dc9b674e9afb75ec6145b32',1,'rapidjson::ParseResult']]], - ['operator_20const_20ch_20_2a_200',['operator const Ch *',['../structrapidjson_1_1_generic_string_ref.html#a86d30bb594a41619a7a5ba6c8dcce2bd',1,'rapidjson::GenericStringRef']]], - ['operator_20parseresult_201',['operator ParseResult',['../classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974',1,'rapidjson::GenericDocument']]], - ['operator_21_3d_202',['operator!=',['../classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99',1,'rapidjson::MemoryPoolAllocator']]], - ['operator_2d_203',['operator-',['../classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2',1,'rapidjson::GenericMemberIterator']]], - ['operator_3d_204',['operator=',['../classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4',1,'rapidjson::GenericMember::operator=()'],['../classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac',1,'rapidjson::GenericValue::operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c',1,'rapidjson::GenericValue::operator=(StringRefType str) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6',1,'rapidjson::GenericPointer::operator=()']]], - ['operator_3d_3d_205',['operator==',['../classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724',1,'rapidjson::MemoryPoolAllocator']]], - ['ownallocator_5f_206',['ownAllocator_',['../classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445',1,'rapidjson::GenericPointer']]] + ['objectdata_198',['ObjectData',['../structrapidjson_1_1_generic_value_1_1_object_data.html',1,'rapidjson::GenericValue']]], + ['offset_199',['Offset',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a85036788b0cfd1c676900de6f8260bd6',1,'rapidjson::ParseResult']]], + ['operator_20booleantype_200',['operator BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#af0936ace1dc9b674e9afb75ec6145b32',1,'rapidjson::ParseResult']]], + ['operator_20const_20ch_20_2a_201',['operator const Ch *',['../structrapidjson_1_1_generic_string_ref.html#a86d30bb594a41619a7a5ba6c8dcce2bd',1,'rapidjson::GenericStringRef']]], + ['operator_20parseresult_202',['operator ParseResult',['../classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974',1,'rapidjson::GenericDocument']]], + ['operator_21_3d_203',['operator!=',['../classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99',1,'rapidjson::MemoryPoolAllocator']]], + ['operator_2d_204',['operator-',['../classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2',1,'rapidjson::GenericMemberIterator']]], + ['operator_3d_205',['operator=',['../classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4',1,'rapidjson::GenericMember::operator=()'],['../classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac',1,'rapidjson::GenericValue::operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c',1,'rapidjson::GenericValue::operator=(StringRefType str) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6',1,'rapidjson::GenericPointer::operator=()']]], + ['operator_3d_3d_206',['operator==',['../classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724',1,'rapidjson::MemoryPoolAllocator']]], + ['ownallocator_5f_207',['ownAllocator_',['../classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445',1,'rapidjson::GenericPointer']]] ]; diff --git a/search/all_e.js b/search/all_e.js index 7c1a5d4b..7ee8d0c5 100644 --- a/search/all_e.js +++ b/search/all_e.js @@ -1,22 +1,22 @@ var searchData= [ - ['performance_207',['Performance',['../md_doc_performance.html',1,'']]], - ['pointer_208',['Pointer',['../md_doc_pointer.html',1,'']]], - ['parse_209',['Parse',['../classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c',1,'rapidjson::GenericDocument::Parse(const typename SourceEncoding::Ch *str)'],['../classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)'],['../classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)']]], - ['parseerrorcode_210',['ParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60',1,'rapidjson']]], - ['parseerrorcode_5f_211',['parseErrorCode_',['../classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34',1,'rapidjson::GenericPointer']]], - ['parseerroroffset_5f_212',['parseErrorOffset_',['../classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a',1,'rapidjson::GenericPointer']]], - ['parseflag_213',['ParseFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9',1,'rapidjson']]], - ['parseinsitu_214',['ParseInsitu',['../classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)'],['../classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)']]], - ['parseresult_215',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result',1,'rapidjson::ParseResult'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1',1,'rapidjson::ParseResult::ParseResult()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ad15710045513f13ba526753c4a2cb59b',1,'rapidjson::ParseResult::ParseResult(ParseErrorCode code, size_t offset)']]], - ['parsestream_216',['ParseStream',['../classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)']]], - ['percentencodestream_217',['PercentEncodeStream',['../classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html',1,'rapidjson::GenericPointer']]], - ['pointer_218',['Pointer',['../classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107',1,'rapidjson::GenericMemberIterator::Pointer()'],['../namespacerapidjson.html#a080910f74d2f5046e6724280159cf374',1,'rapidjson::Pointer()']]], - ['pointerparseerrorcode_219',['PointerParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b',1,'rapidjson']]], - ['populate_220',['Populate',['../classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64',1,'rapidjson::GenericDocument']]], - ['prettyformatoptions_221',['PrettyFormatOptions',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b',1,'rapidjson']]], - ['prettywriter_222',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html',1,'rapidjson::PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >'],['../classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0',1,'rapidjson::PrettyWriter::PrettyWriter()']]], - ['putn_223',['PutN',['../namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a',1,'rapidjson::PutN(FileWriteStream &stream, char c, size_t n)'],['../namespacerapidjson.html#aba27b0c8dcf724aa2b288a24fda0811b',1,'rapidjson::PutN(MemoryBuffer &memoryBuffer, char c, size_t n)'],['../namespacerapidjson.html#a1d49d2cab617858b53a1db23b1759f43',1,'rapidjson::PutN(Stream &stream, Ch c, size_t n)'],['../namespacerapidjson.html#a9d43be9c033dc49738b713fe6fbafecf',1,'rapidjson::PutN(GenericStringBuffer< UTF8<> > &stream, char c, size_t n)']]], - ['putreserve_224',['PutReserve',['../namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740',1,'rapidjson']]], - ['putunsafe_225',['PutUnsafe',['../namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20',1,'rapidjson']]] + ['performance_208',['Performance',['../md_doc_performance.html',1,'']]], + ['pointer_209',['Pointer',['../md_doc_pointer.html',1,'']]], + ['parse_210',['Parse',['../classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c',1,'rapidjson::GenericDocument::Parse(const typename SourceEncoding::Ch *str)'],['../classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)'],['../classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)']]], + ['parseerrorcode_211',['ParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60',1,'rapidjson']]], + ['parseerrorcode_5f_212',['parseErrorCode_',['../classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34',1,'rapidjson::GenericPointer']]], + ['parseerroroffset_5f_213',['parseErrorOffset_',['../classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a',1,'rapidjson::GenericPointer']]], + ['parseflag_214',['ParseFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9',1,'rapidjson']]], + ['parseinsitu_215',['ParseInsitu',['../classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)'],['../classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)']]], + ['parseresult_216',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result',1,'rapidjson::ParseResult'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1',1,'rapidjson::ParseResult::ParseResult()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ad15710045513f13ba526753c4a2cb59b',1,'rapidjson::ParseResult::ParseResult(ParseErrorCode code, size_t offset)']]], + ['parsestream_217',['ParseStream',['../classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)']]], + ['percentencodestream_218',['PercentEncodeStream',['../classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html',1,'rapidjson::GenericPointer']]], + ['pointer_219',['Pointer',['../classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107',1,'rapidjson::GenericMemberIterator::Pointer()'],['../namespacerapidjson.html#a080910f74d2f5046e6724280159cf374',1,'rapidjson::Pointer()']]], + ['pointerparseerrorcode_220',['PointerParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b',1,'rapidjson']]], + ['populate_221',['Populate',['../classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64',1,'rapidjson::GenericDocument']]], + ['prettyformatoptions_222',['PrettyFormatOptions',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b',1,'rapidjson']]], + ['prettywriter_223',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html',1,'rapidjson::PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >'],['../classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0',1,'rapidjson::PrettyWriter::PrettyWriter()']]], + ['putn_224',['PutN',['../namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a',1,'rapidjson::PutN(FileWriteStream &stream, char c, size_t n)'],['../namespacerapidjson.html#aba27b0c8dcf724aa2b288a24fda0811b',1,'rapidjson::PutN(MemoryBuffer &memoryBuffer, char c, size_t n)'],['../namespacerapidjson.html#a1d49d2cab617858b53a1db23b1759f43',1,'rapidjson::PutN(Stream &stream, Ch c, size_t n)'],['../namespacerapidjson.html#a9d43be9c033dc49738b713fe6fbafecf',1,'rapidjson::PutN(GenericStringBuffer< UTF8<> > &stream, char c, size_t n)']]], + ['putreserve_225',['PutReserve',['../namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740',1,'rapidjson']]], + ['putunsafe_226',['PutUnsafe',['../namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20',1,'rapidjson']]] ]; diff --git a/search/all_f.js b/search/all_f.js index 798cde02..5ffd996e 100644 --- a/search/all_f.js +++ b/search/all_f.js @@ -1,56 +1,57 @@ var searchData= [ - ['rapidjson_226',['rapidjson',['../namespacerapidjson.html',1,'']]], - ['rapidjson_2eh_227',['rapidjson.h',['../rapidjson_8h.html',1,'']]], - ['rapidjson_5f48bitpointer_5foptimization_228',['RAPIDJSON_48BITPOINTER_OPTIMIZATION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185',1,'rapidjson.h']]], - ['rapidjson_5f64bit_229',['RAPIDJSON_64BIT',['../rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52',1,'rapidjson.h']]], - ['rapidjson_5falign_230',['RAPIDJSON_ALIGN',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242',1,'rapidjson.h']]], - ['rapidjson_5fallocator_5fdefault_5fchunk_5fcapacity_231',['RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5',1,'allocators.h']]], - ['rapidjson_5fassert_232',['RAPIDJSON_ASSERT',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c',1,'rapidjson.h']]], - ['rapidjson_5fbigendian_233',['RAPIDJSON_BIGENDIAN',['../rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974',1,'rapidjson.h']]], - ['rapidjson_20configuration_234',['RapidJSON configuration',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html',1,'']]], - ['rapidjson_5fdefault_5fallocator_235',['RAPIDJSON_DEFAULT_ALLOCATOR',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga04a88f0b2db9091006eb7fc6deb6077b',1,'document.h']]], - ['rapidjson_5fdefault_5fstack_5fallocator_236',['RAPIDJSON_DEFAULT_STACK_ALLOCATOR',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1178cffff7c596922a5ed3fda30c5520',1,'document.h']]], - ['rapidjson_5fdelete_237',['RAPIDJSON_DELETE',['../rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a',1,'rapidjson.h']]], - ['rapidjson_5fdisableif_5freturn_238',['RAPIDJSON_DISABLEIF_RETURN',['../classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0',1,'rapidjson::GenericValue::RAPIDJSON_DISABLEIF_RETURN()'],['../classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81',1,'rapidjson::GenericPointer::RAPIDJSON_DISABLEIF_RETURN()']]], - ['rapidjson_5fendian_239',['RAPIDJSON_ENDIAN',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07',1,'rapidjson.h']]], - ['rapidjson_5ferror_5fchartype_240',['RAPIDJSON_ERROR_CHARTYPE',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7e4636fd48d0148f102b8a13f0539d8c',1,'error.h']]], - ['rapidjson_5ferror_5fstring_241',['RAPIDJSON_ERROR_STRING',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabe2e1bd1349e5a7d6c1af78c05a98f0d',1,'error.h']]], - ['rapidjson_20error_20handling_242',['RapidJSON error handling',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html',1,'']]], - ['rapidjson_5ffree_243',['RAPIDJSON_FREE',['../rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f',1,'rapidjson.h']]], - ['rapidjson_5fhas_5fstdstring_244',['RAPIDJSON_HAS_STDSTRING',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f',1,'rapidjson.h']]], - ['rapidjson_5flikely_245',['RAPIDJSON_LIKELY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1',1,'rapidjson.h']]], - ['rapidjson_5flittleendian_246',['RAPIDJSON_LITTLEENDIAN',['../rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c',1,'rapidjson.h']]], - ['rapidjson_5fmajor_5fversion_247',['RAPIDJSON_MAJOR_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf1ff1685be6cbebb5d4b2ab997776f45',1,'rapidjson.h']]], - ['rapidjson_5fmalloc_248',['RAPIDJSON_MALLOC',['../rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27',1,'rapidjson.h']]], - ['rapidjson_5fminor_5fversion_249',['RAPIDJSON_MINOR_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf9125105c593a636a79f1c2d96835376',1,'rapidjson.h']]], - ['rapidjson_5fnamespace_250',['RAPIDJSON_NAMESPACE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga743a79d3af927391fe3eb5c979136899',1,'rapidjson.h']]], - ['rapidjson_5fnew_251',['RAPIDJSON_NEW',['../rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b',1,'rapidjson.h']]], - ['rapidjson_5fno_5fint64define_252',['RAPIDJSON_NO_INT64DEFINE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c',1,'rapidjson.h']]], - ['rapidjson_5fno_5fsizetypedefine_253',['RAPIDJSON_NO_SIZETYPEDEFINE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f',1,'rapidjson.h']]], - ['rapidjson_5fnoexcept_5fassert_254',['RAPIDJSON_NOEXCEPT_ASSERT',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952',1,'rapidjson.h']]], - ['rapidjson_5fparse_5fdefault_5fflags_255',['RAPIDJSON_PARSE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga77005e892e6601599beaf421b0395c31',1,'reader.h']]], - ['rapidjson_5fparse_5ferror_256',['RAPIDJSON_PARSE_ERROR',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865',1,'reader.h']]], - ['rapidjson_5fparse_5ferror_5fnoreturn_257',['RAPIDJSON_PARSE_ERROR_NORETURN',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7f8c4265b2edda78568ae3338aaf1461',1,'reader.h']]], - ['rapidjson_5fpatch_5fversion_258',['RAPIDJSON_PATCH_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf967d31be43666ce7f53756d73bd1cdf',1,'rapidjson.h']]], - ['rapidjson_5frealloc_259',['RAPIDJSON_REALLOC',['../rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67',1,'rapidjson.h']]], - ['rapidjson_5fsimd_260',['RAPIDJSON_SIMD',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b',1,'rapidjson.h']]], - ['rapidjson_5fstatic_5fassert_261',['RAPIDJSON_STATIC_ASSERT',['../rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4',1,'rapidjson.h']]], - ['rapidjson_5fuint64_5fc2_262',['RAPIDJSON_UINT64_C2',['../rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f',1,'rapidjson.h']]], - ['rapidjson_5funlikely_263',['RAPIDJSON_UNLIKELY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5',1,'rapidjson.h']]], - ['rapidjson_5fvalidate_5fdefault_5fflags_264',['RAPIDJSON_VALIDATE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc',1,'schema.h']]], - ['rapidjson_5fvalue_5fdefault_5farray_5fcapacity_265',['RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7',1,'document.h']]], - ['rapidjson_5fvalue_5fdefault_5fobject_5fcapacity_266',['RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272',1,'document.h']]], - ['rapidjson_5fversion_5fstring_267',['RAPIDJSON_VERSION_STRING',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6',1,'rapidjson.h']]], - ['rapidjson_5fwrite_5fdefault_5fflags_268',['RAPIDJSON_WRITE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6',1,'writer.h']]], - ['rawassign_269',['RawAssign',['../classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e',1,'rapidjson::GenericValue']]], - ['rawnumber_270',['RawNumber',['../structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1',1,'rapidjson::BaseReaderHandler']]], - ['rawvalue_271',['RawValue',['../classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be',1,'rapidjson::PrettyWriter::RawValue()'],['../classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe',1,'rapidjson::Writer::RawValue()']]], - ['reader_272',['Reader',['../namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6',1,'rapidjson']]], - ['reader_2eh_273',['reader.h',['../reader_8h.html',1,'']]], - ['realloc_274',['Realloc',['../classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d',1,'rapidjson::MemoryPoolAllocator']]], - ['rebind_275',['rebind',['../structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html',1,'rapidjson::StdAllocator< void, BaseAllocator >::rebind< U >'],['../structrapidjson_1_1_std_allocator_1_1rebind.html',1,'rapidjson::StdAllocator< T, BaseAllocator >::rebind< U >']]], - ['reference_276',['Reference',['../classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2',1,'rapidjson::GenericMemberIterator']]], - ['reset_277',['Reset',['../classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc',1,'rapidjson::GenericSchemaValidator::Reset()'],['../classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722',1,'rapidjson::Writer::Reset()']]], - ['reseterror_278',['ResetError',['../classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7',1,'rapidjson::GenericSchemaValidator']]] + ['rapidjson_227',['rapidjson',['../namespacerapidjson.html',1,'']]], + ['rapidjson_2eh_228',['rapidjson.h',['../rapidjson_8h.html',1,'']]], + ['rapidjson_5f48bitpointer_5foptimization_229',['RAPIDJSON_48BITPOINTER_OPTIMIZATION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185',1,'rapidjson.h']]], + ['rapidjson_5f64bit_230',['RAPIDJSON_64BIT',['../rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52',1,'rapidjson.h']]], + ['rapidjson_5falign_231',['RAPIDJSON_ALIGN',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242',1,'rapidjson.h']]], + ['rapidjson_5fallocator_5fdefault_5fchunk_5fcapacity_232',['RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5',1,'allocators.h']]], + ['rapidjson_5fassert_233',['RAPIDJSON_ASSERT',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c',1,'rapidjson.h']]], + ['rapidjson_5fbigendian_234',['RAPIDJSON_BIGENDIAN',['../rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974',1,'rapidjson.h']]], + ['rapidjson_20configuration_235',['RapidJSON configuration',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html',1,'']]], + ['rapidjson_5fdefault_5fallocator_236',['RAPIDJSON_DEFAULT_ALLOCATOR',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga04a88f0b2db9091006eb7fc6deb6077b',1,'document.h']]], + ['rapidjson_5fdefault_5fstack_5fallocator_237',['RAPIDJSON_DEFAULT_STACK_ALLOCATOR',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1178cffff7c596922a5ed3fda30c5520',1,'document.h']]], + ['rapidjson_5fdelete_238',['RAPIDJSON_DELETE',['../rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a',1,'rapidjson.h']]], + ['rapidjson_5fdisableif_5freturn_239',['RAPIDJSON_DISABLEIF_RETURN',['../classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0',1,'rapidjson::GenericValue::RAPIDJSON_DISABLEIF_RETURN()'],['../classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81',1,'rapidjson::GenericPointer::RAPIDJSON_DISABLEIF_RETURN()']]], + ['rapidjson_5fendian_240',['RAPIDJSON_ENDIAN',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07',1,'rapidjson.h']]], + ['rapidjson_5ferror_5fchartype_241',['RAPIDJSON_ERROR_CHARTYPE',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7e4636fd48d0148f102b8a13f0539d8c',1,'error.h']]], + ['rapidjson_5ferror_5fstring_242',['RAPIDJSON_ERROR_STRING',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabe2e1bd1349e5a7d6c1af78c05a98f0d',1,'error.h']]], + ['rapidjson_20error_20handling_243',['RapidJSON error handling',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html',1,'']]], + ['rapidjson_5ffree_244',['RAPIDJSON_FREE',['../rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f',1,'rapidjson.h']]], + ['rapidjson_5fhas_5fstdstring_245',['RAPIDJSON_HAS_STDSTRING',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f',1,'rapidjson.h']]], + ['rapidjson_5flikely_246',['RAPIDJSON_LIKELY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1',1,'rapidjson.h']]], + ['rapidjson_5flittleendian_247',['RAPIDJSON_LITTLEENDIAN',['../rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c',1,'rapidjson.h']]], + ['rapidjson_5fmajor_5fversion_248',['RAPIDJSON_MAJOR_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf1ff1685be6cbebb5d4b2ab997776f45',1,'rapidjson.h']]], + ['rapidjson_5fmalloc_249',['RAPIDJSON_MALLOC',['../rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27',1,'rapidjson.h']]], + ['rapidjson_5fminor_5fversion_250',['RAPIDJSON_MINOR_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf9125105c593a636a79f1c2d96835376',1,'rapidjson.h']]], + ['rapidjson_5fnamespace_251',['RAPIDJSON_NAMESPACE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga743a79d3af927391fe3eb5c979136899',1,'rapidjson.h']]], + ['rapidjson_5fnew_252',['RAPIDJSON_NEW',['../rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b',1,'rapidjson.h']]], + ['rapidjson_5fno_5fint64define_253',['RAPIDJSON_NO_INT64DEFINE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c',1,'rapidjson.h']]], + ['rapidjson_5fno_5fsizetypedefine_254',['RAPIDJSON_NO_SIZETYPEDEFINE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f',1,'rapidjson.h']]], + ['rapidjson_5fnoexcept_5fassert_255',['RAPIDJSON_NOEXCEPT_ASSERT',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952',1,'rapidjson.h']]], + ['rapidjson_5fparse_5fdefault_5fflags_256',['RAPIDJSON_PARSE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga77005e892e6601599beaf421b0395c31',1,'reader.h']]], + ['rapidjson_5fparse_5ferror_257',['RAPIDJSON_PARSE_ERROR',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865',1,'reader.h']]], + ['rapidjson_5fparse_5ferror_5fnoreturn_258',['RAPIDJSON_PARSE_ERROR_NORETURN',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7f8c4265b2edda78568ae3338aaf1461',1,'reader.h']]], + ['rapidjson_5fpatch_5fversion_259',['RAPIDJSON_PATCH_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf967d31be43666ce7f53756d73bd1cdf',1,'rapidjson.h']]], + ['rapidjson_5frealloc_260',['RAPIDJSON_REALLOC',['../rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67',1,'rapidjson.h']]], + ['rapidjson_5fsimd_261',['RAPIDJSON_SIMD',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b',1,'rapidjson.h']]], + ['rapidjson_5fstatic_5fassert_262',['RAPIDJSON_STATIC_ASSERT',['../rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4',1,'rapidjson.h']]], + ['rapidjson_5fuint64_5fc2_263',['RAPIDJSON_UINT64_C2',['../rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f',1,'rapidjson.h']]], + ['rapidjson_5funlikely_264',['RAPIDJSON_UNLIKELY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5',1,'rapidjson.h']]], + ['rapidjson_5fuse_5fmembersmap_265',['RAPIDJSON_USE_MEMBERSMAP',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b',1,'rapidjson.h']]], + ['rapidjson_5fvalidate_5fdefault_5fflags_266',['RAPIDJSON_VALIDATE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc',1,'schema.h']]], + ['rapidjson_5fvalue_5fdefault_5farray_5fcapacity_267',['RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7',1,'document.h']]], + ['rapidjson_5fvalue_5fdefault_5fobject_5fcapacity_268',['RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272',1,'document.h']]], + ['rapidjson_5fversion_5fstring_269',['RAPIDJSON_VERSION_STRING',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6',1,'rapidjson.h']]], + ['rapidjson_5fwrite_5fdefault_5fflags_270',['RAPIDJSON_WRITE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6',1,'writer.h']]], + ['rawassign_271',['RawAssign',['../classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e',1,'rapidjson::GenericValue']]], + ['rawnumber_272',['RawNumber',['../structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1',1,'rapidjson::BaseReaderHandler']]], + ['rawvalue_273',['RawValue',['../classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be',1,'rapidjson::PrettyWriter::RawValue()'],['../classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe',1,'rapidjson::Writer::RawValue()']]], + ['reader_274',['Reader',['../namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6',1,'rapidjson']]], + ['reader_2eh_275',['reader.h',['../reader_8h.html',1,'']]], + ['realloc_276',['Realloc',['../classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d',1,'rapidjson::MemoryPoolAllocator']]], + ['rebind_277',['rebind',['../structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html',1,'rapidjson::StdAllocator< void, BaseAllocator >::rebind< U >'],['../structrapidjson_1_1_std_allocator_1_1rebind.html',1,'rapidjson::StdAllocator< T, BaseAllocator >::rebind< U >']]], + ['reference_278',['Reference',['../classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2',1,'rapidjson::GenericMemberIterator']]], + ['reset_279',['Reset',['../classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc',1,'rapidjson::GenericSchemaValidator::Reset()'],['../classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722',1,'rapidjson::Writer::Reset()']]], + ['reseterror_280',['ResetError',['../classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7',1,'rapidjson::GenericSchemaValidator']]] ]; diff --git a/search/classes_0.js b/search/classes_0.js index a8fcc159..cc423661 100644 --- a/search/classes_0.js +++ b/search/classes_0.js @@ -1,9 +1,9 @@ var searchData= [ - ['allocator_342',['Allocator',['../classrapidjson_1_1_allocator.html',1,'']]], - ['arraydata_343',['ArrayData',['../structrapidjson_1_1_generic_value_1_1_array_data.html',1,'rapidjson::GenericValue']]], - ['ascii_344',['ASCII',['../structrapidjson_1_1_a_s_c_i_i.html',1,'rapidjson']]], - ['autoutf_345',['AutoUTF',['../structrapidjson_1_1_auto_u_t_f.html',1,'rapidjson']]], - ['autoutfinputstream_346',['AutoUTFInputStream',['../classrapidjson_1_1_auto_u_t_f_input_stream.html',1,'rapidjson']]], - ['autoutfoutputstream_347',['AutoUTFOutputStream',['../classrapidjson_1_1_auto_u_t_f_output_stream.html',1,'rapidjson']]] + ['allocator_344',['Allocator',['../classrapidjson_1_1_allocator.html',1,'']]], + ['arraydata_345',['ArrayData',['../structrapidjson_1_1_generic_value_1_1_array_data.html',1,'rapidjson::GenericValue']]], + ['ascii_346',['ASCII',['../structrapidjson_1_1_a_s_c_i_i.html',1,'rapidjson']]], + ['autoutf_347',['AutoUTF',['../structrapidjson_1_1_auto_u_t_f.html',1,'rapidjson']]], + ['autoutfinputstream_348',['AutoUTFInputStream',['../classrapidjson_1_1_auto_u_t_f_input_stream.html',1,'rapidjson']]], + ['autoutfoutputstream_349',['AutoUTFOutputStream',['../classrapidjson_1_1_auto_u_t_f_output_stream.html',1,'rapidjson']]] ]; diff --git a/search/classes_1.js b/search/classes_1.js index a9b69539..58856293 100644 --- a/search/classes_1.js +++ b/search/classes_1.js @@ -1,6 +1,6 @@ var searchData= [ - ['basereaderhandler_348',['BaseReaderHandler',['../structrapidjson_1_1_base_reader_handler.html',1,'rapidjson']]], - ['basicistreamwrapper_349',['BasicIStreamWrapper',['../classrapidjson_1_1_basic_i_stream_wrapper.html',1,'rapidjson']]], - ['basicostreamwrapper_350',['BasicOStreamWrapper',['../classrapidjson_1_1_basic_o_stream_wrapper.html',1,'rapidjson']]] + ['basereaderhandler_350',['BaseReaderHandler',['../structrapidjson_1_1_base_reader_handler.html',1,'rapidjson']]], + ['basicistreamwrapper_351',['BasicIStreamWrapper',['../classrapidjson_1_1_basic_i_stream_wrapper.html',1,'rapidjson']]], + ['basicostreamwrapper_352',['BasicOStreamWrapper',['../classrapidjson_1_1_basic_o_stream_wrapper.html',1,'rapidjson']]] ]; diff --git a/search/classes_10.js b/search/classes_10.js index c03c3e36..303c0830 100644 --- a/search/classes_10.js +++ b/search/classes_10.js @@ -1,6 +1,6 @@ var searchData= [ - ['token_402',['Token',['../structrapidjson_1_1_generic_pointer_1_1_token.html',1,'rapidjson::GenericPointer']]], - ['transcoder_403',['Transcoder',['../structrapidjson_1_1_transcoder.html',1,'rapidjson']]], - ['transcoder_3c_20encoding_2c_20encoding_20_3e_404',['Transcoder< Encoding, Encoding >',['../structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html',1,'rapidjson']]] + ['token_404',['Token',['../structrapidjson_1_1_generic_pointer_1_1_token.html',1,'rapidjson::GenericPointer']]], + ['transcoder_405',['Transcoder',['../structrapidjson_1_1_transcoder.html',1,'rapidjson']]], + ['transcoder_3c_20encoding_2c_20encoding_20_3e_406',['Transcoder< Encoding, Encoding >',['../structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html',1,'rapidjson']]] ]; diff --git a/search/classes_11.js b/search/classes_11.js index 81c7b54a..57cb4fa6 100644 --- a/search/classes_11.js +++ b/search/classes_11.js @@ -1,11 +1,11 @@ var searchData= [ - ['u_405',['U',['../structrapidjson_1_1_generic_value_1_1_number_1_1_u.html',1,'rapidjson::GenericValue::Number']]], - ['utf16_406',['UTF16',['../structrapidjson_1_1_u_t_f16.html',1,'rapidjson']]], - ['utf16be_407',['UTF16BE',['../structrapidjson_1_1_u_t_f16_b_e.html',1,'rapidjson']]], - ['utf16le_408',['UTF16LE',['../structrapidjson_1_1_u_t_f16_l_e.html',1,'rapidjson']]], - ['utf32_409',['UTF32',['../structrapidjson_1_1_u_t_f32.html',1,'rapidjson']]], - ['utf32be_410',['UTF32BE',['../structrapidjson_1_1_u_t_f32_b_e.html',1,'rapidjson']]], - ['utf32le_411',['UTF32LE',['../structrapidjson_1_1_u_t_f32_l_e.html',1,'rapidjson']]], - ['utf8_412',['UTF8',['../structrapidjson_1_1_u_t_f8.html',1,'rapidjson']]] + ['u_407',['U',['../structrapidjson_1_1_generic_value_1_1_number_1_1_u.html',1,'rapidjson::GenericValue::Number']]], + ['utf16_408',['UTF16',['../structrapidjson_1_1_u_t_f16.html',1,'rapidjson']]], + ['utf16be_409',['UTF16BE',['../structrapidjson_1_1_u_t_f16_b_e.html',1,'rapidjson']]], + ['utf16le_410',['UTF16LE',['../structrapidjson_1_1_u_t_f16_l_e.html',1,'rapidjson']]], + ['utf32_411',['UTF32',['../structrapidjson_1_1_u_t_f32.html',1,'rapidjson']]], + ['utf32be_412',['UTF32BE',['../structrapidjson_1_1_u_t_f32_b_e.html',1,'rapidjson']]], + ['utf32le_413',['UTF32LE',['../structrapidjson_1_1_u_t_f32_l_e.html',1,'rapidjson']]], + ['utf8_414',['UTF8',['../structrapidjson_1_1_u_t_f8.html',1,'rapidjson']]] ]; diff --git a/search/classes_12.js b/search/classes_12.js index ed4654e5..2f3e3a7a 100644 --- a/search/classes_12.js +++ b/search/classes_12.js @@ -1,4 +1,4 @@ var searchData= [ - ['writer_413',['Writer',['../classrapidjson_1_1_writer.html',1,'rapidjson']]] + ['writer_415',['Writer',['../classrapidjson_1_1_writer.html',1,'rapidjson']]] ]; diff --git a/search/classes_2.js b/search/classes_2.js index ddc3d8cf..20858708 100644 --- a/search/classes_2.js +++ b/search/classes_2.js @@ -1,5 +1,5 @@ var searchData= [ - ['crtallocator_351',['CrtAllocator',['../classrapidjson_1_1_crt_allocator.html',1,'rapidjson']]], - ['cursorstreamwrapper_352',['CursorStreamWrapper',['../classrapidjson_1_1_cursor_stream_wrapper.html',1,'rapidjson']]] + ['crtallocator_353',['CrtAllocator',['../classrapidjson_1_1_crt_allocator.html',1,'rapidjson']]], + ['cursorstreamwrapper_354',['CursorStreamWrapper',['../classrapidjson_1_1_cursor_stream_wrapper.html',1,'rapidjson']]] ]; diff --git a/search/classes_3.js b/search/classes_3.js index 2c081c74..0b241f03 100644 --- a/search/classes_3.js +++ b/search/classes_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['data_353',['Data',['../unionrapidjson_1_1_generic_value_1_1_data.html',1,'rapidjson::GenericValue']]] + ['data_355',['Data',['../unionrapidjson_1_1_generic_value_1_1_data.html',1,'rapidjson::GenericValue']]] ]; diff --git a/search/classes_4.js b/search/classes_4.js index ee1d0bc0..dcd35674 100644 --- a/search/classes_4.js +++ b/search/classes_4.js @@ -1,7 +1,7 @@ var searchData= [ - ['encodedinputstream_354',['EncodedInputStream',['../classrapidjson_1_1_encoded_input_stream.html',1,'rapidjson']]], - ['encodedinputstream_3c_20utf8_3c_3e_2c_20memorystream_20_3e_355',['EncodedInputStream< UTF8<>, MemoryStream >',['../classrapidjson_1_1_encoded_input_stream_3_01_u_t_f8_3_4_00_01_memory_stream_01_4.html',1,'rapidjson']]], - ['encodedoutputstream_356',['EncodedOutputStream',['../classrapidjson_1_1_encoded_output_stream.html',1,'rapidjson']]], - ['encoding_357',['Encoding',['../classrapidjson_1_1_encoding.html',1,'']]] + ['encodedinputstream_356',['EncodedInputStream',['../classrapidjson_1_1_encoded_input_stream.html',1,'rapidjson']]], + ['encodedinputstream_3c_20utf8_3c_3e_2c_20memorystream_20_3e_357',['EncodedInputStream< UTF8<>, MemoryStream >',['../classrapidjson_1_1_encoded_input_stream_3_01_u_t_f8_3_4_00_01_memory_stream_01_4.html',1,'rapidjson']]], + ['encodedoutputstream_358',['EncodedOutputStream',['../classrapidjson_1_1_encoded_output_stream.html',1,'rapidjson']]], + ['encoding_359',['Encoding',['../classrapidjson_1_1_encoding.html',1,'']]] ]; diff --git a/search/classes_5.js b/search/classes_5.js index 837c30a6..85898ea1 100644 --- a/search/classes_5.js +++ b/search/classes_5.js @@ -1,6 +1,6 @@ var searchData= [ - ['filereadstream_358',['FileReadStream',['../classrapidjson_1_1_file_read_stream.html',1,'rapidjson']]], - ['filewritestream_359',['FileWriteStream',['../classrapidjson_1_1_file_write_stream.html',1,'rapidjson']]], - ['flag_360',['Flag',['../structrapidjson_1_1_generic_value_1_1_flag.html',1,'rapidjson::GenericValue']]] + ['filereadstream_360',['FileReadStream',['../classrapidjson_1_1_file_read_stream.html',1,'rapidjson']]], + ['filewritestream_361',['FileWriteStream',['../classrapidjson_1_1_file_write_stream.html',1,'rapidjson']]], + ['flag_362',['Flag',['../structrapidjson_1_1_generic_value_1_1_flag.html',1,'rapidjson::GenericValue']]] ]; diff --git a/search/classes_6.js b/search/classes_6.js index 9dc6d8c2..ca429527 100644 --- a/search/classes_6.js +++ b/search/classes_6.js @@ -1,23 +1,23 @@ var searchData= [ - ['genericarray_361',['GenericArray',['../classrapidjson_1_1_generic_array.html',1,'rapidjson']]], - ['genericdocument_362',['GenericDocument',['../classrapidjson_1_1_generic_document.html',1,'rapidjson']]], - ['genericinsitustringstream_363',['GenericInsituStringStream',['../structrapidjson_1_1_generic_insitu_string_stream.html',1,'rapidjson']]], - ['genericmember_364',['GenericMember',['../classrapidjson_1_1_generic_member.html',1,'rapidjson']]], - ['genericmemberiterator_365',['GenericMemberIterator',['../classrapidjson_1_1_generic_member_iterator.html',1,'rapidjson']]], - ['genericmemorybuffer_366',['GenericMemoryBuffer',['../structrapidjson_1_1_generic_memory_buffer.html',1,'rapidjson']]], - ['genericobject_367',['GenericObject',['../classrapidjson_1_1_generic_object.html',1,'rapidjson']]], - ['genericpointer_368',['GenericPointer',['../classrapidjson_1_1_generic_pointer.html',1,'rapidjson']]], - ['genericreader_369',['GenericReader',['../classrapidjson_1_1_generic_reader.html',1,'rapidjson']]], - ['genericschemadocument_370',['GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html',1,'rapidjson']]], - ['genericschemavalidator_371',['GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html',1,'rapidjson']]], - ['genericstreamwrapper_372',['GenericStreamWrapper',['../classrapidjson_1_1_generic_stream_wrapper.html',1,'rapidjson']]], - ['genericstringbuffer_373',['GenericStringBuffer',['../classrapidjson_1_1_generic_string_buffer.html',1,'rapidjson']]], - ['genericstringref_374',['GenericStringRef',['../structrapidjson_1_1_generic_string_ref.html',1,'rapidjson']]], - ['genericstringstream_375',['GenericStringStream',['../structrapidjson_1_1_generic_string_stream.html',1,'rapidjson']]], - ['genericvalue_376',['GenericValue',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], - ['genericvalue_3c_20encodingtype_2c_20allocator_20_3e_377',['GenericValue< EncodingType, Allocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], - ['genericvalue_3c_20encodingtype_2c_20stateallocator_20_3e_378',['GenericValue< EncodingType, StateAllocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], - ['genericvalue_3c_20rapidjson_3a_3aencoding_2c_20rapidjson_3a_3aallocator_20_3e_379',['GenericValue< rapidjson::Encoding, rapidjson::Allocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], - ['genericvalue_3c_20sourceencoding_2c_20stackallocator_20_3e_380',['GenericValue< SourceEncoding, StackAllocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]] + ['genericarray_363',['GenericArray',['../classrapidjson_1_1_generic_array.html',1,'rapidjson']]], + ['genericdocument_364',['GenericDocument',['../classrapidjson_1_1_generic_document.html',1,'rapidjson']]], + ['genericinsitustringstream_365',['GenericInsituStringStream',['../structrapidjson_1_1_generic_insitu_string_stream.html',1,'rapidjson']]], + ['genericmember_366',['GenericMember',['../classrapidjson_1_1_generic_member.html',1,'rapidjson']]], + ['genericmemberiterator_367',['GenericMemberIterator',['../classrapidjson_1_1_generic_member_iterator.html',1,'rapidjson']]], + ['genericmemorybuffer_368',['GenericMemoryBuffer',['../structrapidjson_1_1_generic_memory_buffer.html',1,'rapidjson']]], + ['genericobject_369',['GenericObject',['../classrapidjson_1_1_generic_object.html',1,'rapidjson']]], + ['genericpointer_370',['GenericPointer',['../classrapidjson_1_1_generic_pointer.html',1,'rapidjson']]], + ['genericreader_371',['GenericReader',['../classrapidjson_1_1_generic_reader.html',1,'rapidjson']]], + ['genericschemadocument_372',['GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html',1,'rapidjson']]], + ['genericschemavalidator_373',['GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html',1,'rapidjson']]], + ['genericstreamwrapper_374',['GenericStreamWrapper',['../classrapidjson_1_1_generic_stream_wrapper.html',1,'rapidjson']]], + ['genericstringbuffer_375',['GenericStringBuffer',['../classrapidjson_1_1_generic_string_buffer.html',1,'rapidjson']]], + ['genericstringref_376',['GenericStringRef',['../structrapidjson_1_1_generic_string_ref.html',1,'rapidjson']]], + ['genericstringstream_377',['GenericStringStream',['../structrapidjson_1_1_generic_string_stream.html',1,'rapidjson']]], + ['genericvalue_378',['GenericValue',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], + ['genericvalue_3c_20encodingtype_2c_20allocator_20_3e_379',['GenericValue< EncodingType, Allocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], + ['genericvalue_3c_20encodingtype_2c_20stateallocator_20_3e_380',['GenericValue< EncodingType, StateAllocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], + ['genericvalue_3c_20rapidjson_3a_3aencoding_2c_20rapidjson_3a_3aallocator_20_3e_381',['GenericValue< rapidjson::Encoding, rapidjson::Allocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], + ['genericvalue_3c_20sourceencoding_2c_20stackallocator_20_3e_382',['GenericValue< SourceEncoding, StackAllocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]] ]; diff --git a/search/classes_7.js b/search/classes_7.js index 39006bb9..f8f31941 100644 --- a/search/classes_7.js +++ b/search/classes_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['handler_381',['Handler',['../classrapidjson_1_1_handler.html',1,'']]] + ['handler_383',['Handler',['../classrapidjson_1_1_handler.html',1,'']]] ]; diff --git a/search/classes_8.js b/search/classes_8.js index e2cac542..f1e24086 100644 --- a/search/classes_8.js +++ b/search/classes_8.js @@ -1,5 +1,5 @@ var searchData= [ - ['i_382',['I',['../structrapidjson_1_1_generic_value_1_1_number_1_1_i.html',1,'rapidjson::GenericValue::Number']]], - ['igenericremoteschemadocumentprovider_383',['IGenericRemoteSchemaDocumentProvider',['../classrapidjson_1_1_i_generic_remote_schema_document_provider.html',1,'rapidjson']]] + ['i_384',['I',['../structrapidjson_1_1_generic_value_1_1_number_1_1_i.html',1,'rapidjson::GenericValue::Number']]], + ['igenericremoteschemadocumentprovider_385',['IGenericRemoteSchemaDocumentProvider',['../classrapidjson_1_1_i_generic_remote_schema_document_provider.html',1,'rapidjson']]] ]; diff --git a/search/classes_9.js b/search/classes_9.js index da233cbb..1e41da15 100644 --- a/search/classes_9.js +++ b/search/classes_9.js @@ -1,4 +1,4 @@ var searchData= [ - ['level_384',['Level',['../structrapidjson_1_1_writer_1_1_level.html',1,'rapidjson::Writer']]] + ['level_386',['Level',['../structrapidjson_1_1_writer_1_1_level.html',1,'rapidjson::Writer']]] ]; diff --git a/search/classes_a.js b/search/classes_a.js index d0cb0cd5..e42221d4 100644 --- a/search/classes_a.js +++ b/search/classes_a.js @@ -1,5 +1,5 @@ var searchData= [ - ['memorypoolallocator_385',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html',1,'rapidjson']]], - ['memorystream_386',['MemoryStream',['../structrapidjson_1_1_memory_stream.html',1,'rapidjson']]] + ['memorypoolallocator_387',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html',1,'rapidjson']]], + ['memorystream_388',['MemoryStream',['../structrapidjson_1_1_memory_stream.html',1,'rapidjson']]] ]; diff --git a/search/classes_b.js b/search/classes_b.js index b3a5d890..88fddbf6 100644 --- a/search/classes_b.js +++ b/search/classes_b.js @@ -1,4 +1,4 @@ var searchData= [ - ['number_387',['Number',['../unionrapidjson_1_1_generic_value_1_1_number.html',1,'rapidjson::GenericValue']]] + ['number_389',['Number',['../unionrapidjson_1_1_generic_value_1_1_number.html',1,'rapidjson::GenericValue']]] ]; diff --git a/search/classes_c.js b/search/classes_c.js index 2702bcbd..83f2203a 100644 --- a/search/classes_c.js +++ b/search/classes_c.js @@ -1,4 +1,4 @@ var searchData= [ - ['objectdata_388',['ObjectData',['../structrapidjson_1_1_generic_value_1_1_object_data.html',1,'rapidjson::GenericValue']]] + ['objectdata_390',['ObjectData',['../structrapidjson_1_1_generic_value_1_1_object_data.html',1,'rapidjson::GenericValue']]] ]; diff --git a/search/classes_d.js b/search/classes_d.js index 96eb8052..8562ff50 100644 --- a/search/classes_d.js +++ b/search/classes_d.js @@ -1,6 +1,6 @@ var searchData= [ - ['parseresult_389',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result',1,'rapidjson']]], - ['percentencodestream_390',['PercentEncodeStream',['../classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html',1,'rapidjson::GenericPointer']]], - ['prettywriter_391',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html',1,'rapidjson']]] + ['parseresult_391',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result',1,'rapidjson']]], + ['percentencodestream_392',['PercentEncodeStream',['../classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html',1,'rapidjson::GenericPointer']]], + ['prettywriter_393',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html',1,'rapidjson']]] ]; diff --git a/search/classes_e.js b/search/classes_e.js index 3eecdc15..db5ba438 100644 --- a/search/classes_e.js +++ b/search/classes_e.js @@ -1,4 +1,4 @@ var searchData= [ - ['rebind_392',['rebind',['../structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html',1,'rapidjson::StdAllocator< void, BaseAllocator >::rebind< U >'],['../structrapidjson_1_1_std_allocator_1_1rebind.html',1,'rapidjson::StdAllocator< T, BaseAllocator >::rebind< U >']]] + ['rebind_394',['rebind',['../structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html',1,'rapidjson::StdAllocator< void, BaseAllocator >::rebind< U >'],['../structrapidjson_1_1_std_allocator_1_1rebind.html',1,'rapidjson::StdAllocator< T, BaseAllocator >::rebind< U >']]] ]; diff --git a/search/classes_f.js b/search/classes_f.js index f6f535c9..abd82208 100644 --- a/search/classes_f.js +++ b/search/classes_f.js @@ -1,12 +1,12 @@ var searchData= [ - ['schemavalidatingreader_393',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html',1,'rapidjson']]], - ['shortstring_394',['ShortString',['../structrapidjson_1_1_generic_value_1_1_short_string.html',1,'rapidjson::GenericValue']]], - ['stdallocator_395',['StdAllocator',['../classrapidjson_1_1_std_allocator.html',1,'rapidjson']]], - ['stdallocator_3c_20void_2c_20baseallocator_20_3e_396',['StdAllocator< void, BaseAllocator >',['../classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html',1,'rapidjson']]], - ['stream_397',['Stream',['../classrapidjson_1_1_stream.html',1,'']]], - ['streamtraits_398',['StreamTraits',['../structrapidjson_1_1_stream_traits.html',1,'rapidjson']]], - ['streamtraits_3c_20genericinsitustringstream_3c_20encoding_20_3e_20_3e_399',['StreamTraits< GenericInsituStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], - ['streamtraits_3c_20genericstringstream_3c_20encoding_20_3e_20_3e_400',['StreamTraits< GenericStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], - ['string_401',['String',['../structrapidjson_1_1_generic_value_1_1_string.html',1,'rapidjson::GenericValue']]] + ['schemavalidatingreader_395',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html',1,'rapidjson']]], + ['shortstring_396',['ShortString',['../structrapidjson_1_1_generic_value_1_1_short_string.html',1,'rapidjson::GenericValue']]], + ['stdallocator_397',['StdAllocator',['../classrapidjson_1_1_std_allocator.html',1,'rapidjson']]], + ['stdallocator_3c_20void_2c_20baseallocator_20_3e_398',['StdAllocator< void, BaseAllocator >',['../classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html',1,'rapidjson']]], + ['stream_399',['Stream',['../classrapidjson_1_1_stream.html',1,'']]], + ['streamtraits_400',['StreamTraits',['../structrapidjson_1_1_stream_traits.html',1,'rapidjson']]], + ['streamtraits_3c_20genericinsitustringstream_3c_20encoding_20_3e_20_3e_401',['StreamTraits< GenericInsituStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], + ['streamtraits_3c_20genericstringstream_3c_20encoding_20_3e_20_3e_402',['StreamTraits< GenericStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], + ['string_403',['String',['../structrapidjson_1_1_generic_value_1_1_string.html',1,'rapidjson::GenericValue']]] ]; diff --git a/search/defines_0.js b/search/defines_0.js index 17cc9d15..363b12be 100644 --- a/search/defines_0.js +++ b/search/defines_0.js @@ -1,13 +1,13 @@ var searchData= [ - ['rapidjson_5f64bit_652',['RAPIDJSON_64BIT',['../rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52',1,'rapidjson.h']]], - ['rapidjson_5fbigendian_653',['RAPIDJSON_BIGENDIAN',['../rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974',1,'rapidjson.h']]], - ['rapidjson_5fdelete_654',['RAPIDJSON_DELETE',['../rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a',1,'rapidjson.h']]], - ['rapidjson_5ffree_655',['RAPIDJSON_FREE',['../rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f',1,'rapidjson.h']]], - ['rapidjson_5flittleendian_656',['RAPIDJSON_LITTLEENDIAN',['../rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c',1,'rapidjson.h']]], - ['rapidjson_5fmalloc_657',['RAPIDJSON_MALLOC',['../rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27',1,'rapidjson.h']]], - ['rapidjson_5fnew_658',['RAPIDJSON_NEW',['../rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b',1,'rapidjson.h']]], - ['rapidjson_5frealloc_659',['RAPIDJSON_REALLOC',['../rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67',1,'rapidjson.h']]], - ['rapidjson_5fstatic_5fassert_660',['RAPIDJSON_STATIC_ASSERT',['../rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4',1,'rapidjson.h']]], - ['rapidjson_5fuint64_5fc2_661',['RAPIDJSON_UINT64_C2',['../rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f',1,'rapidjson.h']]] + ['rapidjson_5f64bit_655',['RAPIDJSON_64BIT',['../rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52',1,'rapidjson.h']]], + ['rapidjson_5fbigendian_656',['RAPIDJSON_BIGENDIAN',['../rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974',1,'rapidjson.h']]], + ['rapidjson_5fdelete_657',['RAPIDJSON_DELETE',['../rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a',1,'rapidjson.h']]], + ['rapidjson_5ffree_658',['RAPIDJSON_FREE',['../rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f',1,'rapidjson.h']]], + ['rapidjson_5flittleendian_659',['RAPIDJSON_LITTLEENDIAN',['../rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c',1,'rapidjson.h']]], + ['rapidjson_5fmalloc_660',['RAPIDJSON_MALLOC',['../rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27',1,'rapidjson.h']]], + ['rapidjson_5fnew_661',['RAPIDJSON_NEW',['../rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b',1,'rapidjson.h']]], + ['rapidjson_5frealloc_662',['RAPIDJSON_REALLOC',['../rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67',1,'rapidjson.h']]], + ['rapidjson_5fstatic_5fassert_663',['RAPIDJSON_STATIC_ASSERT',['../rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4',1,'rapidjson.h']]], + ['rapidjson_5fuint64_5fc2_664',['RAPIDJSON_UINT64_C2',['../rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f',1,'rapidjson.h']]] ]; diff --git a/search/enums_0.js b/search/enums_0.js index 13b5bf01..216c7bc7 100644 --- a/search/enums_0.js +++ b/search/enums_0.js @@ -1,7 +1,7 @@ var searchData= [ - ['parseerrorcode_559',['ParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60',1,'rapidjson']]], - ['parseflag_560',['ParseFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9',1,'rapidjson']]], - ['pointerparseerrorcode_561',['PointerParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b',1,'rapidjson']]], - ['prettyformatoptions_562',['PrettyFormatOptions',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b',1,'rapidjson']]] + ['parseerrorcode_562',['ParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60',1,'rapidjson']]], + ['parseflag_563',['ParseFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9',1,'rapidjson']]], + ['pointerparseerrorcode_564',['PointerParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b',1,'rapidjson']]], + ['prettyformatoptions_565',['PrettyFormatOptions',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b',1,'rapidjson']]] ]; diff --git a/search/enums_1.js b/search/enums_1.js index 8deda56d..f4bd887d 100644 --- a/search/enums_1.js +++ b/search/enums_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['type_563',['Type',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4',1,'rapidjson']]] + ['type_566',['Type',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4',1,'rapidjson']]] ]; diff --git a/search/enums_2.js b/search/enums_2.js index a4dfcc77..9c496ee5 100644 --- a/search/enums_2.js +++ b/search/enums_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['utftype_564',['UTFType',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb',1,'rapidjson']]] + ['utftype_567',['UTFType',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb',1,'rapidjson']]] ]; diff --git a/search/enums_3.js b/search/enums_3.js index a9cd5208..93cf8638 100644 --- a/search/enums_3.js +++ b/search/enums_3.js @@ -1,5 +1,5 @@ var searchData= [ - ['validateerrorcode_565',['ValidateErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga633f43fd92e6ed5ceb87dbf570647847',1,'rapidjson']]], - ['validateflag_566',['ValidateFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5',1,'rapidjson']]] + ['validateerrorcode_568',['ValidateErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga633f43fd92e6ed5ceb87dbf570647847',1,'rapidjson']]], + ['validateflag_569',['ValidateFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5',1,'rapidjson']]] ]; diff --git a/search/enums_4.js b/search/enums_4.js index e5d177a6..78695eab 100644 --- a/search/enums_4.js +++ b/search/enums_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['writeflag_567',['WriteFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19',1,'rapidjson']]] + ['writeflag_570',['WriteFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19',1,'rapidjson']]] ]; diff --git a/search/enumvalues_0.js b/search/enumvalues_0.js index bd6fc4ae..5563e43e 100644 --- a/search/enumvalues_0.js +++ b/search/enumvalues_0.js @@ -1,86 +1,86 @@ var searchData= [ - ['karraytype_568',['kArrayType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468',1,'rapidjson']]], - ['kfalsetype_569',['kFalseType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607',1,'rapidjson']]], - ['kformatdefault_570',['kFormatDefault',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba8164b0d4993439856171585b9cf3adc0',1,'rapidjson']]], - ['kformatsinglelinearray_571',['kFormatSingleLineArray',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba64b0f8a37ab3125118682046ff06500f',1,'rapidjson']]], - ['knulltype_572',['kNullType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff',1,'rapidjson']]], - ['knumbertype_573',['kNumberType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a',1,'rapidjson']]], - ['kobjecttype_574',['kObjectType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9',1,'rapidjson']]], - ['kparsecommentsflag_575',['kParseCommentsFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9ab5d719b36aac626135d5d622d0d837c1',1,'rapidjson']]], - ['kparsedefaultflags_576',['kParseDefaultFlags',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a5640cb00db7814b7f22be3683dda9835',1,'rapidjson']]], - ['kparseerrorarraymisscommaorsquarebracket_577',['kParseErrorArrayMissCommaOrSquareBracket',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a1a4ac97731f997e9591b40f98ecd9f93',1,'rapidjson']]], - ['kparseerrordocumentempty_578',['kParseErrorDocumentEmpty',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a06183076357ebd9eca228666f614c286',1,'rapidjson']]], - ['kparseerrordocumentrootnotsingular_579',['kParseErrorDocumentRootNotSingular',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2022599bcd4f64d58885a026f95751d5',1,'rapidjson']]], - ['kparseerrornone_580',['kParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a86a60b723dca32df5debab2c3db4235f',1,'rapidjson']]], - ['kparseerrornumbermissexponent_581',['kParseErrorNumberMissExponent',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a28a1c720ae63560780ccd992dc999ab7',1,'rapidjson']]], - ['kparseerrornumbermissfraction_582',['kParseErrorNumberMissFraction',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f',1,'rapidjson']]], - ['kparseerrornumbertoobig_583',['kParseErrorNumberTooBig',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a240cebadea89f7282ab263b5a22c9805',1,'rapidjson']]], - ['kparseerrorobjectmisscolon_584',['kParseErrorObjectMissColon',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a58e952084a0dfdbc5630f624252aef5c',1,'rapidjson']]], - ['kparseerrorobjectmisscommaorcurlybracket_585',['kParseErrorObjectMissCommaOrCurlyBracket',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2a81a684f39fc882ec99f07e86343f73',1,'rapidjson']]], - ['kparseerrorobjectmissname_586',['kParseErrorObjectMissName',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab707b848425668e765def25554735242',1,'rapidjson']]], - ['kparseerrorstringescapeinvalid_587',['kParseErrorStringEscapeInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a8dd0af5e6103a6503c61c38cb2b0bab9',1,'rapidjson']]], - ['kparseerrorstringinvalidencoding_588',['kParseErrorStringInvalidEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a62ce0f5c74e4ab34ac325d2adda8fa8f',1,'rapidjson']]], - ['kparseerrorstringmissquotationmark_589',['kParseErrorStringMissQuotationMark',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60af7daa91caa53abb881ea231a874a4f40',1,'rapidjson']]], - ['kparseerrorstringunicodeescapeinvalidhex_590',['kParseErrorStringUnicodeEscapeInvalidHex',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a23c38bf88b8448555c0eb41e1735bd92',1,'rapidjson']]], - ['kparseerrorstringunicodesurrogateinvalid_591',['kParseErrorStringUnicodeSurrogateInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a636209a2e516fbdb4db5ad0a83a6b386',1,'rapidjson']]], - ['kparseerrortermination_592',['kParseErrorTermination',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab250f87c3d8454c579364b5a0f697a50',1,'rapidjson']]], - ['kparseerrorunspecificsyntaxerror_593',['kParseErrorUnspecificSyntaxError',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a7abf1a337294d984a3f4d18b5843fb24',1,'rapidjson']]], - ['kparseerrorvalueinvalid_594',['kParseErrorValueInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57',1,'rapidjson']]], - ['kparseescapedapostropheflag_595',['kParseEscapedApostropheFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a9d0cd4c136483497f32f4af366b12d63',1,'rapidjson']]], - ['kparsefullprecisionflag_596',['kParseFullPrecisionFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0',1,'rapidjson']]], - ['kparseinsituflag_597',['kParseInsituFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea',1,'rapidjson']]], - ['kparseiterativeflag_598',['kParseIterativeFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a7923686c8bdb7614699f1fb1bb615bb2',1,'rapidjson']]], - ['kparsenanandinfflag_599',['kParseNanAndInfFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8',1,'rapidjson']]], - ['kparsenoflags_600',['kParseNoFlags',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0',1,'rapidjson']]], - ['kparsenumbersasstringsflag_601',['kParseNumbersAsStringsFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987',1,'rapidjson']]], - ['kparsestopwhendoneflag_602',['kParseStopWhenDoneFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af84c60868704433b80aa51a62e042bb1',1,'rapidjson']]], - ['kparsetrailingcommasflag_603',['kParseTrailingCommasFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec',1,'rapidjson']]], - ['kparsevalidateencodingflag_604',['kParseValidateEncodingFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a3df81f75479da8e052393f92cbec394b',1,'rapidjson']]], - ['kpointerparseerrorcharactermustpercentencode_605',['kPointerParseErrorCharacterMustPercentEncode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7bae244a98f53279fda5a750f847b81c54f',1,'rapidjson']]], - ['kpointerparseerrorinvalidescape_606',['kPointerParseErrorInvalidEscape',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba907c9fe4e541b257513e3a18635379f7',1,'rapidjson']]], - ['kpointerparseerrorinvalidpercentencoding_607',['kPointerParseErrorInvalidPercentEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba29831a02b8ee23a05d552b47f4d64d28',1,'rapidjson']]], - ['kpointerparseerrornone_608',['kPointerParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba9094f236b2ec70c42f1ea91dffc1e39b',1,'rapidjson']]], - ['kpointerparseerrortokenmustbeginwithsolidus_609',['kPointerParseErrorTokenMustBeginWithSolidus',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba2f2f8b238e201b7d540e8914bbfd2bed',1,'rapidjson']]], - ['kstringtype_610',['kStringType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7',1,'rapidjson']]], - ['ktruetype_611',['kTrueType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e',1,'rapidjson']]], - ['kutf16be_612',['kUTF16BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d',1,'rapidjson']]], - ['kutf16le_613',['kUTF16LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebaa7ffda68d3584eb92155daf3cd1d6481',1,'rapidjson']]], - ['kutf32be_614',['kUTF32BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f',1,'rapidjson']]], - ['kutf32le_615',['kUTF32LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4',1,'rapidjson']]], - ['kutf8_616',['kUTF8',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba3bda3a2e3f0ec2b7e8c5a3d5d4f60a81',1,'rapidjson']]], - ['kvalidatecontinueonerrorflag_617',['kValidateContinueOnErrorFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699',1,'rapidjson']]], - ['kvalidatedefaultflags_618',['kValidateDefaultFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5aee88d74111644920cabddc20fe57eb7c',1,'rapidjson']]], - ['kvalidateerroradditionalitems_619',['kValidateErrorAdditionalItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb',1,'rapidjson']]], - ['kvalidateerroradditionalproperties_620',['kValidateErrorAdditionalProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b',1,'rapidjson']]], - ['kvalidateerrorallof_621',['kValidateErrorAllOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666',1,'rapidjson']]], - ['kvalidateerroranyof_622',['kValidateErrorAnyOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aaba92c1f6cbea5e14e5e8d8b86b042d4',1,'rapidjson']]], - ['kvalidateerrordependencies_623',['kValidateErrorDependencies',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962',1,'rapidjson']]], - ['kvalidateerrorenum_624',['kValidateErrorEnum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3',1,'rapidjson']]], - ['kvalidateerrorexclusivemaximum_625',['kValidateErrorExclusiveMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff',1,'rapidjson']]], - ['kvalidateerrorexclusiveminimum_626',['kValidateErrorExclusiveMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b',1,'rapidjson']]], - ['kvalidateerrormaximum_627',['kValidateErrorMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b',1,'rapidjson']]], - ['kvalidateerrormaxitems_628',['kValidateErrorMaxItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa',1,'rapidjson']]], - ['kvalidateerrormaxlength_629',['kValidateErrorMaxLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49',1,'rapidjson']]], - ['kvalidateerrormaxproperties_630',['kValidateErrorMaxProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e',1,'rapidjson']]], - ['kvalidateerrorminimum_631',['kValidateErrorMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad365b8abebe4008652940df0a5add9c4',1,'rapidjson']]], - ['kvalidateerrorminitems_632',['kValidateErrorMinItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adbf02986e366165c0ef1d89697893802',1,'rapidjson']]], - ['kvalidateerrorminlength_633',['kValidateErrorMinLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e',1,'rapidjson']]], - ['kvalidateerrorminproperties_634',['kValidateErrorMinProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f',1,'rapidjson']]], - ['kvalidateerrormultipleof_635',['kValidateErrorMultipleOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aa01437cd68a424643a8d9c12c1a3ff5a',1,'rapidjson']]], - ['kvalidateerrornone_636',['kValidateErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a569afaca49e48ee8bd928284409dcab5',1,'rapidjson']]], - ['kvalidateerrornot_637',['kValidateErrorNot',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429',1,'rapidjson']]], - ['kvalidateerroroneof_638',['kValidateErrorOneOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103',1,'rapidjson']]], - ['kvalidateerroroneofmatch_639',['kValidateErrorOneOfMatch',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d',1,'rapidjson']]], - ['kvalidateerrorpattern_640',['kValidateErrorPattern',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a',1,'rapidjson']]], - ['kvalidateerrorpatternproperties_641',['kValidateErrorPatternProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac6f7c8c63dd5ec2c838f34c49300e0a1',1,'rapidjson']]], - ['kvalidateerrorrequired_642',['kValidateErrorRequired',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446',1,'rapidjson']]], - ['kvalidateerrors_643',['kValidateErrors',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e',1,'rapidjson']]], - ['kvalidateerrortype_644',['kValidateErrorType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a7035a7fc3f6b3a51c91be264537fc504',1,'rapidjson']]], - ['kvalidateerroruniqueitems_645',['kValidateErrorUniqueItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aebecfc4b0017d7ff7eeeb32a8c97b509',1,'rapidjson']]], - ['kvalidatenoflags_646',['kValidateNoFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde',1,'rapidjson']]], - ['kwritedefaultflags_647',['kWriteDefaultFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226',1,'rapidjson']]], - ['kwritenanandinfflag_648',['kWriteNanAndInfFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39',1,'rapidjson']]], - ['kwritenoflags_649',['kWriteNoFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a',1,'rapidjson']]], - ['kwritevalidateencodingflag_650',['kWriteValidateEncodingFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10',1,'rapidjson']]] + ['karraytype_571',['kArrayType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468',1,'rapidjson']]], + ['kfalsetype_572',['kFalseType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607',1,'rapidjson']]], + ['kformatdefault_573',['kFormatDefault',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba8164b0d4993439856171585b9cf3adc0',1,'rapidjson']]], + ['kformatsinglelinearray_574',['kFormatSingleLineArray',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba64b0f8a37ab3125118682046ff06500f',1,'rapidjson']]], + ['knulltype_575',['kNullType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff',1,'rapidjson']]], + ['knumbertype_576',['kNumberType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a',1,'rapidjson']]], + ['kobjecttype_577',['kObjectType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9',1,'rapidjson']]], + ['kparsecommentsflag_578',['kParseCommentsFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9ab5d719b36aac626135d5d622d0d837c1',1,'rapidjson']]], + ['kparsedefaultflags_579',['kParseDefaultFlags',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a5640cb00db7814b7f22be3683dda9835',1,'rapidjson']]], + ['kparseerrorarraymisscommaorsquarebracket_580',['kParseErrorArrayMissCommaOrSquareBracket',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a1a4ac97731f997e9591b40f98ecd9f93',1,'rapidjson']]], + ['kparseerrordocumentempty_581',['kParseErrorDocumentEmpty',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a06183076357ebd9eca228666f614c286',1,'rapidjson']]], + ['kparseerrordocumentrootnotsingular_582',['kParseErrorDocumentRootNotSingular',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2022599bcd4f64d58885a026f95751d5',1,'rapidjson']]], + ['kparseerrornone_583',['kParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a86a60b723dca32df5debab2c3db4235f',1,'rapidjson']]], + ['kparseerrornumbermissexponent_584',['kParseErrorNumberMissExponent',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a28a1c720ae63560780ccd992dc999ab7',1,'rapidjson']]], + ['kparseerrornumbermissfraction_585',['kParseErrorNumberMissFraction',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f',1,'rapidjson']]], + ['kparseerrornumbertoobig_586',['kParseErrorNumberTooBig',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a240cebadea89f7282ab263b5a22c9805',1,'rapidjson']]], + ['kparseerrorobjectmisscolon_587',['kParseErrorObjectMissColon',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a58e952084a0dfdbc5630f624252aef5c',1,'rapidjson']]], + ['kparseerrorobjectmisscommaorcurlybracket_588',['kParseErrorObjectMissCommaOrCurlyBracket',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2a81a684f39fc882ec99f07e86343f73',1,'rapidjson']]], + ['kparseerrorobjectmissname_589',['kParseErrorObjectMissName',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab707b848425668e765def25554735242',1,'rapidjson']]], + ['kparseerrorstringescapeinvalid_590',['kParseErrorStringEscapeInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a8dd0af5e6103a6503c61c38cb2b0bab9',1,'rapidjson']]], + ['kparseerrorstringinvalidencoding_591',['kParseErrorStringInvalidEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a62ce0f5c74e4ab34ac325d2adda8fa8f',1,'rapidjson']]], + ['kparseerrorstringmissquotationmark_592',['kParseErrorStringMissQuotationMark',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60af7daa91caa53abb881ea231a874a4f40',1,'rapidjson']]], + ['kparseerrorstringunicodeescapeinvalidhex_593',['kParseErrorStringUnicodeEscapeInvalidHex',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a23c38bf88b8448555c0eb41e1735bd92',1,'rapidjson']]], + ['kparseerrorstringunicodesurrogateinvalid_594',['kParseErrorStringUnicodeSurrogateInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a636209a2e516fbdb4db5ad0a83a6b386',1,'rapidjson']]], + ['kparseerrortermination_595',['kParseErrorTermination',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab250f87c3d8454c579364b5a0f697a50',1,'rapidjson']]], + ['kparseerrorunspecificsyntaxerror_596',['kParseErrorUnspecificSyntaxError',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a7abf1a337294d984a3f4d18b5843fb24',1,'rapidjson']]], + ['kparseerrorvalueinvalid_597',['kParseErrorValueInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57',1,'rapidjson']]], + ['kparseescapedapostropheflag_598',['kParseEscapedApostropheFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a9d0cd4c136483497f32f4af366b12d63',1,'rapidjson']]], + ['kparsefullprecisionflag_599',['kParseFullPrecisionFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0',1,'rapidjson']]], + ['kparseinsituflag_600',['kParseInsituFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea',1,'rapidjson']]], + ['kparseiterativeflag_601',['kParseIterativeFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a7923686c8bdb7614699f1fb1bb615bb2',1,'rapidjson']]], + ['kparsenanandinfflag_602',['kParseNanAndInfFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8',1,'rapidjson']]], + ['kparsenoflags_603',['kParseNoFlags',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0',1,'rapidjson']]], + ['kparsenumbersasstringsflag_604',['kParseNumbersAsStringsFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987',1,'rapidjson']]], + ['kparsestopwhendoneflag_605',['kParseStopWhenDoneFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af84c60868704433b80aa51a62e042bb1',1,'rapidjson']]], + ['kparsetrailingcommasflag_606',['kParseTrailingCommasFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec',1,'rapidjson']]], + ['kparsevalidateencodingflag_607',['kParseValidateEncodingFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a3df81f75479da8e052393f92cbec394b',1,'rapidjson']]], + ['kpointerparseerrorcharactermustpercentencode_608',['kPointerParseErrorCharacterMustPercentEncode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7bae244a98f53279fda5a750f847b81c54f',1,'rapidjson']]], + ['kpointerparseerrorinvalidescape_609',['kPointerParseErrorInvalidEscape',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba907c9fe4e541b257513e3a18635379f7',1,'rapidjson']]], + ['kpointerparseerrorinvalidpercentencoding_610',['kPointerParseErrorInvalidPercentEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba29831a02b8ee23a05d552b47f4d64d28',1,'rapidjson']]], + ['kpointerparseerrornone_611',['kPointerParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba9094f236b2ec70c42f1ea91dffc1e39b',1,'rapidjson']]], + ['kpointerparseerrortokenmustbeginwithsolidus_612',['kPointerParseErrorTokenMustBeginWithSolidus',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba2f2f8b238e201b7d540e8914bbfd2bed',1,'rapidjson']]], + ['kstringtype_613',['kStringType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7',1,'rapidjson']]], + ['ktruetype_614',['kTrueType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e',1,'rapidjson']]], + ['kutf16be_615',['kUTF16BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d',1,'rapidjson']]], + ['kutf16le_616',['kUTF16LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebaa7ffda68d3584eb92155daf3cd1d6481',1,'rapidjson']]], + ['kutf32be_617',['kUTF32BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f',1,'rapidjson']]], + ['kutf32le_618',['kUTF32LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4',1,'rapidjson']]], + ['kutf8_619',['kUTF8',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba3bda3a2e3f0ec2b7e8c5a3d5d4f60a81',1,'rapidjson']]], + ['kvalidatecontinueonerrorflag_620',['kValidateContinueOnErrorFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699',1,'rapidjson']]], + ['kvalidatedefaultflags_621',['kValidateDefaultFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5aee88d74111644920cabddc20fe57eb7c',1,'rapidjson']]], + ['kvalidateerroradditionalitems_622',['kValidateErrorAdditionalItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb',1,'rapidjson']]], + ['kvalidateerroradditionalproperties_623',['kValidateErrorAdditionalProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b',1,'rapidjson']]], + ['kvalidateerrorallof_624',['kValidateErrorAllOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666',1,'rapidjson']]], + ['kvalidateerroranyof_625',['kValidateErrorAnyOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aaba92c1f6cbea5e14e5e8d8b86b042d4',1,'rapidjson']]], + ['kvalidateerrordependencies_626',['kValidateErrorDependencies',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962',1,'rapidjson']]], + ['kvalidateerrorenum_627',['kValidateErrorEnum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3',1,'rapidjson']]], + ['kvalidateerrorexclusivemaximum_628',['kValidateErrorExclusiveMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff',1,'rapidjson']]], + ['kvalidateerrorexclusiveminimum_629',['kValidateErrorExclusiveMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b',1,'rapidjson']]], + ['kvalidateerrormaximum_630',['kValidateErrorMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b',1,'rapidjson']]], + ['kvalidateerrormaxitems_631',['kValidateErrorMaxItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa',1,'rapidjson']]], + ['kvalidateerrormaxlength_632',['kValidateErrorMaxLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49',1,'rapidjson']]], + ['kvalidateerrormaxproperties_633',['kValidateErrorMaxProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e',1,'rapidjson']]], + ['kvalidateerrorminimum_634',['kValidateErrorMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad365b8abebe4008652940df0a5add9c4',1,'rapidjson']]], + ['kvalidateerrorminitems_635',['kValidateErrorMinItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adbf02986e366165c0ef1d89697893802',1,'rapidjson']]], + ['kvalidateerrorminlength_636',['kValidateErrorMinLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e',1,'rapidjson']]], + ['kvalidateerrorminproperties_637',['kValidateErrorMinProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f',1,'rapidjson']]], + ['kvalidateerrormultipleof_638',['kValidateErrorMultipleOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aa01437cd68a424643a8d9c12c1a3ff5a',1,'rapidjson']]], + ['kvalidateerrornone_639',['kValidateErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a569afaca49e48ee8bd928284409dcab5',1,'rapidjson']]], + ['kvalidateerrornot_640',['kValidateErrorNot',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429',1,'rapidjson']]], + ['kvalidateerroroneof_641',['kValidateErrorOneOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103',1,'rapidjson']]], + ['kvalidateerroroneofmatch_642',['kValidateErrorOneOfMatch',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d',1,'rapidjson']]], + ['kvalidateerrorpattern_643',['kValidateErrorPattern',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a',1,'rapidjson']]], + ['kvalidateerrorpatternproperties_644',['kValidateErrorPatternProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac6f7c8c63dd5ec2c838f34c49300e0a1',1,'rapidjson']]], + ['kvalidateerrorrequired_645',['kValidateErrorRequired',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446',1,'rapidjson']]], + ['kvalidateerrors_646',['kValidateErrors',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e',1,'rapidjson']]], + ['kvalidateerrortype_647',['kValidateErrorType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a7035a7fc3f6b3a51c91be264537fc504',1,'rapidjson']]], + ['kvalidateerroruniqueitems_648',['kValidateErrorUniqueItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aebecfc4b0017d7ff7eeeb32a8c97b509',1,'rapidjson']]], + ['kvalidatenoflags_649',['kValidateNoFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde',1,'rapidjson']]], + ['kwritedefaultflags_650',['kWriteDefaultFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226',1,'rapidjson']]], + ['kwritenanandinfflag_651',['kWriteNanAndInfFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39',1,'rapidjson']]], + ['kwritenoflags_652',['kWriteNoFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a',1,'rapidjson']]], + ['kwritevalidateencodingflag_653',['kWriteValidateEncodingFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10',1,'rapidjson']]] ]; diff --git a/search/files_0.js b/search/files_0.js index 3c185056..38031cb2 100644 --- a/search/files_0.js +++ b/search/files_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['document_2eh_415',['document.h',['../document_8h.html',1,'']]] + ['document_2eh_417',['document.h',['../document_8h.html',1,'']]] ]; diff --git a/search/files_1.js b/search/files_1.js index 8c0c34df..16fcdad8 100644 --- a/search/files_1.js +++ b/search/files_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['error_2eh_416',['error.h',['../error_8h.html',1,'']]] + ['error_2eh_418',['error.h',['../error_8h.html',1,'']]] ]; diff --git a/search/files_2.js b/search/files_2.js index 59f3fc0a..94e2bc9a 100644 --- a/search/files_2.js +++ b/search/files_2.js @@ -1,5 +1,5 @@ var searchData= [ - ['rapidjson_2eh_417',['rapidjson.h',['../rapidjson_8h.html',1,'']]], - ['reader_2eh_418',['reader.h',['../reader_8h.html',1,'']]] + ['rapidjson_2eh_419',['rapidjson.h',['../rapidjson_8h.html',1,'']]], + ['reader_2eh_420',['reader.h',['../reader_8h.html',1,'']]] ]; diff --git a/search/functions_0.js b/search/functions_0.js index 2f088b8f..618e049a 100644 --- a/search/functions_0.js +++ b/search/functions_0.js @@ -1,6 +1,6 @@ var searchData= [ - ['append_419',['Append',['../classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec',1,'rapidjson::GenericPointer::Append(const Token &token, Allocator *allocator=0) const'],['../classrapidjson_1_1_generic_pointer.html#a30f4eac82e9fded60dead3f7d1cb3941',1,'rapidjson::GenericPointer::Append(const Ch *name, SizeType length, Allocator *allocator=0) const']]], - ['autoutfinputstream_420',['AutoUTFInputStream',['../classrapidjson_1_1_auto_u_t_f_input_stream.html#a5c9f041a3b32bf15bc9be888a8731d35',1,'rapidjson::AutoUTFInputStream']]], - ['autoutfoutputstream_421',['AutoUTFOutputStream',['../classrapidjson_1_1_auto_u_t_f_output_stream.html#a39c828ee4c5b052df7338ec7fda1a17d',1,'rapidjson::AutoUTFOutputStream']]] + ['append_421',['Append',['../classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec',1,'rapidjson::GenericPointer::Append(const Token &token, Allocator *allocator=0) const'],['../classrapidjson_1_1_generic_pointer.html#a30f4eac82e9fded60dead3f7d1cb3941',1,'rapidjson::GenericPointer::Append(const Ch *name, SizeType length, Allocator *allocator=0) const']]], + ['autoutfinputstream_422',['AutoUTFInputStream',['../classrapidjson_1_1_auto_u_t_f_input_stream.html#a5c9f041a3b32bf15bc9be888a8731d35',1,'rapidjson::AutoUTFInputStream']]], + ['autoutfoutputstream_423',['AutoUTFOutputStream',['../classrapidjson_1_1_auto_u_t_f_output_stream.html#a39c828ee4c5b052df7338ec7fda1a17d',1,'rapidjson::AutoUTFOutputStream']]] ]; diff --git a/search/functions_1.js b/search/functions_1.js index d35073c2..f5393ec2 100644 --- a/search/functions_1.js +++ b/search/functions_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['basicistreamwrapper_422',['BasicIStreamWrapper',['../classrapidjson_1_1_basic_i_stream_wrapper.html#a2b4e069522fa9119685f1cee836e5cfa',1,'rapidjson::BasicIStreamWrapper::BasicIStreamWrapper(StreamType &stream)'],['../classrapidjson_1_1_basic_i_stream_wrapper.html#acd380a93ccc01d02aef95ea2a926e154',1,'rapidjson::BasicIStreamWrapper::BasicIStreamWrapper(StreamType &stream, char *buffer, size_t bufferSize)']]] + ['basicistreamwrapper_424',['BasicIStreamWrapper',['../classrapidjson_1_1_basic_i_stream_wrapper.html#a2b4e069522fa9119685f1cee836e5cfa',1,'rapidjson::BasicIStreamWrapper::BasicIStreamWrapper(StreamType &stream)'],['../classrapidjson_1_1_basic_i_stream_wrapper.html#acd380a93ccc01d02aef95ea2a926e154',1,'rapidjson::BasicIStreamWrapper::BasicIStreamWrapper(StreamType &stream, char *buffer, size_t bufferSize)']]] ]; diff --git a/search/functions_10.js b/search/functions_10.js index bc073d05..34558779 100644 --- a/search/functions_10.js +++ b/search/functions_10.js @@ -1,8 +1,8 @@ var searchData= [ - ['_7egenericpointer_505',['~GenericPointer',['../classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748',1,'rapidjson::GenericPointer']]], - ['_7egenericschemadocument_506',['~GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf',1,'rapidjson::GenericSchemaDocument']]], - ['_7egenericschemavalidator_507',['~GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572',1,'rapidjson::GenericSchemaValidator']]], - ['_7egenericvalue_508',['~GenericValue',['../classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437',1,'rapidjson::GenericValue']]], - ['_7ememorypoolallocator_509',['~MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700',1,'rapidjson::MemoryPoolAllocator']]] + ['_7egenericpointer_507',['~GenericPointer',['../classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748',1,'rapidjson::GenericPointer']]], + ['_7egenericschemadocument_508',['~GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf',1,'rapidjson::GenericSchemaDocument']]], + ['_7egenericschemavalidator_509',['~GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572',1,'rapidjson::GenericSchemaValidator']]], + ['_7egenericvalue_510',['~GenericValue',['../classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437',1,'rapidjson::GenericValue']]], + ['_7ememorypoolallocator_511',['~MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/search/functions_2.js b/search/functions_2.js index 4a0884fb..850a3ea8 100644 --- a/search/functions_2.js +++ b/search/functions_2.js @@ -1,6 +1,6 @@ var searchData= [ - ['capacity_423',['Capacity',['../classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd',1,'rapidjson::MemoryPoolAllocator']]], - ['clear_424',['Clear',['../classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840',1,'rapidjson::MemoryPoolAllocator::Clear()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a17c9f7f81675283393222658d613000f',1,'rapidjson::ParseResult::Clear()']]], - ['code_425',['Code',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a3c6a1f7b7dc21363a255eb10a3c0e00e',1,'rapidjson::ParseResult']]] + ['capacity_425',['Capacity',['../classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd',1,'rapidjson::MemoryPoolAllocator']]], + ['clear_426',['Clear',['../classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840',1,'rapidjson::MemoryPoolAllocator::Clear()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a17c9f7f81675283393222658d613000f',1,'rapidjson::ParseResult::Clear()']]], + ['code_427',['Code',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a3c6a1f7b7dc21363a255eb10a3c0e00e',1,'rapidjson::ParseResult']]] ]; diff --git a/search/functions_3.js b/search/functions_3.js index 1fc4b361..06456a3d 100644 --- a/search/functions_3.js +++ b/search/functions_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['double_426',['Double',['../classrapidjson_1_1_writer.html#aff66881798d01e932a0b8b8ef97b0373',1,'rapidjson::Writer']]] + ['double_428',['Double',['../classrapidjson_1_1_writer.html#aff66881798d01e932a0b8b8ef97b0373',1,'rapidjson::Writer']]] ]; diff --git a/search/functions_4.js b/search/functions_4.js index d94b3c81..531f3afa 100644 --- a/search/functions_4.js +++ b/search/functions_4.js @@ -1,6 +1,6 @@ var searchData= [ - ['filereadstream_427',['FileReadStream',['../classrapidjson_1_1_file_read_stream.html#a72b610ada5d86e8977a2bc1f2f4c0808',1,'rapidjson::FileReadStream']]], - ['flush_428',['Flush',['../classrapidjson_1_1_writer.html#a72cefd18d176bc12a53adb3185c51ca7',1,'rapidjson::Writer']]], - ['free_429',['Free',['../classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec',1,'rapidjson::MemoryPoolAllocator']]] + ['filereadstream_429',['FileReadStream',['../classrapidjson_1_1_file_read_stream.html#a72b610ada5d86e8977a2bc1f2f4c0808',1,'rapidjson::FileReadStream']]], + ['flush_430',['Flush',['../classrapidjson_1_1_writer.html#a72cefd18d176bc12a53adb3185c51ca7',1,'rapidjson::Writer']]], + ['free_431',['Free',['../classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/search/functions_5.js b/search/functions_5.js index a7992f2c..74d430f5 100644 --- a/search/functions_5.js +++ b/search/functions_5.js @@ -1,28 +1,28 @@ var searchData= [ - ['genericdocument_430',['GenericDocument',['../classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5',1,'rapidjson::GenericDocument::GenericDocument(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)'],['../classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb',1,'rapidjson::GenericDocument::GenericDocument(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)']]], - ['genericmemberiterator_431',['GenericMemberIterator',['../classrapidjson_1_1_generic_member_iterator.html#ac920af483c9e31a6746c22acf0dffc50',1,'rapidjson::GenericMemberIterator::GenericMemberIterator()'],['../classrapidjson_1_1_generic_member_iterator.html#aa30ffef74b3f4978b403024d81b484e4',1,'rapidjson::GenericMemberIterator::GenericMemberIterator(const NonConstIterator &it)']]], - ['genericpointer_432',['GenericPointer',['../classrapidjson_1_1_generic_pointer.html#aa077ce171ea25cf501c12f2d5df7f248',1,'rapidjson::GenericPointer::GenericPointer(Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a8f831aae14afc493a82b5fb6aa9c3c43',1,'rapidjson::GenericPointer::GenericPointer(const Ch *source, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#aeefcd60e5ad37d80ec43f5315ae84809',1,'rapidjson::GenericPointer::GenericPointer(const std::basic_string< Ch > &source, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a00ad17ea227d2556404df7cc64c6aeb5',1,'rapidjson::GenericPointer::GenericPointer(const Ch *source, size_t length, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a6df9f6a01d1b5945811055e1cf8aead6',1,'rapidjson::GenericPointer::GenericPointer(const Token *tokens, size_t tokenCount)'],['../classrapidjson_1_1_generic_pointer.html#ae071847ed3e7389f5b256d26fcc8fd62',1,'rapidjson::GenericPointer::GenericPointer(const GenericPointer &rhs)'],['../classrapidjson_1_1_generic_pointer.html#afedfcaac36fa589a46667825d3d0b763',1,'rapidjson::GenericPointer::GenericPointer(const GenericPointer &rhs, Allocator *allocator)']]], - ['genericreader_433',['GenericReader',['../classrapidjson_1_1_generic_reader.html#a56ab1065ea75167aeacb4802425bf57f',1,'rapidjson::GenericReader']]], - ['genericschemadocument_434',['GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#aeebf51ef6353f6a01d6f6618da6d0865',1,'rapidjson::GenericSchemaDocument']]], - ['genericschemavalidator_435',['GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#acc07bd08b00195d84bb5b83f59c593d3',1,'rapidjson::GenericSchemaValidator::GenericSchemaValidator(const SchemaDocumentType &schemaDocument, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)'],['../classrapidjson_1_1_generic_schema_validator.html#a0e1d8f19381bd53d77cc00a9a6dcd067',1,'rapidjson::GenericSchemaValidator::GenericSchemaValidator(const SchemaDocumentType &schemaDocument, OutputHandler &outputHandler, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)']]], - ['genericstringref_436',['GenericStringRef',['../structrapidjson_1_1_generic_string_ref.html#acd4d5ebac2b610ce647356aa52998002',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType(&str)[N]) RAPIDJSON_NOEXCEPT'],['../structrapidjson_1_1_generic_string_ref.html#a29cf407c6aa2313f13dff78d6ce02687',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#ad9eb120a58cee500ff3bd5706779c4e4',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType *str, SizeType len)']]], - ['genericvalue_437',['GenericValue',['../classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5',1,'rapidjson::GenericValue::GenericValue() RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58',1,'rapidjson::GenericValue::GenericValue(Type type) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac',1,'rapidjson::GenericValue::GenericValue(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)'],['../classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9',1,'rapidjson::GenericValue::GenericValue(bool b) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19',1,'rapidjson::GenericValue::GenericValue(int i) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6',1,'rapidjson::GenericValue::GenericValue(unsigned u) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8',1,'rapidjson::GenericValue::GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563',1,'rapidjson::GenericValue::GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a',1,'rapidjson::GenericValue::GenericValue(double d) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b',1,'rapidjson::GenericValue::GenericValue(float f) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1',1,'rapidjson::GenericValue::GenericValue(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941',1,'rapidjson::GenericValue::GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2',1,'rapidjson::GenericValue::GenericValue(const Ch *s, SizeType length, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f',1,'rapidjson::GenericValue::GenericValue(const Ch *s, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc',1,'rapidjson::GenericValue::GenericValue(const std::basic_string< Ch > &s, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8',1,'rapidjson::GenericValue::GenericValue(Array a) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e',1,'rapidjson::GenericValue::GenericValue(Object o) RAPIDJSON_NOEXCEPT']]], - ['getallocator_438',['GetAllocator',['../classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f',1,'rapidjson::GenericDocument']]], - ['getcolumn_439',['GetColumn',['../classrapidjson_1_1_cursor_stream_wrapper.html#a33002632924bb10108077a22c6aa108d',1,'rapidjson::CursorStreamWrapper']]], - ['geterror_440',['GetError',['../classrapidjson_1_1_generic_schema_validator.html#a422c16457e512835b0d0f64ec1c81ba2',1,'rapidjson::GenericSchemaValidator']]], - ['geterroroffset_441',['GetErrorOffset',['../classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f',1,'rapidjson::GenericDocument::GetErrorOffset()'],['../classrapidjson_1_1_generic_reader.html#ab50019e0a715320f83b7610b83dcef8f',1,'rapidjson::GenericReader::GetErrorOffset()']]], - ['getinvaliddocumentpointer_442',['GetInvalidDocumentPointer',['../classrapidjson_1_1_generic_schema_validator.html#a60dfb4a89593c8d3ca4c89a6202feb52',1,'rapidjson::GenericSchemaValidator']]], - ['getinvalidschemacode_443',['GetInvalidSchemaCode',['../classrapidjson_1_1_generic_schema_validator.html#a317d19322b003b8f4b87cad467775029',1,'rapidjson::GenericSchemaValidator']]], - ['getinvalidschemakeyword_444',['GetInvalidSchemaKeyword',['../classrapidjson_1_1_generic_schema_validator.html#a03bcd5497a574cffbd066d0aec2b5585',1,'rapidjson::GenericSchemaValidator']]], - ['getinvalidschemapointer_445',['GetInvalidSchemaPointer',['../classrapidjson_1_1_generic_schema_validator.html#a3238efb9d9144c2d6577362d8dc5f61b',1,'rapidjson::GenericSchemaValidator']]], - ['getlength_446',['GetLength',['../classrapidjson_1_1_generic_string_buffer.html#a0a114be213152d570a2d9fde7a28fe11',1,'rapidjson::GenericStringBuffer']]], - ['getline_447',['GetLine',['../classrapidjson_1_1_cursor_stream_wrapper.html#a97c6cbbd334911639fe522bbfdd350b7',1,'rapidjson::CursorStreamWrapper']]], - ['getparseerror_448',['GetParseError',['../classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b',1,'rapidjson::GenericDocument']]], - ['getparseerror_5fen_449',['GetParseError_En',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79',1,'rapidjson']]], - ['getparseerrorcode_450',['GetParseErrorCode',['../classrapidjson_1_1_generic_reader.html#a042c621cf745c5ed3a6f5ff9418dd05e',1,'rapidjson::GenericReader']]], - ['getroot_451',['GetRoot',['../classrapidjson_1_1_generic_schema_document.html#a8b2ac6de85dc9c1fb4f4d0be4aeb2d6a',1,'rapidjson::GenericSchemaDocument']]], - ['getsize_452',['GetSize',['../classrapidjson_1_1_generic_string_buffer.html#a9d830ec37a4ba0fba3b523c90aaf8b42',1,'rapidjson::GenericStringBuffer']]], - ['getstackcapacity_453',['GetStackCapacity',['../classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b',1,'rapidjson::GenericDocument']]], - ['getvalidateerror_5fen_454',['GetValidateError_En',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga68345ad2eccb3e7dfec09d188f20fe20',1,'rapidjson']]] + ['genericdocument_432',['GenericDocument',['../classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5',1,'rapidjson::GenericDocument::GenericDocument(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)'],['../classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb',1,'rapidjson::GenericDocument::GenericDocument(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)']]], + ['genericmemberiterator_433',['GenericMemberIterator',['../classrapidjson_1_1_generic_member_iterator.html#ac920af483c9e31a6746c22acf0dffc50',1,'rapidjson::GenericMemberIterator::GenericMemberIterator()'],['../classrapidjson_1_1_generic_member_iterator.html#aa30ffef74b3f4978b403024d81b484e4',1,'rapidjson::GenericMemberIterator::GenericMemberIterator(const NonConstIterator &it)']]], + ['genericpointer_434',['GenericPointer',['../classrapidjson_1_1_generic_pointer.html#aa077ce171ea25cf501c12f2d5df7f248',1,'rapidjson::GenericPointer::GenericPointer(Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a8f831aae14afc493a82b5fb6aa9c3c43',1,'rapidjson::GenericPointer::GenericPointer(const Ch *source, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#aeefcd60e5ad37d80ec43f5315ae84809',1,'rapidjson::GenericPointer::GenericPointer(const std::basic_string< Ch > &source, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a00ad17ea227d2556404df7cc64c6aeb5',1,'rapidjson::GenericPointer::GenericPointer(const Ch *source, size_t length, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a6df9f6a01d1b5945811055e1cf8aead6',1,'rapidjson::GenericPointer::GenericPointer(const Token *tokens, size_t tokenCount)'],['../classrapidjson_1_1_generic_pointer.html#ae071847ed3e7389f5b256d26fcc8fd62',1,'rapidjson::GenericPointer::GenericPointer(const GenericPointer &rhs)'],['../classrapidjson_1_1_generic_pointer.html#afedfcaac36fa589a46667825d3d0b763',1,'rapidjson::GenericPointer::GenericPointer(const GenericPointer &rhs, Allocator *allocator)']]], + ['genericreader_435',['GenericReader',['../classrapidjson_1_1_generic_reader.html#a56ab1065ea75167aeacb4802425bf57f',1,'rapidjson::GenericReader']]], + ['genericschemadocument_436',['GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#aeebf51ef6353f6a01d6f6618da6d0865',1,'rapidjson::GenericSchemaDocument']]], + ['genericschemavalidator_437',['GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#acc07bd08b00195d84bb5b83f59c593d3',1,'rapidjson::GenericSchemaValidator::GenericSchemaValidator(const SchemaDocumentType &schemaDocument, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)'],['../classrapidjson_1_1_generic_schema_validator.html#a0e1d8f19381bd53d77cc00a9a6dcd067',1,'rapidjson::GenericSchemaValidator::GenericSchemaValidator(const SchemaDocumentType &schemaDocument, OutputHandler &outputHandler, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)']]], + ['genericstringref_438',['GenericStringRef',['../structrapidjson_1_1_generic_string_ref.html#acd4d5ebac2b610ce647356aa52998002',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType(&str)[N]) RAPIDJSON_NOEXCEPT'],['../structrapidjson_1_1_generic_string_ref.html#a29cf407c6aa2313f13dff78d6ce02687',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#ad9eb120a58cee500ff3bd5706779c4e4',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType *str, SizeType len)']]], + ['genericvalue_439',['GenericValue',['../classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5',1,'rapidjson::GenericValue::GenericValue() RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58',1,'rapidjson::GenericValue::GenericValue(Type type) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac',1,'rapidjson::GenericValue::GenericValue(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)'],['../classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9',1,'rapidjson::GenericValue::GenericValue(bool b) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19',1,'rapidjson::GenericValue::GenericValue(int i) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6',1,'rapidjson::GenericValue::GenericValue(unsigned u) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8',1,'rapidjson::GenericValue::GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563',1,'rapidjson::GenericValue::GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a',1,'rapidjson::GenericValue::GenericValue(double d) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b',1,'rapidjson::GenericValue::GenericValue(float f) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1',1,'rapidjson::GenericValue::GenericValue(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941',1,'rapidjson::GenericValue::GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2',1,'rapidjson::GenericValue::GenericValue(const Ch *s, SizeType length, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f',1,'rapidjson::GenericValue::GenericValue(const Ch *s, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc',1,'rapidjson::GenericValue::GenericValue(const std::basic_string< Ch > &s, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8',1,'rapidjson::GenericValue::GenericValue(Array a) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e',1,'rapidjson::GenericValue::GenericValue(Object o) RAPIDJSON_NOEXCEPT']]], + ['getallocator_440',['GetAllocator',['../classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f',1,'rapidjson::GenericDocument']]], + ['getcolumn_441',['GetColumn',['../classrapidjson_1_1_cursor_stream_wrapper.html#a33002632924bb10108077a22c6aa108d',1,'rapidjson::CursorStreamWrapper']]], + ['geterror_442',['GetError',['../classrapidjson_1_1_generic_schema_validator.html#a422c16457e512835b0d0f64ec1c81ba2',1,'rapidjson::GenericSchemaValidator']]], + ['geterroroffset_443',['GetErrorOffset',['../classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f',1,'rapidjson::GenericDocument::GetErrorOffset()'],['../classrapidjson_1_1_generic_reader.html#ab50019e0a715320f83b7610b83dcef8f',1,'rapidjson::GenericReader::GetErrorOffset()']]], + ['getinvaliddocumentpointer_444',['GetInvalidDocumentPointer',['../classrapidjson_1_1_generic_schema_validator.html#a60dfb4a89593c8d3ca4c89a6202feb52',1,'rapidjson::GenericSchemaValidator']]], + ['getinvalidschemacode_445',['GetInvalidSchemaCode',['../classrapidjson_1_1_generic_schema_validator.html#a317d19322b003b8f4b87cad467775029',1,'rapidjson::GenericSchemaValidator']]], + ['getinvalidschemakeyword_446',['GetInvalidSchemaKeyword',['../classrapidjson_1_1_generic_schema_validator.html#a03bcd5497a574cffbd066d0aec2b5585',1,'rapidjson::GenericSchemaValidator']]], + ['getinvalidschemapointer_447',['GetInvalidSchemaPointer',['../classrapidjson_1_1_generic_schema_validator.html#a3238efb9d9144c2d6577362d8dc5f61b',1,'rapidjson::GenericSchemaValidator']]], + ['getlength_448',['GetLength',['../classrapidjson_1_1_generic_string_buffer.html#a0a114be213152d570a2d9fde7a28fe11',1,'rapidjson::GenericStringBuffer']]], + ['getline_449',['GetLine',['../classrapidjson_1_1_cursor_stream_wrapper.html#a97c6cbbd334911639fe522bbfdd350b7',1,'rapidjson::CursorStreamWrapper']]], + ['getparseerror_450',['GetParseError',['../classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b',1,'rapidjson::GenericDocument']]], + ['getparseerror_5fen_451',['GetParseError_En',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79',1,'rapidjson']]], + ['getparseerrorcode_452',['GetParseErrorCode',['../classrapidjson_1_1_generic_reader.html#a042c621cf745c5ed3a6f5ff9418dd05e',1,'rapidjson::GenericReader']]], + ['getroot_453',['GetRoot',['../classrapidjson_1_1_generic_schema_document.html#a8b2ac6de85dc9c1fb4f4d0be4aeb2d6a',1,'rapidjson::GenericSchemaDocument']]], + ['getsize_454',['GetSize',['../classrapidjson_1_1_generic_string_buffer.html#a9d830ec37a4ba0fba3b523c90aaf8b42',1,'rapidjson::GenericStringBuffer']]], + ['getstackcapacity_455',['GetStackCapacity',['../classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b',1,'rapidjson::GenericDocument']]], + ['getvalidateerror_5fen_456',['GetValidateError_En',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga68345ad2eccb3e7dfec09d188f20fe20',1,'rapidjson']]] ]; diff --git a/search/functions_6.js b/search/functions_6.js index 60c9761c..bf8281b4 100644 --- a/search/functions_6.js +++ b/search/functions_6.js @@ -1,4 +1,4 @@ var searchData= [ - ['hasparseerror_455',['HasParseError',['../classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e',1,'rapidjson::GenericDocument::HasParseError()'],['../classrapidjson_1_1_generic_reader.html#ac42370c3497a0e2b6973110f298e3a59',1,'rapidjson::GenericReader::HasParseError()']]] + ['hasparseerror_457',['HasParseError',['../classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e',1,'rapidjson::GenericDocument::HasParseError()'],['../classrapidjson_1_1_generic_reader.html#ac42370c3497a0e2b6973110f298e3a59',1,'rapidjson::GenericReader::HasParseError()']]] ]; diff --git a/search/functions_7.js b/search/functions_7.js index 3f98eadc..2b21114d 100644 --- a/search/functions_7.js +++ b/search/functions_7.js @@ -1,9 +1,9 @@ var searchData= [ - ['iscomplete_456',['IsComplete',['../classrapidjson_1_1_writer.html#a190d964d3e62155e87153e858a0b04da',1,'rapidjson::Writer']]], - ['iserror_457',['IsError',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ab6d87c6ce9c849f35e902fbe23f485c4',1,'rapidjson::ParseResult']]], - ['isvalid_458',['IsValid',['../classrapidjson_1_1_generic_schema_validator.html#ad32a9ad31dbb588edaaf038ab053275b',1,'rapidjson::GenericSchemaValidator']]], - ['iterativeparsecomplete_459',['IterativeParseComplete',['../classrapidjson_1_1_generic_reader.html#a037aee35044b894d1487b42365aadc4b',1,'rapidjson::GenericReader']]], - ['iterativeparseinit_460',['IterativeParseInit',['../classrapidjson_1_1_generic_reader.html#a90403a2c55dadf82fd2bb9d4c66b3280',1,'rapidjson::GenericReader']]], - ['iterativeparsenext_461',['IterativeParseNext',['../classrapidjson_1_1_generic_reader.html#abac6611bec17167de50fede5cd5194ca',1,'rapidjson::GenericReader']]] + ['iscomplete_458',['IsComplete',['../classrapidjson_1_1_writer.html#a190d964d3e62155e87153e858a0b04da',1,'rapidjson::Writer']]], + ['iserror_459',['IsError',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ab6d87c6ce9c849f35e902fbe23f485c4',1,'rapidjson::ParseResult']]], + ['isvalid_460',['IsValid',['../classrapidjson_1_1_generic_schema_validator.html#ad32a9ad31dbb588edaaf038ab053275b',1,'rapidjson::GenericSchemaValidator']]], + ['iterativeparsecomplete_461',['IterativeParseComplete',['../classrapidjson_1_1_generic_reader.html#a037aee35044b894d1487b42365aadc4b',1,'rapidjson::GenericReader']]], + ['iterativeparseinit_462',['IterativeParseInit',['../classrapidjson_1_1_generic_reader.html#a90403a2c55dadf82fd2bb9d4c66b3280',1,'rapidjson::GenericReader']]], + ['iterativeparsenext_463',['IterativeParseNext',['../classrapidjson_1_1_generic_reader.html#abac6611bec17167de50fede5cd5194ca',1,'rapidjson::GenericReader']]] ]; diff --git a/search/functions_8.js b/search/functions_8.js index 0d700eb1..7edbf2ce 100644 --- a/search/functions_8.js +++ b/search/functions_8.js @@ -1,5 +1,5 @@ var searchData= [ - ['malloc_462',['Malloc',['../classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344',1,'rapidjson::MemoryPoolAllocator']]], - ['memorypoolallocator_463',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)'],['../classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)']]] + ['malloc_464',['Malloc',['../classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344',1,'rapidjson::MemoryPoolAllocator']]], + ['memorypoolallocator_465',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)'],['../classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)']]] ]; diff --git a/search/functions_9.js b/search/functions_9.js index bdd3e2e9..a54c1ab0 100644 --- a/search/functions_9.js +++ b/search/functions_9.js @@ -1,11 +1,11 @@ var searchData= [ - ['offset_464',['Offset',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a85036788b0cfd1c676900de6f8260bd6',1,'rapidjson::ParseResult']]], - ['operator_20booleantype_465',['operator BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#af0936ace1dc9b674e9afb75ec6145b32',1,'rapidjson::ParseResult']]], - ['operator_20const_20ch_20_2a_466',['operator const Ch *',['../structrapidjson_1_1_generic_string_ref.html#a86d30bb594a41619a7a5ba6c8dcce2bd',1,'rapidjson::GenericStringRef']]], - ['operator_20parseresult_467',['operator ParseResult',['../classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974',1,'rapidjson::GenericDocument']]], - ['operator_21_3d_468',['operator!=',['../classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99',1,'rapidjson::MemoryPoolAllocator']]], - ['operator_2d_469',['operator-',['../classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2',1,'rapidjson::GenericMemberIterator']]], - ['operator_3d_470',['operator=',['../classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4',1,'rapidjson::GenericMember::operator=()'],['../classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac',1,'rapidjson::GenericValue::operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c',1,'rapidjson::GenericValue::operator=(StringRefType str) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6',1,'rapidjson::GenericPointer::operator=()']]], - ['operator_3d_3d_471',['operator==',['../classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724',1,'rapidjson::MemoryPoolAllocator']]] + ['offset_466',['Offset',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a85036788b0cfd1c676900de6f8260bd6',1,'rapidjson::ParseResult']]], + ['operator_20booleantype_467',['operator BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#af0936ace1dc9b674e9afb75ec6145b32',1,'rapidjson::ParseResult']]], + ['operator_20const_20ch_20_2a_468',['operator const Ch *',['../structrapidjson_1_1_generic_string_ref.html#a86d30bb594a41619a7a5ba6c8dcce2bd',1,'rapidjson::GenericStringRef']]], + ['operator_20parseresult_469',['operator ParseResult',['../classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974',1,'rapidjson::GenericDocument']]], + ['operator_21_3d_470',['operator!=',['../classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99',1,'rapidjson::MemoryPoolAllocator']]], + ['operator_2d_471',['operator-',['../classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2',1,'rapidjson::GenericMemberIterator']]], + ['operator_3d_472',['operator=',['../classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4',1,'rapidjson::GenericMember::operator=()'],['../classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac',1,'rapidjson::GenericValue::operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c',1,'rapidjson::GenericValue::operator=(StringRefType str) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6',1,'rapidjson::GenericPointer::operator=()']]], + ['operator_3d_3d_473',['operator==',['../classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/search/functions_a.js b/search/functions_a.js index a69a894d..144e5433 100644 --- a/search/functions_a.js +++ b/search/functions_a.js @@ -1,12 +1,12 @@ var searchData= [ - ['parse_472',['Parse',['../classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c',1,'rapidjson::GenericDocument::Parse(const typename SourceEncoding::Ch *str)'],['../classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)'],['../classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)']]], - ['parseinsitu_473',['ParseInsitu',['../classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)'],['../classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)']]], - ['parseresult_474',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1',1,'rapidjson::ParseResult::ParseResult()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ad15710045513f13ba526753c4a2cb59b',1,'rapidjson::ParseResult::ParseResult(ParseErrorCode code, size_t offset)']]], - ['parsestream_475',['ParseStream',['../classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)']]], - ['populate_476',['Populate',['../classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64',1,'rapidjson::GenericDocument']]], - ['prettywriter_477',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0',1,'rapidjson::PrettyWriter']]], - ['putn_478',['PutN',['../namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a',1,'rapidjson::PutN(FileWriteStream &stream, char c, size_t n)'],['../namespacerapidjson.html#aba27b0c8dcf724aa2b288a24fda0811b',1,'rapidjson::PutN(MemoryBuffer &memoryBuffer, char c, size_t n)'],['../namespacerapidjson.html#a1d49d2cab617858b53a1db23b1759f43',1,'rapidjson::PutN(Stream &stream, Ch c, size_t n)'],['../namespacerapidjson.html#a9d43be9c033dc49738b713fe6fbafecf',1,'rapidjson::PutN(GenericStringBuffer< UTF8<> > &stream, char c, size_t n)']]], - ['putreserve_479',['PutReserve',['../namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740',1,'rapidjson']]], - ['putunsafe_480',['PutUnsafe',['../namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20',1,'rapidjson']]] + ['parse_474',['Parse',['../classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c',1,'rapidjson::GenericDocument::Parse(const typename SourceEncoding::Ch *str)'],['../classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)'],['../classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)']]], + ['parseinsitu_475',['ParseInsitu',['../classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)'],['../classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)']]], + ['parseresult_476',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1',1,'rapidjson::ParseResult::ParseResult()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ad15710045513f13ba526753c4a2cb59b',1,'rapidjson::ParseResult::ParseResult(ParseErrorCode code, size_t offset)']]], + ['parsestream_477',['ParseStream',['../classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)']]], + ['populate_478',['Populate',['../classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64',1,'rapidjson::GenericDocument']]], + ['prettywriter_479',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0',1,'rapidjson::PrettyWriter']]], + ['putn_480',['PutN',['../namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a',1,'rapidjson::PutN(FileWriteStream &stream, char c, size_t n)'],['../namespacerapidjson.html#aba27b0c8dcf724aa2b288a24fda0811b',1,'rapidjson::PutN(MemoryBuffer &memoryBuffer, char c, size_t n)'],['../namespacerapidjson.html#a1d49d2cab617858b53a1db23b1759f43',1,'rapidjson::PutN(Stream &stream, Ch c, size_t n)'],['../namespacerapidjson.html#a9d43be9c033dc49738b713fe6fbafecf',1,'rapidjson::PutN(GenericStringBuffer< UTF8<> > &stream, char c, size_t n)']]], + ['putreserve_481',['PutReserve',['../namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740',1,'rapidjson']]], + ['putunsafe_482',['PutUnsafe',['../namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20',1,'rapidjson']]] ]; diff --git a/search/functions_b.js b/search/functions_b.js index 6da8e4fd..c2e94a15 100644 --- a/search/functions_b.js +++ b/search/functions_b.js @@ -1,10 +1,10 @@ var searchData= [ - ['rapidjson_5fdisableif_5freturn_481',['RAPIDJSON_DISABLEIF_RETURN',['../classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0',1,'rapidjson::GenericValue::RAPIDJSON_DISABLEIF_RETURN()'],['../classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81',1,'rapidjson::GenericPointer::RAPIDJSON_DISABLEIF_RETURN()']]], - ['rawassign_482',['RawAssign',['../classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e',1,'rapidjson::GenericValue']]], - ['rawnumber_483',['RawNumber',['../structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1',1,'rapidjson::BaseReaderHandler']]], - ['rawvalue_484',['RawValue',['../classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be',1,'rapidjson::PrettyWriter::RawValue()'],['../classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe',1,'rapidjson::Writer::RawValue()']]], - ['realloc_485',['Realloc',['../classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d',1,'rapidjson::MemoryPoolAllocator']]], - ['reset_486',['Reset',['../classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc',1,'rapidjson::GenericSchemaValidator::Reset()'],['../classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722',1,'rapidjson::Writer::Reset()']]], - ['reseterror_487',['ResetError',['../classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7',1,'rapidjson::GenericSchemaValidator']]] + ['rapidjson_5fdisableif_5freturn_483',['RAPIDJSON_DISABLEIF_RETURN',['../classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0',1,'rapidjson::GenericValue::RAPIDJSON_DISABLEIF_RETURN()'],['../classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81',1,'rapidjson::GenericPointer::RAPIDJSON_DISABLEIF_RETURN()']]], + ['rawassign_484',['RawAssign',['../classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e',1,'rapidjson::GenericValue']]], + ['rawnumber_485',['RawNumber',['../structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1',1,'rapidjson::BaseReaderHandler']]], + ['rawvalue_486',['RawValue',['../classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be',1,'rapidjson::PrettyWriter::RawValue()'],['../classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe',1,'rapidjson::Writer::RawValue()']]], + ['realloc_487',['Realloc',['../classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d',1,'rapidjson::MemoryPoolAllocator']]], + ['reset_488',['Reset',['../classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc',1,'rapidjson::GenericSchemaValidator::Reset()'],['../classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722',1,'rapidjson::Writer::Reset()']]], + ['reseterror_489',['ResetError',['../classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7',1,'rapidjson::GenericSchemaValidator']]] ]; diff --git a/search/functions_c.js b/search/functions_c.js index 1a2cc217..8c83ee19 100644 --- a/search/functions_c.js +++ b/search/functions_c.js @@ -1,17 +1,17 @@ var searchData= [ - ['schemavalidatingreader_488',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706',1,'rapidjson::SchemaValidatingReader']]], - ['set_489',['Set',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a40c0bd4d6c535c57acbb5c2e656bea38',1,'rapidjson::ParseResult']]], - ['setformatoptions_490',['SetFormatOptions',['../classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090',1,'rapidjson::PrettyWriter']]], - ['setindent_491',['SetIndent',['../classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0',1,'rapidjson::PrettyWriter']]], - ['setmaxdecimalplaces_492',['SetMaxDecimalPlaces',['../classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634',1,'rapidjson::Writer']]], - ['setobjectraw_493',['SetObjectRaw',['../classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac',1,'rapidjson::GenericValue']]], - ['setstringraw_494',['SetStringRaw',['../classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s, Allocator &allocator)']]], - ['setvalidateflags_495',['SetValidateFlags',['../classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66',1,'rapidjson::GenericSchemaValidator']]], - ['shared_496',['Shared',['../classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc',1,'rapidjson::MemoryPoolAllocator']]], - ['size_497',['Size',['../classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265',1,'rapidjson::MemoryPoolAllocator']]], - ['skipwhitespace_498',['SkipWhitespace',['../namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a',1,'rapidjson::SkipWhitespace(InputStream &is)'],['../namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2',1,'rapidjson::SkipWhitespace(InsituStringStream &is)'],['../namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568',1,'rapidjson::SkipWhitespace(StringStream &is)']]], - ['string_499',['String',['../classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c',1,'rapidjson::PrettyWriter::String()'],['../classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24',1,'rapidjson::Writer::String()']]], - ['stringref_500',['StringRef',['../structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::GenericStringRef::StringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::GenericStringRef::StringRef(const CharType *str, size_t length)'],['../structrapidjson_1_1_generic_string_ref.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::GenericStringRef::StringRef(const std::basic_string< CharType > &str)'],['../namespacerapidjson.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::StringRef(const CharType *str)'],['../namespacerapidjson.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::StringRef(const CharType *str, size_t length)'],['../namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::StringRef(const std::basic_string< CharType > &str)']]], - ['swap_501',['Swap',['../classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b',1,'rapidjson::GenericDocument::Swap()'],['../classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b',1,'rapidjson::GenericPointer::Swap()']]] + ['schemavalidatingreader_490',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706',1,'rapidjson::SchemaValidatingReader']]], + ['set_491',['Set',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a40c0bd4d6c535c57acbb5c2e656bea38',1,'rapidjson::ParseResult']]], + ['setformatoptions_492',['SetFormatOptions',['../classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090',1,'rapidjson::PrettyWriter']]], + ['setindent_493',['SetIndent',['../classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0',1,'rapidjson::PrettyWriter']]], + ['setmaxdecimalplaces_494',['SetMaxDecimalPlaces',['../classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634',1,'rapidjson::Writer']]], + ['setobjectraw_495',['SetObjectRaw',['../classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac',1,'rapidjson::GenericValue']]], + ['setstringraw_496',['SetStringRaw',['../classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s, Allocator &allocator)']]], + ['setvalidateflags_497',['SetValidateFlags',['../classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66',1,'rapidjson::GenericSchemaValidator']]], + ['shared_498',['Shared',['../classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc',1,'rapidjson::MemoryPoolAllocator']]], + ['size_499',['Size',['../classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265',1,'rapidjson::MemoryPoolAllocator']]], + ['skipwhitespace_500',['SkipWhitespace',['../namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a',1,'rapidjson::SkipWhitespace(InputStream &is)'],['../namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2',1,'rapidjson::SkipWhitespace(InsituStringStream &is)'],['../namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568',1,'rapidjson::SkipWhitespace(StringStream &is)']]], + ['string_501',['String',['../classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c',1,'rapidjson::PrettyWriter::String()'],['../classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24',1,'rapidjson::Writer::String()']]], + ['stringref_502',['StringRef',['../structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::GenericStringRef::StringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::GenericStringRef::StringRef(const CharType *str, size_t length)'],['../structrapidjson_1_1_generic_string_ref.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::GenericStringRef::StringRef(const std::basic_string< CharType > &str)'],['../namespacerapidjson.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::StringRef(const CharType *str)'],['../namespacerapidjson.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::StringRef(const CharType *str, size_t length)'],['../namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::StringRef(const std::basic_string< CharType > &str)']]], + ['swap_503',['Swap',['../classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b',1,'rapidjson::GenericDocument::Swap()'],['../classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b',1,'rapidjson::GenericPointer::Swap()']]] ]; diff --git a/search/functions_d.js b/search/functions_d.js index 0bea8977..5b7e22dd 100644 --- a/search/functions_d.js +++ b/search/functions_d.js @@ -1,4 +1,4 @@ var searchData= [ - ['transcode_502',['Transcode',['../structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664',1,'rapidjson::Transcoder']]] + ['transcode_504',['Transcode',['../structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664',1,'rapidjson::Transcoder']]] ]; diff --git a/search/functions_e.js b/search/functions_e.js index 03a7d8e7..c7cf951c 100644 --- a/search/functions_e.js +++ b/search/functions_e.js @@ -1,4 +1,4 @@ var searchData= [ - ['validate_503',['Validate',['../structrapidjson_1_1_transcoder.html#ae9178e512e99394a38785e73927140da',1,'rapidjson::Transcoder']]] + ['validate_505',['Validate',['../structrapidjson_1_1_transcoder.html#ae9178e512e99394a38785e73927140da',1,'rapidjson::Transcoder']]] ]; diff --git a/search/functions_f.js b/search/functions_f.js index d5f405a1..f03f7a07 100644 --- a/search/functions_f.js +++ b/search/functions_f.js @@ -1,4 +1,4 @@ var searchData= [ - ['writer_504',['Writer',['../classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2',1,'rapidjson::Writer']]] + ['writer_506',['Writer',['../classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2',1,'rapidjson::Writer']]] ]; diff --git a/search/groups_0.js b/search/groups_0.js index 32299413..c5031d55 100644 --- a/search/groups_0.js +++ b/search/groups_0.js @@ -1,5 +1,5 @@ var searchData= [ - ['rapidjson_20configuration_662',['RapidJSON configuration',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html',1,'']]], - ['rapidjson_20error_20handling_663',['RapidJSON error handling',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html',1,'']]] + ['rapidjson_20configuration_665',['RapidJSON configuration',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html',1,'']]], + ['rapidjson_20error_20handling_666',['RapidJSON error handling',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html',1,'']]] ]; diff --git a/search/namespaces_0.js b/search/namespaces_0.js index 269c2520..989ddf29 100644 --- a/search/namespaces_0.js +++ b/search/namespaces_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['rapidjson_414',['rapidjson',['../namespacerapidjson.html',1,'']]] + ['rapidjson_416',['rapidjson',['../namespacerapidjson.html',1,'']]] ]; diff --git a/search/pages_0.js b/search/pages_0.js index a26e4a9e..1b0ea122 100644 --- a/search/pages_0.js +++ b/search/pages_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['change_20log_664',['Change Log',['../md__c_h_a_n_g_e_l_o_g.html',1,'']]] + ['change_20log_667',['Change Log',['../md__c_h_a_n_g_e_l_o_g.html',1,'']]] ]; diff --git a/search/pages_1.js b/search/pages_1.js index e200a710..a4d5d25b 100644 --- a/search/pages_1.js +++ b/search/pages_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['dom_665',['DOM',['../md_doc_dom.html',1,'']]] + ['dom_668',['DOM',['../md_doc_dom.html',1,'']]] ]; diff --git a/search/pages_2.js b/search/pages_2.js index 073a362d..6079b49b 100644 --- a/search/pages_2.js +++ b/search/pages_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['encoding_666',['Encoding',['../md_doc_encoding.html',1,'']]] + ['encoding_669',['Encoding',['../md_doc_encoding.html',1,'']]] ]; diff --git a/search/pages_3.js b/search/pages_3.js index fad696b1..df4873dd 100644 --- a/search/pages_3.js +++ b/search/pages_3.js @@ -1,5 +1,5 @@ var searchData= [ - ['faq_667',['FAQ',['../md_doc_faq.html',1,'']]], - ['features_668',['Features',['../md_doc_features.html',1,'']]] + ['faq_670',['FAQ',['../md_doc_faq.html',1,'']]], + ['features_671',['Features',['../md_doc_features.html',1,'']]] ]; diff --git a/search/pages_4.js b/search/pages_4.js index 40724b5e..b0328e02 100644 --- a/search/pages_4.js +++ b/search/pages_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['internals_669',['Internals',['../md_doc_internals.html',1,'']]] + ['internals_672',['Internals',['../md_doc_internals.html',1,'']]] ]; diff --git a/search/pages_5.js b/search/pages_5.js index 985440da..f2e0775f 100644 --- a/search/pages_5.js +++ b/search/pages_5.js @@ -1,5 +1,5 @@ var searchData= [ - ['performance_670',['Performance',['../md_doc_performance.html',1,'']]], - ['pointer_671',['Pointer',['../md_doc_pointer.html',1,'']]] + ['performance_673',['Performance',['../md_doc_performance.html',1,'']]], + ['pointer_674',['Pointer',['../md_doc_pointer.html',1,'']]] ]; diff --git a/search/pages_6.js b/search/pages_6.js index fe064610..d0b5eba9 100644 --- a/search/pages_6.js +++ b/search/pages_6.js @@ -1,6 +1,6 @@ var searchData= [ - ['sax_672',['SAX',['../md_doc_sax.html',1,'']]], - ['schema_673',['Schema',['../md_doc_schema.html',1,'']]], - ['stream_674',['Stream',['../md_doc_stream.html',1,'']]] + ['sax_675',['SAX',['../md_doc_sax.html',1,'']]], + ['schema_676',['Schema',['../md_doc_schema.html',1,'']]], + ['stream_677',['Stream',['../md_doc_stream.html',1,'']]] ]; diff --git a/search/pages_7.js b/search/pages_7.js index 17d38462..f1a98b0c 100644 --- a/search/pages_7.js +++ b/search/pages_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['tutorial_675',['Tutorial',['../md_doc_tutorial.html',1,'']]] + ['tutorial_678',['Tutorial',['../md_doc_tutorial.html',1,'']]] ]; diff --git a/search/related_0.js b/search/related_0.js index 1e4edd2a..e191aca8 100644 --- a/search/related_0.js +++ b/search/related_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['swap_651',['swap',['../classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d',1,'rapidjson::GenericDocument::swap()'],['../classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937',1,'rapidjson::GenericPointer::swap()']]] + ['swap_654',['swap',['../classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d',1,'rapidjson::GenericDocument::swap()'],['../classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937',1,'rapidjson::GenericPointer::swap()']]] ]; diff --git a/search/typedefs_0.js b/search/typedefs_0.js index 55cfbd65..fbcb7fa6 100644 --- a/search/typedefs_0.js +++ b/search/typedefs_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['allocatortype_534',['AllocatorType',['../classrapidjson_1_1_generic_value.html#a5d47340c96346c5028fee4c9068d783d',1,'rapidjson::GenericValue::AllocatorType()'],['../classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773',1,'rapidjson::GenericDocument::AllocatorType()']]] + ['allocatortype_537',['AllocatorType',['../classrapidjson_1_1_generic_value.html#a5d47340c96346c5028fee4c9068d783d',1,'rapidjson::GenericValue::AllocatorType()'],['../classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773',1,'rapidjson::GenericDocument::AllocatorType()']]] ]; diff --git a/search/typedefs_1.js b/search/typedefs_1.js index 8df63961..22316dbd 100644 --- a/search/typedefs_1.js +++ b/search/typedefs_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['booleantype_535',['BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#aff2daa285445bba8f76578ea274e34a3',1,'rapidjson::ParseResult']]] + ['booleantype_538',['BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#aff2daa285445bba8f76578ea274e34a3',1,'rapidjson::ParseResult']]] ]; diff --git a/search/typedefs_2.js b/search/typedefs_2.js index 82adc7e2..63d858a0 100644 --- a/search/typedefs_2.js +++ b/search/typedefs_2.js @@ -1,6 +1,6 @@ var searchData= [ - ['ch_536',['Ch',['../structrapidjson_1_1_generic_string_ref.html#aa2a8eccae3d7eb14c30bc21afb7d6fba',1,'rapidjson::GenericStringRef::Ch()'],['../classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4',1,'rapidjson::GenericValue::Ch()'],['../classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5',1,'rapidjson::GenericDocument::Ch()'],['../classrapidjson_1_1_file_read_stream.html#a4a5f34875b40d22def206c9a09ecd929',1,'rapidjson::FileReadStream::Ch()'],['../classrapidjson_1_1_file_write_stream.html#afc606cc81f6c3709d81bf99b30566330',1,'rapidjson::FileWriteStream::Ch()'],['../classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7',1,'rapidjson::GenericPointer::Ch()'],['../classrapidjson_1_1_generic_reader.html#a0781d19e8c6bc044d9cc5f5d3dde287e',1,'rapidjson::GenericReader::Ch()']]], - ['constiterator_537',['ConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a61b9a9ba8a5917d90406532f104605cc',1,'rapidjson::GenericMemberIterator']]], - ['constmemberiterator_538',['ConstMemberIterator',['../classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f',1,'rapidjson::GenericValue']]] + ['ch_539',['Ch',['../structrapidjson_1_1_generic_string_ref.html#aa2a8eccae3d7eb14c30bc21afb7d6fba',1,'rapidjson::GenericStringRef::Ch()'],['../classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4',1,'rapidjson::GenericValue::Ch()'],['../classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5',1,'rapidjson::GenericDocument::Ch()'],['../classrapidjson_1_1_file_read_stream.html#a4a5f34875b40d22def206c9a09ecd929',1,'rapidjson::FileReadStream::Ch()'],['../classrapidjson_1_1_file_write_stream.html#afc606cc81f6c3709d81bf99b30566330',1,'rapidjson::FileWriteStream::Ch()'],['../classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7',1,'rapidjson::GenericPointer::Ch()'],['../classrapidjson_1_1_generic_reader.html#a0781d19e8c6bc044d9cc5f5d3dde287e',1,'rapidjson::GenericReader::Ch()']]], + ['constiterator_540',['ConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a61b9a9ba8a5917d90406532f104605cc',1,'rapidjson::GenericMemberIterator']]], + ['constmemberiterator_541',['ConstMemberIterator',['../classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f',1,'rapidjson::GenericValue']]] ]; diff --git a/search/typedefs_3.js b/search/typedefs_3.js index bfa21d66..e02511d8 100644 --- a/search/typedefs_3.js +++ b/search/typedefs_3.js @@ -1,5 +1,5 @@ var searchData= [ - ['differencetype_539',['DifferenceType',['../classrapidjson_1_1_generic_member_iterator.html#aff2739a9265639a7a4be8c3e6216b31a',1,'rapidjson::GenericMemberIterator']]], - ['document_540',['Document',['../namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8',1,'rapidjson']]] + ['differencetype_542',['DifferenceType',['../classrapidjson_1_1_generic_member_iterator.html#aff2739a9265639a7a4be8c3e6216b31a',1,'rapidjson::GenericMemberIterator']]], + ['document_543',['Document',['../namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8',1,'rapidjson']]] ]; diff --git a/search/typedefs_4.js b/search/typedefs_4.js index e566b870..2d38a5c4 100644 --- a/search/typedefs_4.js +++ b/search/typedefs_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['encodingtype_541',['EncodingType',['../classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d',1,'rapidjson::GenericValue::EncodingType()'],['../classrapidjson_1_1_generic_pointer.html#a399790c5fe8076d91a58c621c0c2a79e',1,'rapidjson::GenericPointer::EncodingType()']]] + ['encodingtype_544',['EncodingType',['../classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d',1,'rapidjson::GenericValue::EncodingType()'],['../classrapidjson_1_1_generic_pointer.html#a399790c5fe8076d91a58c621c0c2a79e',1,'rapidjson::GenericPointer::EncodingType()']]] ]; diff --git a/search/typedefs_5.js b/search/typedefs_5.js index 1ba3a938..54f4693d 100644 --- a/search/typedefs_5.js +++ b/search/typedefs_5.js @@ -1,6 +1,6 @@ var searchData= [ - ['insitustringstream_542',['InsituStringStream',['../namespacerapidjson.html#a64e957c8d9d7cd15b193ffc31410038e',1,'rapidjson']]], - ['iremoteschemadocumentprovider_543',['IRemoteSchemaDocumentProvider',['../namespacerapidjson.html#af91eb8eea47b79d75b23e29fa9c0abb5',1,'rapidjson']]], - ['iterator_544',['Iterator',['../classrapidjson_1_1_generic_member_iterator.html#a37091c3dd8470486ef5188f3c1108653',1,'rapidjson::GenericMemberIterator']]] + ['insitustringstream_545',['InsituStringStream',['../namespacerapidjson.html#a64e957c8d9d7cd15b193ffc31410038e',1,'rapidjson']]], + ['iremoteschemadocumentprovider_546',['IRemoteSchemaDocumentProvider',['../namespacerapidjson.html#af91eb8eea47b79d75b23e29fa9c0abb5',1,'rapidjson']]], + ['iterator_547',['Iterator',['../classrapidjson_1_1_generic_member_iterator.html#a37091c3dd8470486ef5188f3c1108653',1,'rapidjson::GenericMemberIterator']]] ]; diff --git a/search/typedefs_6.js b/search/typedefs_6.js index 3dfca66d..8f4a581c 100644 --- a/search/typedefs_6.js +++ b/search/typedefs_6.js @@ -1,5 +1,5 @@ var searchData= [ - ['member_545',['Member',['../classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559',1,'rapidjson::GenericValue']]], - ['memberiterator_546',['MemberIterator',['../classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b',1,'rapidjson::GenericValue']]] + ['member_548',['Member',['../classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559',1,'rapidjson::GenericValue']]], + ['memberiterator_549',['MemberIterator',['../classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b',1,'rapidjson::GenericValue']]] ]; diff --git a/search/typedefs_7.js b/search/typedefs_7.js index 6ff795e3..fca126af 100644 --- a/search/typedefs_7.js +++ b/search/typedefs_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['nonconstiterator_547',['NonConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb',1,'rapidjson::GenericMemberIterator']]] + ['nonconstiterator_550',['NonConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb',1,'rapidjson::GenericMemberIterator']]] ]; diff --git a/search/typedefs_8.js b/search/typedefs_8.js index cabbc3ca..1084c372 100644 --- a/search/typedefs_8.js +++ b/search/typedefs_8.js @@ -1,4 +1,4 @@ var searchData= [ - ['pointer_548',['Pointer',['../classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107',1,'rapidjson::GenericMemberIterator::Pointer()'],['../namespacerapidjson.html#a080910f74d2f5046e6724280159cf374',1,'rapidjson::Pointer()']]] + ['pointer_551',['Pointer',['../classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107',1,'rapidjson::GenericMemberIterator::Pointer()'],['../namespacerapidjson.html#a080910f74d2f5046e6724280159cf374',1,'rapidjson::Pointer()']]] ]; diff --git a/search/typedefs_9.js b/search/typedefs_9.js index 452cbacd..3cbac782 100644 --- a/search/typedefs_9.js +++ b/search/typedefs_9.js @@ -1,5 +1,5 @@ var searchData= [ - ['reader_549',['Reader',['../namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6',1,'rapidjson']]], - ['reference_550',['Reference',['../classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2',1,'rapidjson::GenericMemberIterator']]] + ['reader_552',['Reader',['../namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6',1,'rapidjson']]], + ['reference_553',['Reference',['../classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2',1,'rapidjson::GenericMemberIterator']]] ]; diff --git a/search/typedefs_a.js b/search/typedefs_a.js index a5c51cd9..2f6074ce 100644 --- a/search/typedefs_a.js +++ b/search/typedefs_a.js @@ -1,8 +1,8 @@ var searchData= [ - ['schemadocument_551',['SchemaDocument',['../namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf',1,'rapidjson']]], - ['sizetype_552',['SizeType',['../namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84',1,'rapidjson']]], - ['stringbuffer_553',['StringBuffer',['../namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21',1,'rapidjson']]], - ['stringreftype_554',['StringRefType',['../classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379',1,'rapidjson::GenericValue']]], - ['stringstream_555',['StringStream',['../namespacerapidjson.html#a021f77051e9f85188fc2f71ff5a15ebc',1,'rapidjson']]] + ['schemadocument_554',['SchemaDocument',['../namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf',1,'rapidjson']]], + ['sizetype_555',['SizeType',['../namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84',1,'rapidjson']]], + ['stringbuffer_556',['StringBuffer',['../namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21',1,'rapidjson']]], + ['stringreftype_557',['StringRefType',['../classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379',1,'rapidjson::GenericValue']]], + ['stringstream_558',['StringStream',['../namespacerapidjson.html#a021f77051e9f85188fc2f71ff5a15ebc',1,'rapidjson']]] ]; diff --git a/search/typedefs_b.js b/search/typedefs_b.js index fc44388d..b888d7c7 100644 --- a/search/typedefs_b.js +++ b/search/typedefs_b.js @@ -1,6 +1,6 @@ var searchData= [ - ['value_556',['Value',['../namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505',1,'rapidjson']]], - ['valueiterator_557',['ValueIterator',['../classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e',1,'rapidjson::GenericValue']]], - ['valuetype_558',['ValueType',['../classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202',1,'rapidjson::GenericValue::ValueType()'],['../classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc',1,'rapidjson::GenericDocument::ValueType()']]] + ['value_559',['Value',['../namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505',1,'rapidjson']]], + ['valueiterator_560',['ValueIterator',['../classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e',1,'rapidjson::GenericValue']]], + ['valuetype_561',['ValueType',['../classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202',1,'rapidjson::GenericValue::ValueType()'],['../classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc',1,'rapidjson::GenericDocument::ValueType()']]] ]; diff --git a/search/variables_0.js b/search/variables_0.js index 89911b30..56b44b94 100644 --- a/search/variables_0.js +++ b/search/variables_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['allocator_5f_510',['allocator_',['../classrapidjson_1_1_generic_pointer.html#a303e16e7d6c391a2afe8669744f79897',1,'rapidjson::GenericPointer']]] + ['allocator_5f_512',['allocator_',['../classrapidjson_1_1_generic_pointer.html#a303e16e7d6c391a2afe8669744f79897',1,'rapidjson::GenericPointer']]] ]; diff --git a/search/variables_1.js b/search/variables_1.js index e767c197..754103b9 100644 --- a/search/variables_1.js +++ b/search/variables_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['begin_5f_511',['begin_',['../structrapidjson_1_1_memory_stream.html#a1cc586e50fbfc0bd5994977b42243b93',1,'rapidjson::MemoryStream']]] + ['begin_5f_513',['begin_',['../structrapidjson_1_1_memory_stream.html#a1cc586e50fbfc0bd5994977b42243b93',1,'rapidjson::MemoryStream']]] ]; diff --git a/search/variables_2.js b/search/variables_2.js index 895583b6..3d12149b 100644 --- a/search/variables_2.js +++ b/search/variables_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['constvalueiterator_512',['ConstValueIterator',['../classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7',1,'rapidjson::GenericValue']]] + ['constvalueiterator_514',['ConstValueIterator',['../classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7',1,'rapidjson::GenericValue']]] ]; diff --git a/search/variables_3.js b/search/variables_3.js index d152d954..f403539e 100644 --- a/search/variables_3.js +++ b/search/variables_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['end_5f_513',['end_',['../structrapidjson_1_1_memory_stream.html#a47f45298891e8156121b4017954fabe8',1,'rapidjson::MemoryStream']]] + ['end_5f_515',['end_',['../structrapidjson_1_1_memory_stream.html#a47f45298891e8156121b4017954fabe8',1,'rapidjson::MemoryStream']]] ]; diff --git a/search/variables_4.js b/search/variables_4.js index 31a4a94a..b3a73f89 100644 --- a/search/variables_4.js +++ b/search/variables_4.js @@ -1,5 +1,5 @@ var searchData= [ - ['getparseerrorfunc_514',['GetParseErrorFunc',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga9d6e699072f8275623a52c4892005751',1,'rapidjson']]], - ['getvalidateerrorfunc_515',['GetValidateErrorFunc',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga5e4d44bc16d54acb0a9697110a79a83c',1,'rapidjson']]] + ['getparseerrorfunc_516',['GetParseErrorFunc',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga9d6e699072f8275623a52c4892005751',1,'rapidjson']]], + ['getvalidateerrorfunc_517',['GetValidateErrorFunc',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga5e4d44bc16d54acb0a9697110a79a83c',1,'rapidjson']]] ]; diff --git a/search/variables_5.js b/search/variables_5.js index ac33f6ba..2f542867 100644 --- a/search/variables_5.js +++ b/search/variables_5.js @@ -1,5 +1,5 @@ var searchData= [ - ['hashcode_516',['hashcode',['../structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260',1,'rapidjson::GenericValue::String']]], - ['head_5f_517',['head_',['../structrapidjson_1_1_generic_string_stream.html#a2556705b0a0fd6393862efe6db025b32',1,'rapidjson::GenericStringStream']]] + ['hashcode_518',['hashcode',['../structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260',1,'rapidjson::GenericValue::String']]], + ['head_5f_519',['head_',['../structrapidjson_1_1_generic_string_stream.html#a2556705b0a0fd6393862efe6db025b32',1,'rapidjson::GenericStringStream']]] ]; diff --git a/search/variables_6.js b/search/variables_6.js index 476d932a..7fc41f20 100644 --- a/search/variables_6.js +++ b/search/variables_6.js @@ -1,5 +1,5 @@ var searchData= [ - ['inarray_518',['inArray',['../structrapidjson_1_1_writer_1_1_level.html#a59255e3b1d371161f7c894503cfd6bec',1,'rapidjson::Writer::Level']]], - ['index_519',['index',['../structrapidjson_1_1_generic_pointer_1_1_token.html#a50331c9e3dedc34d2c79745b2e58fb2d',1,'rapidjson::GenericPointer::Token']]] + ['inarray_520',['inArray',['../structrapidjson_1_1_writer_1_1_level.html#a59255e3b1d371161f7c894503cfd6bec',1,'rapidjson::Writer::Level']]], + ['index_521',['index',['../structrapidjson_1_1_generic_pointer_1_1_token.html#a50331c9e3dedc34d2c79745b2e58fb2d',1,'rapidjson::GenericPointer::Token']]] ]; diff --git a/search/variables_7.js b/search/variables_7.js index 5a7c2069..58d200cf 100644 --- a/search/variables_7.js +++ b/search/variables_7.js @@ -1,4 +1,5 @@ var searchData= [ - ['kneedfree_520',['kNeedFree',['../classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29',1,'rapidjson::MemoryPoolAllocator::kNeedFree()'],['../classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c',1,'rapidjson::StdAllocator::kNeedFree()']]] + ['kneedfree_522',['kNeedFree',['../classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29',1,'rapidjson::MemoryPoolAllocator::kNeedFree()'],['../classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c',1,'rapidjson::StdAllocator::kNeedFree()']]], + ['krefcounted_523',['kRefCounted',['../classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/search/variables_8.js b/search/variables_8.js index 2c91c76a..dae9ca17 100644 --- a/search/variables_8.js +++ b/search/variables_8.js @@ -1,4 +1,4 @@ var searchData= [ - ['length_521',['length',['../structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111',1,'rapidjson::GenericStringRef::length()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600',1,'rapidjson::GenericPointer::Token::length()']]] + ['length_524',['length',['../structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111',1,'rapidjson::GenericStringRef::length()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600',1,'rapidjson::GenericPointer::Token::length()']]] ]; diff --git a/search/variables_9.js b/search/variables_9.js index de3416c0..5ebbc5e9 100644 --- a/search/variables_9.js +++ b/search/variables_9.js @@ -1,5 +1,5 @@ var searchData= [ - ['name_522',['name',['../classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607',1,'rapidjson::GenericMember::name()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#aceb59c9796418c20da27b03bf1948fe8',1,'rapidjson::GenericPointer::Token::name()']]], - ['namebuffer_5f_523',['nameBuffer_',['../classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465',1,'rapidjson::GenericPointer']]] + ['name_525',['name',['../classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607',1,'rapidjson::GenericMember::name()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#aceb59c9796418c20da27b03bf1948fe8',1,'rapidjson::GenericPointer::Token::name()']]], + ['namebuffer_5f_526',['nameBuffer_',['../classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465',1,'rapidjson::GenericPointer']]] ]; diff --git a/search/variables_a.js b/search/variables_a.js index ce845a7a..24378795 100644 --- a/search/variables_a.js +++ b/search/variables_a.js @@ -1,4 +1,4 @@ var searchData= [ - ['ownallocator_5f_524',['ownAllocator_',['../classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445',1,'rapidjson::GenericPointer']]] + ['ownallocator_5f_527',['ownAllocator_',['../classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445',1,'rapidjson::GenericPointer']]] ]; diff --git a/search/variables_b.js b/search/variables_b.js index 1006b732..3de85b34 100644 --- a/search/variables_b.js +++ b/search/variables_b.js @@ -1,5 +1,5 @@ var searchData= [ - ['parseerrorcode_5f_525',['parseErrorCode_',['../classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34',1,'rapidjson::GenericPointer']]], - ['parseerroroffset_5f_526',['parseErrorOffset_',['../classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a',1,'rapidjson::GenericPointer']]] + ['parseerrorcode_5f_528',['parseErrorCode_',['../classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34',1,'rapidjson::GenericPointer']]], + ['parseerroroffset_5f_529',['parseErrorOffset_',['../classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a',1,'rapidjson::GenericPointer']]] ]; diff --git a/search/variables_c.js b/search/variables_c.js index e0fd0c13..1bea73fd 100644 --- a/search/variables_c.js +++ b/search/variables_c.js @@ -1,6 +1,6 @@ var searchData= [ - ['s_527',['s',['../structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994',1,'rapidjson::GenericStringRef']]], - ['size_5f_528',['size_',['../structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace',1,'rapidjson::MemoryStream']]], - ['src_5f_529',['src_',['../structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722',1,'rapidjson::MemoryStream::src_()'],['../structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d',1,'rapidjson::GenericStringStream::src_()']]] + ['s_530',['s',['../structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994',1,'rapidjson::GenericStringRef']]], + ['size_5f_531',['size_',['../structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace',1,'rapidjson::MemoryStream']]], + ['src_5f_532',['src_',['../structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722',1,'rapidjson::MemoryStream::src_()'],['../structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d',1,'rapidjson::GenericStringStream::src_()']]] ]; diff --git a/search/variables_d.js b/search/variables_d.js index 5e55705c..9a2327a5 100644 --- a/search/variables_d.js +++ b/search/variables_d.js @@ -1,5 +1,5 @@ var searchData= [ - ['tokencount_5f_530',['tokenCount_',['../classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b',1,'rapidjson::GenericPointer']]], - ['tokens_5f_531',['tokens_',['../classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7',1,'rapidjson::GenericPointer']]] + ['tokencount_5f_533',['tokenCount_',['../classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b',1,'rapidjson::GenericPointer']]], + ['tokens_5f_534',['tokens_',['../classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7',1,'rapidjson::GenericPointer']]] ]; diff --git a/search/variables_e.js b/search/variables_e.js index 6f1bf467..52bb6c42 100644 --- a/search/variables_e.js +++ b/search/variables_e.js @@ -1,5 +1,5 @@ var searchData= [ - ['value_532',['value',['../classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6',1,'rapidjson::GenericMember']]], - ['valuecount_533',['valueCount',['../structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b',1,'rapidjson::Writer::Level']]] + ['value_535',['value',['../classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6',1,'rapidjson::GenericMember']]], + ['valuecount_536',['valueCount',['../structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b',1,'rapidjson::Writer::Level']]] ]; diff --git a/stack_8h_source.html b/stack_8h_source.html index a887e85c..ed284ab6 100644 --- a/stack_8h_source.html +++ b/stack_8h_source.html @@ -323,10 +323,10 @@ $(document).ready(function(){initNavTree('stack_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/stream_8h_source.html b/stream_8h_source.html index 30d64b52..2d32ca7f 100644 --- a/stream_8h_source.html +++ b/stream_8h_source.html @@ -319,7 +319,7 @@ $(document).ready(function(){initNavTree('stream_8h_source.html','');}); <div class="ttc" id="astructrapidjson_1_1_stream_traits_html"><div class="ttname"><a href="structrapidjson_1_1_stream_traits.html">rapidjson::StreamTraits</a></div><div class="ttdoc">Provides additional information for stream.</div><div class="ttdef"><b>Definition:</b> stream.h:73</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html">rapidjson::GenericStringStream</a></div><div class="ttdoc">Read-only string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:47</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_stream_wrapper_html"><div class="ttname"><a href="classrapidjson_1_1_generic_stream_wrapper.html">rapidjson::GenericStreamWrapper</a></div><div class="ttdoc">A Stream Wrapper.</div><div class="ttdef"><b>Definition:</b> stream.h:119</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="anamespacerapidjson_html_a0a774dcffe8ae07686f459ae017d2f20"><div class="ttname"><a href="namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20">rapidjson::PutUnsafe</a></div><div class="ttdeci">void PutUnsafe(Stream &stream, typename Stream::Ch c)</div><div class="ttdoc">Write character to a stream, presuming buffer is reserved.</div><div class="ttdef"><b>Definition:</b> stream.h:91</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eb"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb">rapidjson::UTFType</a></div><div class="ttdeci">UTFType</div><div class="ttdoc">Runtime-specified UTF encoding type of a stream.</div><div class="ttdef"><b>Definition:</b> encodings.h:603</div></div> <div class="ttc" id="anamespacerapidjson_html_a820f77efccfbb749bd15fe4822d2c740"><div class="ttname"><a href="namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740">rapidjson::PutReserve</a></div><div class="ttdeci">void PutReserve(Stream &stream, size_t count)</div><div class="ttdoc">Reserve n characters for writing to a stream.</div><div class="ttdef"><b>Definition:</b> stream.h:84</div></div> diff --git a/strfunc_8h_source.html b/strfunc_8h_source.html index a9107423..60a2bf2f 100644 --- a/strfunc_8h_source.html +++ b/strfunc_8h_source.html @@ -159,8 +159,8 @@ $(document).ready(function(){initNavTree('strfunc_8h_source.html','');}); <div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor">#endif // RAPIDJSON_INTERNAL_STRFUNC_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/strtod_8h_source.html b/strtod_8h_source.html index 48abda0c..a363af84 100644 --- a/strtod_8h_source.html +++ b/strtod_8h_source.html @@ -380,8 +380,8 @@ $(document).ready(function(){initNavTree('strtod_8h_source.html','');}); <div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor">#endif // RAPIDJSON_STRTOD_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/structrapidjson_1_1_generic_string_ref.html b/structrapidjson_1_1_generic_string_ref.html index 8368b185..c1bf9d2c 100644 --- a/structrapidjson_1_1_generic_string_ref.html +++ b/structrapidjson_1_1_generic_string_ref.html @@ -468,7 +468,7 @@ template<typename CharType > </div> </div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_aa6b9fd9f6aa49405a574c362ba9af6b5"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5">rapidjson::GenericStringRef::StringRef</a></div><div class="ttdeci">GenericStringRef< CharType > StringRef(const CharType *str)</div><div class="ttdoc">Mark a character pointer as constant string.</div><div class="ttdef"><b>Definition:</b> document.h:445</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/writer_8h_source.html b/writer_8h_source.html index 979056d0..8ea29a67 100644 --- a/writer_8h_source.html +++ b/writer_8h_source.html @@ -801,37 +801,37 @@ $(document).ready(function(){initNavTree('writer_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga1975595e2f1dc20a2d4859f340ac88c6"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6">RAPIDJSON_WRITE_DEFAULT_FLAGS</a></div><div class="ttdeci">#define RAPIDJSON_WRITE_DEFAULT_FLAGS</div><div class="ttdoc">User-defined kWriteDefaultFlags definition.</div><div class="ttdef"><b>Definition:</b> writer.h:62</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19">rapidjson::WriteFlag</a></div><div class="ttdeci">WriteFlag</div><div class="ttdoc">Combination of writeFlags.</div><div class="ttdef"><b>Definition:</b> writer.h:66</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a190d964d3e62155e87153e858a0b04da"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a190d964d3e62155e87153e858a0b04da">rapidjson::Writer::IsComplete</a></div><div class="ttdeci">bool IsComplete() const</div><div class="ttdoc">Checks whether the output is a complete JSON.</div><div class="ttdef"><b>Definition:</b> writer.h:144</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10">rapidjson::kWriteValidateEncodingFlag</a></div><div class="ttdoc">Validate encoding of JSON strings.</div><div class="ttdef"><b>Definition:</b> writer.h:68</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a">rapidjson::kWriteNoFlags</a></div><div class="ttdoc">No flags are set.</div><div class="ttdef"><b>Definition:</b> writer.h:67</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_aff66881798d01e932a0b8b8ef97b0373"><div class="ttname"><a href="classrapidjson_1_1_writer.html#aff66881798d01e932a0b8b8ef97b0373">rapidjson::Writer::Double</a></div><div class="ttdeci">bool Double(double d)</div><div class="ttdoc">Writes the given double value to the stream.</div><div class="ttdef"><b>Definition:</b> writer.h:194</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_aa7b6967dc237519e2a6d8b3939fb9634"><div class="ttname"><a href="classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634">rapidjson::Writer::SetMaxDecimalPlaces</a></div><div class="ttdeci">void SetMaxDecimalPlaces(int maxDecimalPlaces)</div><div class="ttdoc">Sets the maximum number of decimal places for double output.</div><div class="ttdef"><b>Definition:</b> writer.h:173</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="astructrapidjson_1_1_writer_1_1_level_html"><div class="ttname"><a href="structrapidjson_1_1_writer_1_1_level.html">rapidjson::Writer::Level</a></div><div class="ttdoc">Information for each nested level.</div><div class="ttdef"><b>Definition:</b> writer.h:290</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="astructrapidjson_1_1_writer_1_1_level_html_a5d17bdfa9ded5de72f5f91175cc3e36b"><div class="ttname"><a href="structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b">rapidjson::Writer::Level::valueCount</a></div><div class="ttdeci">size_t valueCount</div><div class="ttdoc">number of values in this level</div><div class="ttdef"><b>Definition:</b> writer.h:292</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> <div class="ttc" id="anamespacerapidjson_html_a0a774dcffe8ae07686f459ae017d2f20"><div class="ttname"><a href="namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20">rapidjson::PutUnsafe</a></div><div class="ttdeci">void PutUnsafe(Stream &stream, typename Stream::Ch c)</div><div class="ttdoc">Write character to a stream, presuming buffer is reserved.</div><div class="ttdef"><b>Definition:</b> stream.h:91</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226">rapidjson::kWriteDefaultFlags</a></div><div class="ttdoc">Default write flags. Can be customized by defining RAPIDJSON_WRITE_DEFAULT_FLAGS.</div><div class="ttdef"><b>Definition:</b> writer.h:70</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a98a421c806b456688874511f64add1f2"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2">rapidjson::Writer::Writer</a></div><div class="ttdeci">Writer(OutputStream &os, StackAllocator *stackAllocator=0, size_t levelDepth=kDefaultLevelDepth)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> writer.h:102</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer.</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a8acb89b2bbb1e5f384e6076b65044dbe"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe">rapidjson::Writer::RawValue</a></div><div class="ttdeci">bool RawValue(const Ch *json, size_t length, Type type)</div><div class="ttdoc">Write a raw JSON value.</div><div class="ttdef"><b>Definition:</b> writer.h:272</div></div> <div class="ttc" id="astructrapidjson_1_1_writer_1_1_level_html_a59255e3b1d371161f7c894503cfd6bec"><div class="ttname"><a href="structrapidjson_1_1_writer_1_1_level.html#a59255e3b1d371161f7c894503cfd6bec">rapidjson::Writer::Level::inArray</a></div><div class="ttdeci">bool inArray</div><div class="ttdoc">true if in array, otherwise in object</div><div class="ttdef"><b>Definition:</b> writer.h:293</div></div> <div class="ttc" id="anamespacerapidjson_html_a820f77efccfbb749bd15fe4822d2c740"><div class="ttname"><a href="namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740">rapidjson::PutReserve</a></div><div class="ttdeci">void PutReserve(Stream &stream, size_t count)</div><div class="ttdoc">Reserve n characters for writing to a stream.</div><div class="ttdef"><b>Definition:</b> stream.h:84</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a849e2b675a2b868699a14d45c7396f24"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24">rapidjson::Writer::String</a></div><div class="ttdeci">bool String(const Ch *const &str)</div><div class="ttdoc">Simpler but slower overload.</div><div class="ttdef"><b>Definition:</b> writer.h:259</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a72cefd18d176bc12a53adb3185c51ca7"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a72cefd18d176bc12a53adb3185c51ca7">rapidjson::Writer::Flush</a></div><div class="ttdeci">void Flush()</div><div class="ttdoc">Flush the output stream.</div><div class="ttdef"><b>Definition:</b> writer.h:282</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:494</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_ac4026d3f14b80d6d7fc10004b1972722"><div class="ttname"><a href="classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722">rapidjson::Writer::Reset</a></div><div class="ttdeci">void Reset(OutputStream &os)</div><div class="ttdoc">Reset the writer with a new stream.</div><div class="ttdef"><b>Definition:</b> writer.h:134</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39">rapidjson::kWriteNanAndInfFlag</a></div><div class="ttdoc">Allow writing of Infinity, -Infinity and NaN.</div><div class="ttdef"><b>Definition:</b> writer.h:69</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/allocators_8h_source.html b/zh-cn/allocators_8h_source.html index 083e3efa..2c19d429 100644 --- a/zh-cn/allocators_8h_source.html +++ b/zh-cn/allocators_8h_source.html @@ -106,697 +106,711 @@ $(document).ready(function(){initNavTree('allocators_8h_source.html','');}); <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#define RAPIDJSON_ALLOCATORS_H_</span></div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span>  </div> <div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#include "<a class="code" href="rapidjson_8h.html">rapidjson.h</a>"</span></div> -<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  </div> -<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <memory></span></div> -<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>  </div> -<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <type_traits></span></div> -<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  </div> -<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> RAPIDJSON_NAMESPACE_BEGIN</div> -<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment"></span> </div> -<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment"></span><span class="comment">// Allocator</span></div> -<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment"></span> </div> -<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment">/*! \class rapidjson::Allocator</span></div> -<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment"> \brief Concept for allocating, resizing and freeing memory block.</span></div> -<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment"> </span></div> -<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment"> Note that Malloc() and Realloc() are non-static but Free() is static.</span></div> -<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment"> </span></div> -<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment"> So if an allocator need to support Free(), it needs to put its pointer in </span></div> -<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment"> the header of memory block.</span></div> -<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment"></span> </div> -<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">\code</span></div> -<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">concept Allocator {</span></div> -<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment"> static const bool kNeedFree; //!< Whether this allocator needs to call Free().</span></div> -<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment"></span> </div> -<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment"> // Allocate a memory block.</span></div> -<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment"> // \param size of the memory block in bytes.</span></div> -<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment"> // \returns pointer to the memory block.</span></div> -<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> void* Malloc(size_t size);</span></div> -<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"></span> </div> -<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment"> // Resize a memory block.</span></div> -<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"> // \param originalPtr The pointer to current memory block. Null pointer is permitted.</span></div> -<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"> // \param originalSize The current size in bytes. (Design issue: since some allocator may not book-keep this, explicitly pass to it can save memory.)</span></div> -<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"> // \param newSize the new size in bytes.</span></div> -<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> void* Realloc(void* originalPtr, size_t originalSize, size_t newSize);</span></div> -<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"></span> </div> -<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment"> // Free a memory block.</span></div> -<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"> // \param pointer to the memory block. Null pointer is permitted.</span></div> -<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment"> static void Free(void *ptr);</span></div> -<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment">};</span></div> -<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">\endcode</span></div> -<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  </div> -<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment"></span> </div> -<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">/*! \def RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</span></div> -<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment"> \brief User-defined kDefaultChunkCapacity definition.</span></div> -<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment"></span> </div> -<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment"> User can define this as any \c size that is a power of 2.</span></div> -<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  </div> -<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor">#ifndef RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</span></div> -<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5"> 70</a></span> <span class="preprocessor">#define RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY (64 * 1024)</span></div> -<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  </div> -<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment"></span> </div> -<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment"></span><span class="comment">// CrtAllocator</span></div> -<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment"></span> </div> -<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="comment">//! C-runtime library allocator.</span></div> -<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment"></span><span class="comment">/*! This class is just wrapper for standard C library memory routines.</span></div> -<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment"> \note implements Allocator concept</span></div> -<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_crt_allocator.html"> 81</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a> {</div> -<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = <span class="keyword">true</span>;</div> -<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordtype">void</span>* Malloc(<span class="keywordtype">size_t</span> size) { </div> -<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordflow">if</span> (size) <span class="comment">// behavior of malloc(0) is implementation defined.</span></div> -<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keywordflow">return</span> <a class="code" href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27">RAPIDJSON_MALLOC</a>(size);</div> -<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keywordflow">return</span> NULL; <span class="comment">// standardize to returning NULL.</span></div> -<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  }</div> -<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordtype">void</span>* Realloc(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize) {</div> -<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  (void)originalSize;</div> -<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keywordflow">if</span> (newSize == 0) {</div> -<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <a class="code" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a>(originalPtr);</div> -<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  }</div> -<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="keywordflow">return</span> <a class="code" href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67">RAPIDJSON_REALLOC</a>(originalPtr, newSize);</div> -<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  }</div> -<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> Free(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT { <a class="code" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a>(ptr); }</div> -<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  </div> -<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a>&) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  }</div> -<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a>&) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  }</div> -<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> };</div> -<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="comment"></span> </div> -<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment"></span><span class="comment">// MemoryPoolAllocator</span></div> -<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="comment"></span> </div> -<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">//! Default memory allocator used by the parser and DOM.</span></div> -<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment"></span><span class="comment">/*! This allocator allocate memory blocks from pre-allocated memory chunks. </span></div> -<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment"></span> </div> -<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment"> It does not free memory blocks. And Realloc() only allocate new memory.</span></div> -<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment"></span> </div> -<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="comment"> The memory chunks are allocated by BaseAllocator, which is CrtAllocator by default.</span></div> -<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="comment"></span> </div> -<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment"> User may also supply a buffer as the first chunk.</span></div> -<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment"></span> </div> -<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment"> If the user-buffer is full then additional chunks are allocated by BaseAllocator.</span></div> -<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment"></span> </div> -<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment"> The user-buffer is not deallocated by this allocator.</span></div> -<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment"></span> </div> -<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment"> \tparam BaseAllocator the allocator type for allocating memory chunks. Default is CrtAllocator.</span></div> -<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment"> \note implements Allocator concept</span></div> -<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keyword">template</span> <<span class="keyword">typename</span> BaseAllocator = CrtAllocator></div> -<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html"> 128</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a> {<span class="comment"></span></div> -<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="comment"> //! Chunk header for perpending to each chunk.</span></div> -<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment"></span><span class="comment"> /*! Chunks are stored as a singly linked list.</span></div> -<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keyword">struct </span>ChunkHeader {</div> -<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordtype">size_t</span> capacity; <span class="comment">//!< Capacity of the chunk in bytes (excluding the header itself).</span></div> -<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="comment"></span> <span class="keywordtype">size_t</span> size; <span class="comment">//!< Current size of allocated memory in bytes.</span></div> -<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment"></span> ChunkHeader *next; <span class="comment">//!< Next chunk in the linked list.</span></div> -<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment"></span> };</div> -<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  </div> -<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="keyword">struct </span>SharedData {</div> -<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  ChunkHeader *chunkHead; <span class="comment">//!< Head of the chunk linked-list. Only the head chunk serves allocation.</span></div> -<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="comment"></span> BaseAllocator* ownBaseAllocator; <span class="comment">//!< base allocator created by this object.</span></div> -<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="comment"></span> <span class="keywordtype">size_t</span> refcount;</div> -<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <span class="keywordtype">bool</span> ownBuffer;</div> -<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  };</div> -<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  </div> -<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> SIZEOF_SHARED_DATA = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(SharedData));</div> -<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> SIZEOF_CHUNK_HEADER = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(ChunkHeader));</div> -<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  </div> -<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keyword">static</span> <span class="keyword">inline</span> ChunkHeader *GetChunkHead(SharedData *shared)</div> -<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  {</div> -<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="keywordflow">return</span> reinterpret_cast<ChunkHeader*>(reinterpret_cast<uint8_t*>(shared) + SIZEOF_SHARED_DATA);</div> -<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  }</div> -<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keyword">static</span> <span class="keyword">inline</span> uint8_t *GetChunkBuffer(SharedData *shared)</div> -<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  {</div> -<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="keywordflow">return</span> reinterpret_cast<uint8_t*>(shared->chunkHead) + SIZEOF_CHUNK_HEADER;</div> -<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  }</div> -<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  </div> -<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> kDefaultChunkCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5">RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</a>; <span class="comment">//!< Default chunk capacity.</span></div> -<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="comment"></span> </div> -<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29"> 160</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = <span class="keyword">false</span>; <span class="comment">//!< Tell users that no need to call Free() with this allocator. (concept Allocator)</span></div> -<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="comment"> //! Constructor with chunkSize.</span></div> -<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="comment"></span><span class="comment"> /*! \param chunkSize The size of memory chunk. The default is kDefaultChunkSize.</span></div> -<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment"> \param baseAllocator The allocator for allocating memory chunks.</span></div> -<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keyword">explicit</span></div> -<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4"> 167</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">MemoryPoolAllocator</a>(<span class="keywordtype">size_t</span> chunkSize = kDefaultChunkCapacity, BaseAllocator* baseAllocator = 0) : </div> -<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  chunk_capacity_(chunkSize),</div> -<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  baseAllocator_(baseAllocator ? baseAllocator : <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(BaseAllocator)()),</div> -<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  shared_(static_cast<SharedData*>(baseAllocator_ ? baseAllocator_->Malloc(SIZEOF_SHARED_DATA + SIZEOF_CHUNK_HEADER) : 0))</div> -<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  {</div> -<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(baseAllocator_ != 0);</div> -<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(shared_ != 0);</div> -<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <span class="keywordflow">if</span> (baseAllocator) {</div> -<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  shared_->ownBaseAllocator = 0;</div> -<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  }</div> -<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  <span class="keywordflow">else</span> {</div> -<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  shared_->ownBaseAllocator = baseAllocator_;</div> -<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  }</div> -<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  shared_->chunkHead = GetChunkHead(shared_);</div> -<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  shared_->chunkHead->capacity = 0;</div> -<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  shared_->chunkHead->size = 0;</div> -<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  shared_->chunkHead->next = 0;</div> -<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  shared_->ownBuffer = <span class="keyword">true</span>;</div> -<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  shared_->refcount = 1;</div> -<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  }</div> -<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment"></span> </div> -<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment"> //! Constructor with user-supplied buffer.</span></div> -<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"></span><span class="comment"> /*! The user buffer will be used firstly. When it is full, memory pool allocates new chunk with chunk size.</span></div> -<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment"></span> </div> -<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment"> The user buffer will not be deallocated when this allocator is destructed.</span></div> +<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include "internal/meta.h"</span></div> +<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>  </div> +<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <memory></span></div> +<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  </div> +<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <type_traits></span></div> +<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  </div> +<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> RAPIDJSON_NAMESPACE_BEGIN</div> +<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment"></span> </div> +<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment"></span><span class="comment">// Allocator</span></div> +<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment"></span> </div> +<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment">/*! \class rapidjson::Allocator</span></div> +<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment"> \brief Concept for allocating, resizing and freeing memory block.</span></div> +<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment"> </span></div> +<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment"> Note that Malloc() and Realloc() are non-static but Free() is static.</span></div> +<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment"> </span></div> +<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment"> So if an allocator need to support Free(), it needs to put its pointer in </span></div> +<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment"> the header of memory block.</span></div> +<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment"></span> </div> +<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">\code</span></div> +<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">concept Allocator {</span></div> +<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment"> static const bool kNeedFree; //!< Whether this allocator needs to call Free().</span></div> +<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment"></span> </div> +<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment"> // Allocate a memory block.</span></div> +<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment"> // \param size of the memory block in bytes.</span></div> +<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> // \returns pointer to the memory block.</span></div> +<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"> void* Malloc(size_t size);</span></div> +<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment"></span> </div> +<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"> // Resize a memory block.</span></div> +<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"> // \param originalPtr The pointer to current memory block. Null pointer is permitted.</span></div> +<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"> // \param originalSize The current size in bytes. (Design issue: since some allocator may not book-keep this, explicitly pass to it can save memory.)</span></div> +<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> // \param newSize the new size in bytes.</span></div> +<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"> void* Realloc(void* originalPtr, size_t originalSize, size_t newSize);</span></div> +<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment"></span> </div> +<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"> // Free a memory block.</span></div> +<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment"> // \param pointer to the memory block. Null pointer is permitted.</span></div> +<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment"> static void Free(void *ptr);</span></div> +<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">};</span></div> +<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">\endcode</span></div> +<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  </div> +<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment"></span> </div> +<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment">/*! \def RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</span></div> +<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment"> \brief User-defined kDefaultChunkCapacity definition.</span></div> +<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment"></span> </div> +<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment"> User can define this as any \c size that is a power of 2.</span></div> +<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  </div> +<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor">#ifndef RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</span></div> +<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5"> 71</a></span> <span class="preprocessor">#define RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY (64 * 1024)</span></div> +<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  </div> +<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment"></span> </div> +<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment"></span><span class="comment">// CrtAllocator</span></div> +<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="comment"></span> </div> +<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">//! C-runtime library allocator.</span></div> +<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment"></span><span class="comment">/*! This class is just wrapper for standard C library memory routines.</span></div> +<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment"> \note implements Allocator concept</span></div> +<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_crt_allocator.html"> 82</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a> {</div> +<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = <span class="keyword">true</span>;</div> +<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordtype">void</span>* Malloc(<span class="keywordtype">size_t</span> size) { </div> +<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keywordflow">if</span> (size) <span class="comment">// behavior of malloc(0) is implementation defined.</span></div> +<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordflow">return</span> <a class="code" href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27">RAPIDJSON_MALLOC</a>(size);</div> +<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">return</span> NULL; <span class="comment">// standardize to returning NULL.</span></div> +<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  }</div> +<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keywordtype">void</span>* Realloc(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize) {</div> +<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  (void)originalSize;</div> +<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">if</span> (newSize == 0) {</div> +<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <a class="code" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a>(originalPtr);</div> +<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  }</div> +<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordflow">return</span> <a class="code" href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67">RAPIDJSON_REALLOC</a>(originalPtr, newSize);</div> +<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  }</div> +<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> Free(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT { <a class="code" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a>(ptr); }</div> +<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  </div> +<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a>&) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  }</div> +<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_crt_allocator.html">CrtAllocator</a>&) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  }</div> +<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> };</div> +<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment"></span> </div> +<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="comment"></span><span class="comment">// MemoryPoolAllocator</span></div> +<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment"></span> </div> +<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment">//! Default memory allocator used by the parser and DOM.</span></div> +<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment"></span><span class="comment">/*! This allocator allocate memory blocks from pre-allocated memory chunks. </span></div> +<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment"></span> </div> +<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment"> It does not free memory blocks. And Realloc() only allocate new memory.</span></div> +<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="comment"></span> </div> +<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="comment"> The memory chunks are allocated by BaseAllocator, which is CrtAllocator by default.</span></div> +<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment"></span> </div> +<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment"> User may also supply a buffer as the first chunk.</span></div> +<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment"></span> </div> +<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment"> If the user-buffer is full then additional chunks are allocated by BaseAllocator.</span></div> +<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment"></span> </div> +<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment"> The user-buffer is not deallocated by this allocator.</span></div> +<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment"></span> </div> +<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment"> \tparam BaseAllocator the allocator type for allocating memory chunks. Default is CrtAllocator.</span></div> +<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="comment"> \note implements Allocator concept</span></div> +<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keyword">template</span> <<span class="keyword">typename</span> BaseAllocator = CrtAllocator></div> +<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html"> 129</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a> {<span class="comment"></span></div> +<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment"> //! Chunk header for perpending to each chunk.</span></div> +<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="comment"></span><span class="comment"> /*! Chunks are stored as a singly linked list.</span></div> +<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keyword">struct </span>ChunkHeader {</div> +<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="keywordtype">size_t</span> capacity; <span class="comment">//!< Capacity of the chunk in bytes (excluding the header itself).</span></div> +<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment"></span> <span class="keywordtype">size_t</span> size; <span class="comment">//!< Current size of allocated memory in bytes.</span></div> +<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment"></span> ChunkHeader *next; <span class="comment">//!< Next chunk in the linked list.</span></div> +<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="comment"></span> };</div> +<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  </div> +<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keyword">struct </span>SharedData {</div> +<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  ChunkHeader *chunkHead; <span class="comment">//!< Head of the chunk linked-list. Only the head chunk serves allocation.</span></div> +<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="comment"></span> BaseAllocator* ownBaseAllocator; <span class="comment">//!< base allocator created by this object.</span></div> +<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="comment"></span> <span class="keywordtype">size_t</span> refcount;</div> +<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keywordtype">bool</span> ownBuffer;</div> +<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  };</div> +<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  </div> +<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> SIZEOF_SHARED_DATA = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(SharedData));</div> +<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> SIZEOF_CHUNK_HEADER = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(ChunkHeader));</div> +<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  </div> +<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keyword">static</span> <span class="keyword">inline</span> ChunkHeader *GetChunkHead(SharedData *shared)</div> +<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  {</div> +<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  <span class="keywordflow">return</span> reinterpret_cast<ChunkHeader*>(reinterpret_cast<uint8_t*>(shared) + SIZEOF_SHARED_DATA);</div> +<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  }</div> +<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keyword">static</span> <span class="keyword">inline</span> uint8_t *GetChunkBuffer(SharedData *shared)</div> +<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  {</div> +<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordflow">return</span> reinterpret_cast<uint8_t*>(shared->chunkHead) + SIZEOF_CHUNK_HEADER;</div> +<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  }</div> +<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  </div> +<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> kDefaultChunkCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5">RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</a>; <span class="comment">//!< Default chunk capacity.</span></div> +<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="comment"></span> </div> +<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29"> 161</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = <span class="keyword">false</span>; <span class="comment">//!< Tell users that no need to call Free() with this allocator. (concept Allocator)</span></div> +<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496"> 162</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kRefCounted = <span class="keyword">true</span>; <span class="comment">//!< Tell users that this allocator is reference counted on copy</span></div> +<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment"> //! Constructor with chunkSize.</span></div> +<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment"></span><span class="comment"> /*! \param chunkSize The size of memory chunk. The default is kDefaultChunkSize.</span></div> +<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment"> \param baseAllocator The allocator for allocating memory chunks.</span></div> +<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <span class="keyword">explicit</span></div> +<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4"> 169</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">MemoryPoolAllocator</a>(<span class="keywordtype">size_t</span> chunkSize = kDefaultChunkCapacity, BaseAllocator* baseAllocator = 0) : </div> +<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  chunk_capacity_(chunkSize),</div> +<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  baseAllocator_(baseAllocator ? baseAllocator : <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(BaseAllocator)()),</div> +<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  shared_(static_cast<SharedData*>(baseAllocator_ ? baseAllocator_->Malloc(SIZEOF_SHARED_DATA + SIZEOF_CHUNK_HEADER) : 0))</div> +<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  {</div> +<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(baseAllocator_ != 0);</div> +<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(shared_ != 0);</div> +<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  <span class="keywordflow">if</span> (baseAllocator) {</div> +<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  shared_->ownBaseAllocator = 0;</div> +<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  }</div> +<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  shared_->ownBaseAllocator = baseAllocator_;</div> +<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  }</div> +<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  shared_->chunkHead = GetChunkHead(shared_);</div> +<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  shared_->chunkHead->capacity = 0;</div> +<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  shared_->chunkHead->size = 0;</div> +<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  shared_->chunkHead->next = 0;</div> +<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  shared_->ownBuffer = <span class="keyword">true</span>;</div> +<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  shared_->refcount = 1;</div> +<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  }</div> +<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"></span> </div> +<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment"> //! Constructor with user-supplied buffer.</span></div> +<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment"></span><span class="comment"> /*! The user buffer will be used firstly. When it is full, memory pool allocates new chunk with chunk size.</span></div> <div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment"></span> </div> -<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"> \param buffer User supplied buffer.</span></div> -<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment"> \param size Size of the buffer in bytes. It must at least larger than sizeof(ChunkHeader).</span></div> -<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment"> \param chunkSize The size of memory chunk. The default is kDefaultChunkSize.</span></div> -<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment"> \param baseAllocator The allocator for allocating memory chunks.</span></div> -<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7"> 198</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">MemoryPoolAllocator</a>(<span class="keywordtype">void</span> *buffer, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> chunkSize = kDefaultChunkCapacity, BaseAllocator* baseAllocator = 0) :</div> -<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  chunk_capacity_(chunkSize),</div> -<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  baseAllocator_(baseAllocator),</div> -<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  shared_(static_cast<SharedData*>(AlignBuffer(buffer, size)))</div> -<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  {</div> -<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(size >= SIZEOF_SHARED_DATA + SIZEOF_CHUNK_HEADER);</div> -<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  shared_->chunkHead = GetChunkHead(shared_);</div> -<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  shared_->chunkHead->capacity = size - SIZEOF_SHARED_DATA - SIZEOF_CHUNK_HEADER;</div> -<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  shared_->chunkHead->size = 0;</div> -<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  shared_->chunkHead->next = 0;</div> -<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  shared_->ownBaseAllocator = 0;</div> -<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  shared_->ownBuffer = <span class="keyword">false</span>;</div> -<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  shared_->refcount = 1;</div> -<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  }</div> -<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  </div> -<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  chunk_capacity_(rhs.chunk_capacity_),</div> -<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  baseAllocator_(rhs.baseAllocator_),</div> -<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  shared_(rhs.shared_)</div> -<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  {</div> -<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  ++shared_->refcount;</div> -<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  }</div> -<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  MemoryPoolAllocator& operator=(<span class="keyword">const</span> MemoryPoolAllocator& rhs) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  {</div> -<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> -<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  ++rhs.shared_->refcount;</div> -<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  this->~MemoryPoolAllocator();</div> -<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  baseAllocator_ = rhs.baseAllocator_;</div> -<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  chunk_capacity_ = rhs.chunk_capacity_;</div> -<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  shared_ = rhs.shared_;</div> -<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  }</div> -<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  </div> -<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  MemoryPoolAllocator(MemoryPoolAllocator&& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  chunk_capacity_(rhs.chunk_capacity_),</div> -<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  baseAllocator_(rhs.baseAllocator_),</div> -<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  shared_(rhs.shared_)</div> -<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  {</div> -<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> -<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  rhs.shared_ = 0;</div> -<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  }</div> -<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  MemoryPoolAllocator& operator=(MemoryPoolAllocator&& rhs) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  {</div> -<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> -<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  this->~MemoryPoolAllocator();</div> -<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  baseAllocator_ = rhs.baseAllocator_;</div> -<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  chunk_capacity_ = rhs.chunk_capacity_;</div> -<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  shared_ = rhs.shared_;</div> -<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  rhs.shared_ = 0;</div> -<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  }</div> -<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="comment"></span> </div> -<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="comment"> //! Destructor.</span></div> -<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="comment"></span><span class="comment"> /*! This deallocates all memory chunks, excluding the user-supplied buffer.</span></div> -<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700"> 256</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">~MemoryPoolAllocator</a>() RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  <span class="keywordflow">if</span> (!shared_) {</div> -<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  <span class="comment">// do nothing if moved</span></div> -<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  <span class="keywordflow">return</span>;</div> -<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  }</div> -<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">if</span> (shared_->refcount > 1) {</div> -<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  --shared_->refcount;</div> -<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <span class="keywordflow">return</span>;</div> -<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  }</div> -<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  Clear();</div> -<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  BaseAllocator *a = shared_->ownBaseAllocator;</div> -<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <span class="keywordflow">if</span> (shared_->ownBuffer) {</div> -<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  baseAllocator_->Free(shared_);</div> -<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  }</div> -<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  <a class="code" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a>(a);</div> -<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  }</div> -<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="comment"></span> </div> -<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="comment"> //! Deallocates all memory chunks, excluding the first/user one.</span></div> -<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840"> 274</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">Clear</a>() RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <span class="keywordflow">for</span> (;;) {</div> -<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  ChunkHeader* c = shared_->chunkHead;</div> -<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keywordflow">if</span> (!c->next) {</div> -<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  }</div> -<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  shared_->chunkHead = c->next;</div> -<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  baseAllocator_->Free(c);</div> -<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  }</div> -<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  shared_->chunkHead->size = 0;</div> -<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  }</div> -<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment"></span> </div> -<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="comment"> //! Computes the total capacity of allocated memory chunks.</span></div> -<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment"></span><span class="comment"> /*! \return total capacity in bytes.</span></div> -<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00290"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd"> 290</a></span>  <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd">Capacity</a>() const RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  <span class="keywordtype">size_t</span> capacity = 0;</div> -<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <span class="keywordflow">for</span> (ChunkHeader* c = shared_->chunkHead; c != 0; c = c->next)</div> -<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  capacity += c->capacity;</div> -<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">return</span> capacity;</div> -<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  }</div> -<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="comment"></span> </div> -<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment"> //! Computes the memory blocks allocated.</span></div> -<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment"></span><span class="comment"> /*! \return total used bytes.</span></div> -<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265"> 301</a></span>  <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">Size</a>() const RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  <span class="keywordtype">size_t</span> size = 0;</div> -<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <span class="keywordflow">for</span> (ChunkHeader* c = shared_->chunkHead; c != 0; c = c->next)</div> -<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  size += c->size;</div> -<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  <span class="keywordflow">return</span> size;</div> -<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  }</div> -<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="comment"></span> </div> -<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment"> //! Whether the allocator is shared.</span></div> -<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment"></span><span class="comment"> /*! \return true or false.</span></div> -<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc"> 312</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">Shared</a>() const RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  <span class="keywordflow">return</span> shared_->refcount > 1;</div> -<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  }</div> -<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="comment"></span> </div> -<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment"> //! Allocates a memory block. (concept Allocator)</span></div> -<div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344"> 318</a></span> <span class="comment"></span> <span class="keywordtype">void</span>* <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">Malloc</a>(<span class="keywordtype">size_t</span> size) {</div> -<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  <span class="keywordflow">if</span> (!size)</div> -<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  </div> -<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  size = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(size);</div> -<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(shared_->chunkHead->size + size > shared_->chunkHead->capacity))</div> -<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  <span class="keywordflow">if</span> (!AddChunk(chunk_capacity_ > size ? chunk_capacity_ : size))</div> -<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  </div> -<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  <span class="keywordtype">void</span> *buffer = GetChunkBuffer(shared_) + shared_->chunkHead->size;</div> -<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>  shared_->chunkHead->size += size;</div> -<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  <span class="keywordflow">return</span> buffer;</div> -<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  }</div> -<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment"></span> </div> -<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="comment"> //! Resizes a memory block (concept Allocator)</span></div> -<div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d"> 334</a></span> <span class="comment"></span> <span class="keywordtype">void</span>* <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">Realloc</a>(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize) {</div> -<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  <span class="keywordflow">if</span> (originalPtr == 0)</div> -<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  <span class="keywordflow">return</span> Malloc(newSize);</div> -<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  </div> -<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  <span class="keywordflow">if</span> (newSize == 0)</div> -<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  </div> -<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  originalSize = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(originalSize);</div> -<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  newSize = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(newSize);</div> -<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  </div> -<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  <span class="comment">// Do not shrink if new size is smaller than original</span></div> -<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  <span class="keywordflow">if</span> (originalSize >= newSize)</div> -<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="keywordflow">return</span> originalPtr;</div> -<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  </div> -<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <span class="comment">// Simply expand it if it is the last allocation and there is sufficient space</span></div> -<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  <span class="keywordflow">if</span> (originalPtr == GetChunkBuffer(shared_) + shared_->chunkHead->size - originalSize) {</div> -<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <span class="keywordtype">size_t</span> increment = static_cast<size_t>(newSize - originalSize);</div> -<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  <span class="keywordflow">if</span> (shared_->chunkHead->size + increment <= shared_->chunkHead->capacity) {</div> -<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  shared_->chunkHead->size += increment;</div> -<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <span class="keywordflow">return</span> originalPtr;</div> -<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  }</div> -<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  }</div> -<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  </div> -<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  <span class="comment">// Realloc process: allocate and copy memory, do not free original buffer.</span></div> -<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keywordflow">if</span> (<span class="keywordtype">void</span>* newBuffer = Malloc(newSize)) {</div> -<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  <span class="keywordflow">if</span> (originalSize)</div> -<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  std::memcpy(newBuffer, originalPtr, originalSize);</div> -<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordflow">return</span> newBuffer;</div> -<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  }</div> -<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  <span class="keywordflow">return</span> NULL;</div> -<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  }</div> -<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="comment"></span> </div> -<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="comment"> //! Frees a memory block (concept Allocator)</span></div> -<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec"> 369</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">Free</a>(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT { (void)ptr; } <span class="comment">// Do nothing</span></div> -<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"></span> </div> -<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="comment"> //! Compare (equality) with another MemoryPoolAllocator</span></div> -<div class="line"><a name="l00372"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724"> 372</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">operator==</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> -<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> -<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <span class="keywordflow">return</span> shared_ == rhs.shared_;</div> -<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  }<span class="comment"></span></div> -<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="comment"> //! Compare (inequality) with another MemoryPoolAllocator</span></div> -<div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99"> 378</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  <span class="keywordflow">return</span> !operator==(rhs);</div> -<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  }</div> -<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  </div> -<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="keyword">private</span>:<span class="comment"></span></div> -<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="comment"> //! Creates a new chunk.</span></div> -<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="comment"></span><span class="comment"> /*! \param capacity Capacity of the chunk in bytes.</span></div> -<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment"> \return true if success.</span></div> -<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <span class="keywordtype">bool</span> AddChunk(<span class="keywordtype">size_t</span> capacity) {</div> -<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>  <span class="keywordflow">if</span> (!baseAllocator_)</div> -<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  shared_->ownBaseAllocator = baseAllocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(BaseAllocator)();</div> -<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  <span class="keywordflow">if</span> (ChunkHeader* chunk = static_cast<ChunkHeader*>(baseAllocator_->Malloc(SIZEOF_CHUNK_HEADER + capacity))) {</div> -<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  chunk->capacity = capacity;</div> -<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  chunk->size = 0;</div> -<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  chunk->next = shared_->chunkHead;</div> -<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  shared_->chunkHead = chunk;</div> -<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  }</div> -<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  }</div> -<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  </div> -<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>* AlignBuffer(<span class="keywordtype">void</span>* buf, <span class="keywordtype">size_t</span> &size)</div> -<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  {</div> -<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(buf != 0);</div> -<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  <span class="keyword">const</span> uintptr_t mask = <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) - 1;</div> -<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <span class="keyword">const</span> uintptr_t ubuf = reinterpret_cast<uintptr_t>(buf);</div> -<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(ubuf & mask)) {</div> -<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  <span class="keyword">const</span> uintptr_t abuf = (ubuf + mask) & ~mask;</div> -<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(size >= abuf - ubuf);</div> -<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  buf = reinterpret_cast<void*>(abuf);</div> -<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  size -= abuf - ubuf;</div> -<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  }</div> -<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  <span class="keywordflow">return</span> buf;</div> -<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  }</div> -<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  </div> -<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <span class="keywordtype">size_t</span> chunk_capacity_; <span class="comment">//!< The minimum capacity of chunk when they are allocated.</span></div> -<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="comment"></span> BaseAllocator* baseAllocator_; <span class="comment">//!< base allocator for allocating memory chunks.</span></div> -<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="comment"></span> SharedData *shared_; <span class="comment">//!< The shared data of the allocator</span></div> -<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="comment"></span>};</div> -<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  </div> -<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  </div> -<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> -<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="keyword">inline</span> T* Realloc(A& a, T* old_p, <span class="keywordtype">size_t</span> old_n, <span class="keywordtype">size_t</span> new_n)</div> -<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> {</div> -<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(old_n <= SIZE_MAX / <span class="keyword">sizeof</span>(T) && new_n <= SIZE_MAX / <span class="keyword">sizeof</span>(T));</div> -<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <span class="keywordflow">return</span> static_cast<T*>(a.Realloc(old_p, old_n * <span class="keyword">sizeof</span>(T), new_n * <span class="keyword">sizeof</span>(T)));</div> -<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> }</div> -<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  </div> -<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> -<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="keyword">inline</span> T *Malloc(A& a, <span class="keywordtype">size_t</span> n = 1)</div> -<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> {</div> -<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  <span class="keywordflow">return</span> Realloc<T, A>(a, NULL, 0, n);</div> -<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> }</div> -<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  </div> -<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> -<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> Free(A& a, T *p, <span class="keywordtype">size_t</span> n = 1)</div> -<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> {</div> -<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  static_cast<void>(Realloc<T, A>(a, p, n, 0));</div> +<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"> The user buffer will not be deallocated when this allocator is destructed.</span></div> +<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment"></span> </div> +<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment"> \param buffer User supplied buffer.</span></div> +<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment"> \param size Size of the buffer in bytes. It must at least larger than sizeof(ChunkHeader).</span></div> +<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment"> \param chunkSize The size of memory chunk. The default is kDefaultChunkSize.</span></div> +<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="comment"> \param baseAllocator The allocator for allocating memory chunks.</span></div> +<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7"> 200</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">MemoryPoolAllocator</a>(<span class="keywordtype">void</span> *buffer, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> chunkSize = kDefaultChunkCapacity, BaseAllocator* baseAllocator = 0) :</div> +<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  chunk_capacity_(chunkSize),</div> +<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  baseAllocator_(baseAllocator),</div> +<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  shared_(static_cast<SharedData*>(AlignBuffer(buffer, size)))</div> +<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  {</div> +<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(size >= SIZEOF_SHARED_DATA + SIZEOF_CHUNK_HEADER);</div> +<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  shared_->chunkHead = GetChunkHead(shared_);</div> +<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  shared_->chunkHead->capacity = size - SIZEOF_SHARED_DATA - SIZEOF_CHUNK_HEADER;</div> +<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  shared_->chunkHead->size = 0;</div> +<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  shared_->chunkHead->next = 0;</div> +<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  shared_->ownBaseAllocator = 0;</div> +<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  shared_->ownBuffer = <span class="keyword">false</span>;</div> +<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  shared_->refcount = 1;</div> +<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  }</div> +<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  </div> +<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  chunk_capacity_(rhs.chunk_capacity_),</div> +<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  baseAllocator_(rhs.baseAllocator_),</div> +<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  shared_(rhs.shared_)</div> +<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  {</div> +<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  ++shared_->refcount;</div> +<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  }</div> +<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  MemoryPoolAllocator& operator=(<span class="keyword">const</span> MemoryPoolAllocator& rhs) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  {</div> +<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> +<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  ++rhs.shared_->refcount;</div> +<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  this->~MemoryPoolAllocator();</div> +<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  baseAllocator_ = rhs.baseAllocator_;</div> +<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  chunk_capacity_ = rhs.chunk_capacity_;</div> +<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  shared_ = rhs.shared_;</div> +<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  }</div> +<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  </div> +<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  MemoryPoolAllocator(MemoryPoolAllocator&& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  chunk_capacity_(rhs.chunk_capacity_),</div> +<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  baseAllocator_(rhs.baseAllocator_),</div> +<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  shared_(rhs.shared_)</div> +<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  {</div> +<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> +<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  rhs.shared_ = 0;</div> +<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  }</div> +<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  MemoryPoolAllocator& operator=(MemoryPoolAllocator&& rhs) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  {</div> +<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> +<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  this->~MemoryPoolAllocator();</div> +<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  baseAllocator_ = rhs.baseAllocator_;</div> +<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  chunk_capacity_ = rhs.chunk_capacity_;</div> +<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  shared_ = rhs.shared_;</div> +<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  rhs.shared_ = 0;</div> +<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  }</div> +<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="comment"></span> </div> +<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="comment"> //! Destructor.</span></div> +<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="comment"></span><span class="comment"> /*! This deallocates all memory chunks, excluding the user-supplied buffer.</span></div> +<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700"> 258</a></span>  <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">~MemoryPoolAllocator</a>() RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  <span class="keywordflow">if</span> (!shared_) {</div> +<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  <span class="comment">// do nothing if moved</span></div> +<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">return</span>;</div> +<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  }</div> +<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <span class="keywordflow">if</span> (shared_->refcount > 1) {</div> +<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  --shared_->refcount;</div> +<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <span class="keywordflow">return</span>;</div> +<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  }</div> +<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  Clear();</div> +<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  BaseAllocator *a = shared_->ownBaseAllocator;</div> +<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  <span class="keywordflow">if</span> (shared_->ownBuffer) {</div> +<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  baseAllocator_->Free(shared_);</div> +<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  }</div> +<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  <a class="code" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a>(a);</div> +<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  }</div> +<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="comment"></span> </div> +<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="comment"> //! Deallocates all memory chunks, excluding the first/user one.</span></div> +<div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840"> 276</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">Clear</a>() RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keywordflow">for</span> (;;) {</div> +<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  ChunkHeader* c = shared_->chunkHead;</div> +<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  <span class="keywordflow">if</span> (!c->next) {</div> +<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  }</div> +<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  shared_->chunkHead = c->next;</div> +<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  baseAllocator_->Free(c);</div> +<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  }</div> +<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  shared_->chunkHead->size = 0;</div> +<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  }</div> +<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment"></span> </div> +<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="comment"> //! Computes the total capacity of allocated memory chunks.</span></div> +<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="comment"></span><span class="comment"> /*! \return total capacity in bytes.</span></div> +<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd"> 292</a></span>  <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd">Capacity</a>() const RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <span class="keywordtype">size_t</span> capacity = 0;</div> +<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">for</span> (ChunkHeader* c = shared_->chunkHead; c != 0; c = c->next)</div> +<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  capacity += c->capacity;</div> +<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  <span class="keywordflow">return</span> capacity;</div> +<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  }</div> +<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment"></span> </div> +<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment"> //! Computes the memory blocks allocated.</span></div> +<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="comment"></span><span class="comment"> /*! \return total used bytes.</span></div> +<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265"> 303</a></span>  <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">Size</a>() const RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="keywordtype">size_t</span> size = 0;</div> +<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  <span class="keywordflow">for</span> (ChunkHeader* c = shared_->chunkHead; c != 0; c = c->next)</div> +<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  size += c->size;</div> +<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  <span class="keywordflow">return</span> size;</div> +<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  }</div> +<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment"></span> </div> +<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment"> //! Whether the allocator is shared.</span></div> +<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment"></span><span class="comment"> /*! \return true or false.</span></div> +<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc"> 314</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">Shared</a>() const RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  <span class="keywordflow">return</span> shared_->refcount > 1;</div> +<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  }</div> +<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="comment"></span> </div> +<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="comment"> //! Allocates a memory block. (concept Allocator)</span></div> +<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344"> 320</a></span> <span class="comment"></span> <span class="keywordtype">void</span>* <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">Malloc</a>(<span class="keywordtype">size_t</span> size) {</div> +<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <span class="keywordflow">if</span> (!size)</div> +<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  </div> +<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  size = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(size);</div> +<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(shared_->chunkHead->size + size > shared_->chunkHead->capacity))</div> +<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  <span class="keywordflow">if</span> (!AddChunk(chunk_capacity_ > size ? chunk_capacity_ : size))</div> +<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>  </div> +<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  <span class="keywordtype">void</span> *buffer = GetChunkBuffer(shared_) + shared_->chunkHead->size;</div> +<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  shared_->chunkHead->size += size;</div> +<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  <span class="keywordflow">return</span> buffer;</div> +<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  }</div> +<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="comment"></span> </div> +<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="comment"> //! Resizes a memory block (concept Allocator)</span></div> +<div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d"> 336</a></span> <span class="comment"></span> <span class="keywordtype">void</span>* <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">Realloc</a>(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize) {</div> +<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  <span class="keywordflow">if</span> (originalPtr == 0)</div> +<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  <span class="keywordflow">return</span> Malloc(newSize);</div> +<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  </div> +<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  <span class="keywordflow">if</span> (newSize == 0)</div> +<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  </div> +<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  originalSize = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(originalSize);</div> +<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  newSize = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(newSize);</div> +<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  </div> +<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="comment">// Do not shrink if new size is smaller than original</span></div> +<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  <span class="keywordflow">if</span> (originalSize >= newSize)</div> +<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <span class="keywordflow">return</span> originalPtr;</div> +<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  </div> +<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <span class="comment">// Simply expand it if it is the last allocation and there is sufficient space</span></div> +<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  <span class="keywordflow">if</span> (originalPtr == GetChunkBuffer(shared_) + shared_->chunkHead->size - originalSize) {</div> +<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  <span class="keywordtype">size_t</span> increment = static_cast<size_t>(newSize - originalSize);</div> +<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <span class="keywordflow">if</span> (shared_->chunkHead->size + increment <= shared_->chunkHead->capacity) {</div> +<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  shared_->chunkHead->size += increment;</div> +<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <span class="keywordflow">return</span> originalPtr;</div> +<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  }</div> +<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  }</div> +<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  </div> +<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  <span class="comment">// Realloc process: allocate and copy memory, do not free original buffer.</span></div> +<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <span class="keywordflow">if</span> (<span class="keywordtype">void</span>* newBuffer = Malloc(newSize)) {</div> +<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordflow">if</span> (originalSize)</div> +<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  std::memcpy(newBuffer, originalPtr, originalSize);</div> +<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <span class="keywordflow">return</span> newBuffer;</div> +<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  }</div> +<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  <span class="keywordflow">return</span> NULL;</div> +<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  }</div> +<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="comment"></span> </div> +<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"> //! Frees a memory block (concept Allocator)</span></div> +<div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec"> 371</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">Free</a>(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT { (void)ptr; } <span class="comment">// Do nothing</span></div> +<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="comment"></span> </div> +<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="comment"> //! Compare (equality) with another MemoryPoolAllocator</span></div> +<div class="line"><a name="l00374"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724"> 374</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">operator==</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(shared_->refcount > 0);</div> +<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(rhs.shared_->refcount > 0);</div> +<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  <span class="keywordflow">return</span> shared_ == rhs.shared_;</div> +<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  }<span class="comment"></span></div> +<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="comment"> //! Compare (inequality) with another MemoryPoolAllocator</span></div> +<div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99"> 380</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_memory_pool_allocator.html">MemoryPoolAllocator</a>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  <span class="keywordflow">return</span> !operator==(rhs);</div> +<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  }</div> +<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  </div> +<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="keyword">private</span>:<span class="comment"></span></div> +<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment"> //! Creates a new chunk.</span></div> +<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"></span><span class="comment"> /*! \param capacity Capacity of the chunk in bytes.</span></div> +<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment"> \return true if success.</span></div> +<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  <span class="keywordtype">bool</span> AddChunk(<span class="keywordtype">size_t</span> capacity) {</div> +<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  <span class="keywordflow">if</span> (!baseAllocator_)</div> +<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  shared_->ownBaseAllocator = baseAllocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(BaseAllocator)();</div> +<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  <span class="keywordflow">if</span> (ChunkHeader* chunk = static_cast<ChunkHeader*>(baseAllocator_->Malloc(SIZEOF_CHUNK_HEADER + capacity))) {</div> +<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  chunk->capacity = capacity;</div> +<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  chunk->size = 0;</div> +<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  chunk->next = shared_->chunkHead;</div> +<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  shared_->chunkHead = chunk;</div> +<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  }</div> +<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  }</div> +<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  </div> +<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span>* AlignBuffer(<span class="keywordtype">void</span>* buf, <span class="keywordtype">size_t</span> &size)</div> +<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  {</div> +<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(buf != 0);</div> +<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  <span class="keyword">const</span> uintptr_t mask = <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) - 1;</div> +<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  <span class="keyword">const</span> uintptr_t ubuf = reinterpret_cast<uintptr_t>(buf);</div> +<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(ubuf & mask)) {</div> +<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  <span class="keyword">const</span> uintptr_t abuf = (ubuf + mask) & ~mask;</div> +<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(size >= abuf - ubuf);</div> +<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  buf = reinterpret_cast<void*>(abuf);</div> +<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  size -= abuf - ubuf;</div> +<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  }</div> +<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  <span class="keywordflow">return</span> buf;</div> +<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  }</div> +<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  </div> +<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  <span class="keywordtype">size_t</span> chunk_capacity_; <span class="comment">//!< The minimum capacity of chunk when they are allocated.</span></div> +<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="comment"></span> BaseAllocator* baseAllocator_; <span class="comment">//!< base allocator for allocating memory chunks.</span></div> +<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="comment"></span> SharedData *shared_; <span class="comment">//!< The shared data of the allocator</span></div> +<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="comment"></span>};</div> +<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  </div> +<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="keyword">namespace </span>internal {</div> +<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <span class="keyword">template</span><<span class="keyword">typename</span>, <span class="keyword">typename</span> = <span class="keywordtype">void</span>></div> +<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <span class="keyword">struct </span>IsRefCounted :</div> +<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <span class="keyword">public</span> FalseType</div> +<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  { };</div> +<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> +<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <span class="keyword">struct </span>IsRefCounted<T, typename internal::EnableIfCond<T::kRefCounted><a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">::Type</a>> :</div> +<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  <span class="keyword">public</span> TrueType</div> +<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  { };</div> +<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> }</div> +<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  </div> +<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> +<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keyword">inline</span> T* Realloc(A& a, T* old_p, <span class="keywordtype">size_t</span> old_n, <span class="keywordtype">size_t</span> new_n)</div> +<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> {</div> +<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a>(old_n <= SIZE_MAX / <span class="keyword">sizeof</span>(T) && new_n <= SIZE_MAX / <span class="keyword">sizeof</span>(T));</div> +<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  <span class="keywordflow">return</span> static_cast<T*>(a.Realloc(old_p, old_n * <span class="keyword">sizeof</span>(T), new_n * <span class="keyword">sizeof</span>(T)));</div> <div class="line"><a name="l00438"></a><span class="lineno"> 438</span> }</div> <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  </div> -<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>  </div> -<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor">#ifdef __GNUC__</span></div> -<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> RAPIDJSON_DIAG_PUSH</div> -<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> RAPIDJSON_DIAG_OFF(effc++) <span class="comment">// std::allocator can safely be inherited</span></div> -<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> +<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="keyword">inline</span> T *Malloc(A& a, <span class="keywordtype">size_t</span> n = 1)</div> +<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> {</div> +<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  <span class="keywordflow">return</span> Realloc<T, A>(a, NULL, 0, n);</div> +<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> }</div> <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>  </div> -<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keyword">template</span> <<span class="keyword">typename</span> T, <span class="keyword">typename</span> BaseAllocator = CrtAllocator></div> -<div class="line"><a name="l00447"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator.html"> 447</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a> :</div> -<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <span class="keyword">public</span> std::allocator<T></div> -<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> {</div> -<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  <span class="keyword">typedef</span> std::allocator<T> allocator_type;</div> -<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  <span class="keyword">typedef</span> std::allocator_traits<allocator_type> traits_type;</div> -<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>  <span class="keyword">typedef</span> allocator_type traits_type;</div> +<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> A></div> +<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> Free(A& a, T *p, <span class="keywordtype">size_t</span> n = 1)</div> +<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> {</div> +<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>  static_cast<void>(Realloc<T, A>(a, p, n, 0));</div> +<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> }</div> +<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  </div> +<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor">#ifdef __GNUC__</span></div> +<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> RAPIDJSON_DIAG_PUSH</div> +<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> RAPIDJSON_DIAG_OFF(effc++) <span class="comment">// std::allocator can safely be inherited</span></div> <div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  </div> -<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  <span class="keyword">typedef</span> BaseAllocator BaseAllocatorType;</div> -<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  </div> -<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  allocator_type(),</div> -<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  baseAllocator_()</div> -<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  { }</div> -<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  </div> -<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  allocator_type(rhs),</div> -<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  baseAllocator_(rhs.baseAllocator_)</div> -<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  { }</div> -<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  </div> -<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  allocator_type(rhs),</div> -<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  baseAllocator_(rhs.baseAllocator_)</div> +<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="keyword">template</span> <<span class="keyword">typename</span> T, <span class="keyword">typename</span> BaseAllocator = CrtAllocator></div> +<div class="line"><a name="l00458"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator.html"> 458</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a> :</div> +<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <span class="keyword">public</span> std::allocator<T></div> +<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> {</div> +<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  <span class="keyword">typedef</span> std::allocator<T> allocator_type;</div> +<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  <span class="keyword">typedef</span> std::allocator_traits<allocator_type> traits_type;</div> +<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <span class="keyword">typedef</span> allocator_type traits_type;</div> +<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  </div> +<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <span class="keyword">typedef</span> BaseAllocator BaseAllocatorType;</div> +<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  </div> +<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  allocator_type(),</div> +<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  baseAllocator_()</div> <div class="line"><a name="l00474"></a><span class="lineno"> 474</span>  { }</div> <div class="line"><a name="l00475"></a><span class="lineno"> 475</span>  </div> -<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>&& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>  allocator_type(std::move(rhs)),</div> -<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  baseAllocator_(std::move(rhs.baseAllocator_))</div> -<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>  { }</div> -<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  <span class="keyword">using</span> propagate_on_container_move_assignment = std::true_type;</div> -<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <span class="keyword">using</span> propagate_on_container_swap = std::true_type;</div> -<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>  allocator_type(rhs),</div> +<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>  baseAllocator_(rhs.baseAllocator_)</div> +<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  { }</div> +<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>  </div> +<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  allocator_type(rhs),</div> +<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  baseAllocator_(rhs.baseAllocator_)</div> +<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>  { }</div> <div class="line"><a name="l00486"></a><span class="lineno"> 486</span>  </div> -<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>  <span class="comment">/* implicit */</span></div> -<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> BaseAllocator& allocator) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>  allocator_type(),</div> -<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>  baseAllocator_(allocator)</div> +<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>&& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>  allocator_type(std::move(rhs)),</div> +<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>  baseAllocator_(std::move(rhs.baseAllocator_))</div> <div class="line"><a name="l00491"></a><span class="lineno"> 491</span>  { }</div> -<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>  </div> -<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>  ~<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  { }</div> -<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>  </div> -<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00497"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_std_allocator_1_1rebind.html"> 497</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_std_allocator_1_1rebind.html">rebind</a> {</div> -<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a> <a class="code" href="classrapidjson_1_1_std_allocator.html">other</a>;</div> -<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>  };</div> -<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  </div> -<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::size_type size_type;</div> -<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::difference_type difference_type;</div> +<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  <span class="keyword">using</span> propagate_on_container_move_assignment = std::true_type;</div> +<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>  <span class="keyword">using</span> propagate_on_container_swap = std::true_type;</div> +<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>  </div> +<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>  <span class="comment">/* implicit */</span></div> +<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> BaseAllocator& allocator) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  allocator_type(),</div> +<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  baseAllocator_(allocator)</div> +<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  { }</div> <div class="line"><a name="l00503"></a><span class="lineno"> 503</span>  </div> -<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::value_type value_type;</div> -<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::pointer pointer;</div> -<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::const_pointer const_pointer;</div> -<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  </div> -<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  </div> -<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> std::add_lvalue_reference<value_type>::type &reference;</div> -<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> std::add_lvalue_reference<typename std::add_const<value_type>::type>::type &const_reference;</div> -<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>  </div> -<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>  pointer address(reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  {</div> -<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>  <span class="keywordflow">return</span> std::addressof(r);</div> -<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>  }</div> -<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  const_pointer address(const_reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  {</div> -<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  <span class="keywordflow">return</span> std::addressof(r);</div> -<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  }</div> -<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  </div> -<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>  size_type max_size() const RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  {</div> -<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  <span class="keywordflow">return</span> traits_type::max_size(*<span class="keyword">this</span>);</div> -<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  }</div> -<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  </div> -<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> ...Args></div> -<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>  <span class="keywordtype">void</span> construct(pointer p, Args&&... args)</div> +<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  ~<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  { }</div> +<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  </div> +<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00508"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_std_allocator_1_1rebind.html"> 508</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_std_allocator_1_1rebind.html">rebind</a> {</div> +<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a> <a class="code" href="classrapidjson_1_1_std_allocator.html">other</a>;</div> +<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  };</div> +<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  </div> +<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::size_type size_type;</div> +<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::difference_type difference_type;</div> +<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  </div> +<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::value_type value_type;</div> +<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::pointer pointer;</div> +<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> traits_type::const_pointer const_pointer;</div> +<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  </div> +<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  </div> +<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> std::add_lvalue_reference<value_type>::type &reference;</div> +<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> std::add_lvalue_reference<typename std::add_const<value_type>::type>::type &const_reference;</div> +<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  </div> +<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  pointer address(reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  {</div> +<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  <span class="keywordflow">return</span> std::addressof(r);</div> +<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>  }</div> +<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>  const_pointer address(const_reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> <div class="line"><a name="l00529"></a><span class="lineno"> 529</span>  {</div> -<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  traits_type::construct(*<span class="keyword">this</span>, p, std::forward<Args>(args)...);</div> +<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  <span class="keywordflow">return</span> std::addressof(r);</div> <div class="line"><a name="l00531"></a><span class="lineno"> 531</span>  }</div> -<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  <span class="keywordtype">void</span> destroy(pointer p)</div> -<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>  {</div> -<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>  traits_type::destroy(*<span class="keyword">this</span>, p);</div> -<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  }</div> -<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>  </div> -<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="preprocessor">#else // !RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>  </div> -<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::reference reference;</div> -<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::const_reference const_reference;</div> -<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  </div> -<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>  pointer address(reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>  {</div> -<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>  <span class="keywordflow">return</span> allocator_type::address(r);</div> -<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  }</div> -<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>  const_pointer address(const_reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>  {</div> -<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>  <span class="keywordflow">return</span> allocator_type::address(r);</div> -<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  }</div> -<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>  </div> -<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  size_type max_size() const RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>  {</div> -<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  <span class="keywordflow">return</span> allocator_type::max_size();</div> -<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  }</div> -<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  </div> -<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  <span class="keywordtype">void</span> construct(pointer p, const_reference r)</div> -<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  {</div> -<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>  allocator_type::construct(p, r);</div> -<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  }</div> -<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  <span class="keywordtype">void</span> destroy(pointer p)</div> -<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>  {</div> -<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>  allocator_type::destroy(p);</div> -<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  }</div> -<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  </div> -<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor">#endif // !RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  </div> +<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>  size_type max_size() const RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>  {</div> +<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  <span class="keywordflow">return</span> traits_type::max_size(*<span class="keyword">this</span>);</div> +<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>  }</div> +<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>  </div> +<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> ...Args></div> +<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  <span class="keywordtype">void</span> construct(pointer p, Args&&... args)</div> +<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>  {</div> +<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  traits_type::construct(*<span class="keyword">this</span>, p, std::forward<Args>(args)...);</div> +<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>  }</div> +<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>  <span class="keywordtype">void</span> destroy(pointer p)</div> +<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>  {</div> +<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  traits_type::destroy(*<span class="keyword">this</span>, p);</div> +<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>  }</div> +<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>  </div> +<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#else // !RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  </div> +<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::reference reference;</div> +<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::const_reference const_reference;</div> +<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>  </div> +<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  pointer address(reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  {</div> +<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  <span class="keywordflow">return</span> allocator_type::address(r);</div> +<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  }</div> +<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  const_pointer address(const_reference r) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>  {</div> +<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  <span class="keywordflow">return</span> allocator_type::address(r);</div> +<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  }</div> +<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>  </div> +<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>  size_type max_size() const RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  {</div> +<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  <span class="keywordflow">return</span> allocator_type::max_size();</div> +<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  }</div> <div class="line"><a name="l00566"></a><span class="lineno"> 566</span>  </div> -<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  U* allocate(size_type n = 1, <span class="keyword">const</span> <span class="keywordtype">void</span>* = 0)</div> -<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  {</div> -<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  <span class="keywordflow">return</span> RAPIDJSON_NAMESPACE::Malloc<U>(baseAllocator_, n);</div> -<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>  }</div> -<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  <span class="keywordtype">void</span> deallocate(U* p, size_type n = 1)</div> -<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  {</div> -<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  RAPIDJSON_NAMESPACE::Free<U>(baseAllocator_, p, n);</div> -<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>  }</div> +<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  <span class="keywordtype">void</span> construct(pointer p, const_reference r)</div> +<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  {</div> +<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  allocator_type::construct(p, r);</div> +<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  }</div> +<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>  <span class="keywordtype">void</span> destroy(pointer p)</div> +<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>  {</div> +<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  allocator_type::destroy(p);</div> +<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  }</div> +<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  </div> +<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor">#endif // !RAPIDJSON_HAS_CXX11</span></div> <div class="line"><a name="l00577"></a><span class="lineno"> 577</span>  </div> -<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  pointer allocate(size_type n = 1, <span class="keyword">const</span> <span class="keywordtype">void</span>* = 0)</div> -<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  {</div> -<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  <span class="keywordflow">return</span> allocate<value_type>(n);</div> -<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>  }</div> -<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  <span class="keywordtype">void</span> deallocate(pointer p, size_type n = 1)</div> -<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  {</div> -<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>  deallocate<value_type>(p, n);</div> -<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>  }</div> -<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>  </div> -<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>  <span class="keyword">using</span> is_always_equal = std::is_empty<BaseAllocator>;</div> -<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>  </div> -<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> StdAllocator<U, BaseAllocator>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>  {</div> -<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>  <span class="keywordflow">return</span> baseAllocator_ == rhs.baseAllocator_;</div> -<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>  }</div> -<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> StdAllocator<U, BaseAllocator>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>  {</div> -<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>  <span class="keywordflow">return</span> !operator==(rhs);</div> -<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>  }</div> -<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="comment"></span> </div> -<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="comment"> //! rapidjson Allocator concept</span></div> -<div class="line"><a name="l00603"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c"> 603</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = BaseAllocator::kNeedFree;</div> -<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>  <span class="keywordtype">void</span>* Malloc(<span class="keywordtype">size_t</span> size)</div> -<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>  {</div> -<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>  <span class="keywordflow">return</span> baseAllocator_.Malloc(size);</div> -<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>  }</div> -<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>  <span class="keywordtype">void</span>* Realloc(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize)</div> +<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  U* allocate(size_type n = 1, <span class="keyword">const</span> <span class="keywordtype">void</span>* = 0)</div> +<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  {</div> +<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>  <span class="keywordflow">return</span> RAPIDJSON_NAMESPACE::Malloc<U>(baseAllocator_, n);</div> +<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  }</div> +<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>  <span class="keywordtype">void</span> deallocate(U* p, size_type n = 1)</div> +<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>  {</div> +<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>  RAPIDJSON_NAMESPACE::Free<U>(baseAllocator_, p, n);</div> +<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>  }</div> +<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>  </div> +<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>  pointer allocate(size_type n = 1, <span class="keyword">const</span> <span class="keywordtype">void</span>* = 0)</div> +<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>  {</div> +<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>  <span class="keywordflow">return</span> allocate<value_type>(n);</div> +<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  }</div> +<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>  <span class="keywordtype">void</span> deallocate(pointer p, size_type n = 1)</div> +<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>  {</div> +<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>  deallocate<value_type>(p, n);</div> +<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>  }</div> +<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>  </div> +<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>  <span class="keyword">using</span> is_always_equal = std::is_empty<BaseAllocator>;</div> +<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>  </div> +<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> StdAllocator<U, BaseAllocator>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>  {</div> +<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>  <span class="keywordflow">return</span> baseAllocator_ == rhs.baseAllocator_;</div> +<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>  }</div> +<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> StdAllocator<U, BaseAllocator>& rhs) <span class="keyword">const</span> RAPIDJSON_NOEXCEPT</div> <div class="line"><a name="l00609"></a><span class="lineno"> 609</span>  {</div> -<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>  <span class="keywordflow">return</span> baseAllocator_.Realloc(originalPtr, originalSize, newSize);</div> +<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>  <span class="keywordflow">return</span> !operator==(rhs);</div> <div class="line"><a name="l00611"></a><span class="lineno"> 611</span>  }</div> -<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> Free(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00613"></a><span class="lineno"> 613</span>  {</div> -<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>  BaseAllocator::Free(ptr);</div> -<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>  }</div> -<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>  </div> -<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> -<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>  <span class="keyword">friend</span> <span class="keyword">class </span>StdAllocator; <span class="comment">// access to StdAllocator<!T>.*</span></div> -<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>  </div> -<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>  BaseAllocator baseAllocator_;</div> -<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> };</div> -<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>  </div> -<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="preprocessor">#if !RAPIDJSON_HAS_CXX17 // std::allocator<void> deprecated in C++17</span></div> -<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="keyword">template</span> <<span class="keyword">typename</span> BaseAllocator></div> -<div class="line"><a name="l00626"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html"> 626</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a><void, BaseAllocator> :</div> -<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>  <span class="keyword">public</span> std::allocator<void></div> -<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> {</div> -<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>  <span class="keyword">typedef</span> std::allocator<void> allocator_type;</div> -<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>  </div> -<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>  <span class="keyword">typedef</span> BaseAllocator BaseAllocatorType;</div> -<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>  </div> -<div class="line"><a name="l00634"></a><span class="lineno"> 634</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>  allocator_type(),</div> -<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>  baseAllocator_()</div> -<div class="line"><a name="l00637"></a><span class="lineno"> 637</span>  { }</div> -<div class="line"><a name="l00638"></a><span class="lineno"> 638</span>  </div> -<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00640"></a><span class="lineno"> 640</span>  allocator_type(rhs),</div> -<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  baseAllocator_(rhs.baseAllocator_)</div> -<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>  { }</div> -<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>  </div> -<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a>& rhs) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>  allocator_type(rhs),</div> -<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  baseAllocator_(rhs.baseAllocator_)</div> -<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>  { }</div> -<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>  </div> -<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>  <span class="comment">/* implicit */</span></div> -<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> BaseAllocator& allocator) RAPIDJSON_NOEXCEPT :</div> -<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>  allocator_type(),</div> -<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>  baseAllocator_(allocator)</div> +<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="comment"></span> </div> +<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="comment"> //! rapidjson Allocator concept</span></div> +<div class="line"><a name="l00614"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c"> 614</a></span> <span class="comment"></span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kNeedFree = BaseAllocator::kNeedFree;</div> +<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> kRefCounted = <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">internal::IsRefCounted<BaseAllocator>::Value</a>;</div> +<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>  <span class="keywordtype">void</span>* Malloc(<span class="keywordtype">size_t</span> size)</div> +<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>  {</div> +<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>  <span class="keywordflow">return</span> baseAllocator_.Malloc(size);</div> +<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>  }</div> +<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>  <span class="keywordtype">void</span>* Realloc(<span class="keywordtype">void</span>* originalPtr, <span class="keywordtype">size_t</span> originalSize, <span class="keywordtype">size_t</span> newSize)</div> +<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>  {</div> +<div class="line"><a name="l00622"></a><span class="lineno"> 622</span>  <span class="keywordflow">return</span> baseAllocator_.Realloc(originalPtr, originalSize, newSize);</div> +<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>  }</div> +<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> Free(<span class="keywordtype">void</span> *ptr) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>  {</div> +<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>  BaseAllocator::Free(ptr);</div> +<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>  }</div> +<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>  </div> +<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> +<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>  <span class="keyword">friend</span> <span class="keyword">class </span>StdAllocator; <span class="comment">// access to StdAllocator<!T>.*</span></div> +<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>  </div> +<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>  BaseAllocator baseAllocator_;</div> +<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> };</div> +<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>  </div> +<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor">#if !RAPIDJSON_HAS_CXX17 // std::allocator<void> deprecated in C++17</span></div> +<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="keyword">template</span> <<span class="keyword">typename</span> BaseAllocator></div> +<div class="line"><a name="l00638"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html"> 638</a></span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a><void, BaseAllocator> :</div> +<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>  <span class="keyword">public</span> std::allocator<void></div> +<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> {</div> +<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  <span class="keyword">typedef</span> std::allocator<void> allocator_type;</div> +<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>  </div> +<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>  <span class="keyword">typedef</span> BaseAllocator BaseAllocatorType;</div> +<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>  </div> +<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  allocator_type(),</div> +<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>  baseAllocator_()</div> +<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>  { }</div> +<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>  </div> +<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>  allocator_type(rhs),</div> +<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>  baseAllocator_(rhs.baseAllocator_)</div> <div class="line"><a name="l00654"></a><span class="lineno"> 654</span>  { }</div> <div class="line"><a name="l00655"></a><span class="lineno"> 655</span>  </div> -<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>  ~<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>  { }</div> -<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>  </div> -<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> -<div class="line"><a name="l00660"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html"> 660</a></span>  <span class="keyword">struct </span>rebind {</div> -<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a> <a class="code" href="classrapidjson_1_1_std_allocator.html">other</a>;</div> -<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>  };</div> -<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>  </div> -<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::value_type value_type;</div> -<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>  </div> -<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> -<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>; <span class="comment">// access to StdAllocator<!T>.*</span></div> -<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>  </div> -<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>  BaseAllocator baseAllocator_;</div> -<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> };</div> -<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>  </div> -<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="preprocessor">#ifdef __GNUC__</span></div> -<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> RAPIDJSON_DIAG_POP</div> -<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a>& rhs) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>  allocator_type(rhs),</div> +<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>  baseAllocator_(rhs.baseAllocator_)</div> +<div class="line"><a name="l00660"></a><span class="lineno"> 660</span>  { }</div> +<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>  </div> +<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>  <span class="comment">/* implicit */</span></div> +<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>  <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>(<span class="keyword">const</span> BaseAllocator& allocator) RAPIDJSON_NOEXCEPT :</div> +<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>  allocator_type(),</div> +<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>  baseAllocator_(allocator)</div> +<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>  { }</div> +<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>  </div> +<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>  ~<a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>() RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>  { }</div> +<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>  </div> +<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>  <span class="keyword">template</span><<span class="keyword">typename</span> U></div> +<div class="line"><a name="l00672"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html"> 672</a></span>  <span class="keyword">struct </span>rebind {</div> +<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator<U, BaseAllocator></a> <a class="code" href="classrapidjson_1_1_std_allocator.html">other</a>;</div> +<div class="line"><a name="l00674"></a><span class="lineno"> 674</span>  };</div> +<div class="line"><a name="l00675"></a><span class="lineno"> 675</span>  </div> +<div class="line"><a name="l00676"></a><span class="lineno"> 676</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> allocator_type::value_type value_type;</div> <div class="line"><a name="l00677"></a><span class="lineno"> 677</span>  </div> -<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>  </div> -<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="preprocessor">#endif // RAPIDJSON_ENCODINGS_H_</span></div> +<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> +<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_std_allocator.html">StdAllocator</a>; <span class="comment">// access to StdAllocator<!T>.*</span></div> +<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>  </div> +<div class="line"><a name="l00682"></a><span class="lineno"> 682</span>  BaseAllocator baseAllocator_;</div> +<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> };</div> +<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00685"></a><span class="lineno"> 685</span>  </div> +<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="preprocessor">#ifdef __GNUC__</span></div> +<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> RAPIDJSON_DIAG_POP</div> +<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00689"></a><span class="lineno"> 689</span>  </div> +<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00691"></a><span class="lineno"> 691</span>  </div> +<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="preprocessor">#endif // RAPIDJSON_ENCODINGS_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga860570d04d489be08b9835d2ec58bac5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5">RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</a></div><div class="ttdeci">#define RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</div><div class="ttdoc">User-defined kDefaultChunkCapacity definition.</div><div class="ttdef"><b>Definition:</b> allocators.h:70</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a880524b17bbecb5d2691b8075050d55d"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">rapidjson::MemoryPoolAllocator::Realloc</a></div><div class="ttdeci">void * Realloc(void *originalPtr, size_t originalSize, size_t newSize)</div><div class="ttdoc">Resizes a memory block (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:334</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_af1a56b28d5e0d75b628d448ceacd41fc"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">rapidjson::MemoryPoolAllocator::Shared</a></div><div class="ttdeci">bool Shared() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Whether the allocator is shared.</div><div class="ttdef"><b>Definition:</b> allocators.h:312</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_abcc572bdb6902c9d69711540db5098a7"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">rapidjson::MemoryPoolAllocator::MemoryPoolAllocator</a></div><div class="ttdeci">MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</div><div class="ttdoc">Constructor with user-supplied buffer.</div><div class="ttdef"><b>Definition:</b> allocators.h:198</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga860570d04d489be08b9835d2ec58bac5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5">RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</a></div><div class="ttdeci">#define RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY</div><div class="ttdoc">User-defined kDefaultChunkCapacity definition.</div><div class="ttdef"><b>Definition:</b> allocators.h:71</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a880524b17bbecb5d2691b8075050d55d"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">rapidjson::MemoryPoolAllocator::Realloc</a></div><div class="ttdeci">void * Realloc(void *originalPtr, size_t originalSize, size_t newSize)</div><div class="ttdoc">Resizes a memory block (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:336</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_af1a56b28d5e0d75b628d448ceacd41fc"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">rapidjson::MemoryPoolAllocator::Shared</a></div><div class="ttdeci">bool Shared() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Whether the allocator is shared.</div><div class="ttdef"><b>Definition:</b> allocators.h:314</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_abcc572bdb6902c9d69711540db5098a7"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">rapidjson::MemoryPoolAllocator::MemoryPoolAllocator</a></div><div class="ttdeci">MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</div><div class="ttdoc">Constructor with user-supplied buffer.</div><div class="ttdef"><b>Definition:</b> allocators.h:200</div></div> <div class="ttc" id="arapidjson_8h_html"><div class="ttname"><a href="rapidjson_8h.html">rapidjson.h</a></div><div class="ttdoc">common definitions and configuration</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_ada927b87fb5640124aefeb07e3e23c99"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">rapidjson::MemoryPoolAllocator::operator!=</a></div><div class="ttdeci">bool operator!=(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Compare (inequality) with another MemoryPoolAllocator</div><div class="ttdef"><b>Definition:</b> allocators.h:378</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_afa5935b0dc40420085822bdb5a3f2840"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">rapidjson::MemoryPoolAllocator::Clear</a></div><div class="ttdeci">void Clear() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Deallocates all memory chunks, excluding the first/user one.</div><div class="ttdef"><b>Definition:</b> allocators.h:274</div></div> -<div class="ttc" id="aclassrapidjson_1_1_crt_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_crt_allocator.html">rapidjson::CrtAllocator</a></div><div class="ttdoc">C-runtime library allocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:81</div></div> -<div class="ttc" id="arapidjson_8h_html_aa2c0f2121d7803191a43609ea5d8dd67"><div class="ttname"><a href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67">RAPIDJSON_REALLOC</a></div><div class="ttdeci">#define RAPIDJSON_REALLOC(ptr, new_size)</div><div class="ttdoc">! customization point for global realloc</div><div class="ttdef"><b>Definition:</b> rapidjson.h:678</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_aa5b6810e88de0c46390525cd3a0bd700"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">rapidjson::MemoryPoolAllocator::~MemoryPoolAllocator</a></div><div class="ttdeci">~MemoryPoolAllocator() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> allocators.h:256</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a59d783f4feba17dcd35d9f25fcbc09f4"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">rapidjson::MemoryPoolAllocator::MemoryPoolAllocator</a></div><div class="ttdeci">MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</div><div class="ttdoc">Constructor with chunkSize.</div><div class="ttdef"><b>Definition:</b> allocators.h:167</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_ab7368f377dafc0ecad2c59814cdfe265"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">rapidjson::MemoryPoolAllocator::Size</a></div><div class="ttdeci">size_t Size() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Computes the memory blocks allocated.</div><div class="ttdef"><b>Definition:</b> allocators.h:301</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_aaadeb62f04e430ae1254a7e69d54d724"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">rapidjson::MemoryPoolAllocator::operator==</a></div><div class="ttdeci">bool operator==(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Compare (equality) with another MemoryPoolAllocator</div><div class="ttdef"><b>Definition:</b> allocators.h:372</div></div> -<div class="ttc" id="arapidjson_8h_html_a047ad77d620d1ae97c1bc70a9f316f27"><div class="ttname"><a href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27">RAPIDJSON_MALLOC</a></div><div class="ttdeci">#define RAPIDJSON_MALLOC(size)</div><div class="ttdoc">! customization point for global malloc</div><div class="ttdef"><b>Definition:</b> rapidjson.h:674</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a208c29e04b1d748bfe068444b7044344"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">rapidjson::MemoryPoolAllocator::Malloc</a></div><div class="ttdeci">void * Malloc(size_t size)</div><div class="ttdoc">Allocates a memory block. (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:318</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator</a></div><div class="ttdoc">Default memory allocator used by the parser and DOM.</div><div class="ttdef"><b>Definition:</b> allocators.h:128</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="aclassrapidjson_1_1_std_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator</a></div><div class="ttdef"><b>Definition:</b> allocators.h:447</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> -<div class="ttc" id="arapidjson_8h_html_aa6d5138eed2c5b311d9862d191393a5f"><div class="ttname"><a href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a></div><div class="ttdeci">#define RAPIDJSON_FREE(ptr)</div><div class="ttdoc">! customization point for global free</div><div class="ttdef"><b>Definition:</b> rapidjson.h:682</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_acf80d2330d6ae72643674a95ac62c0bd"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd">rapidjson::MemoryPoolAllocator::Capacity</a></div><div class="ttdeci">size_t Capacity() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Computes the total capacity of allocated memory chunks.</div><div class="ttdef"><b>Definition:</b> allocators.h:290</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga2b2a0d9143aa4fb31205a85b34c43952"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_NOEXCEPT_ASSERT(x)</div><div class="ttdoc">Assertion (in non-throwing contexts).</div><div class="ttdef"><b>Definition:</b> rapidjson.h:665</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga583915242504c7fdb36e826f02f76242"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a></div><div class="ttdeci">#define RAPIDJSON_ALIGN(x)</div><div class="ttdoc">Data alignment of the machine.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:289</div></div> -<div class="ttc" id="astructrapidjson_1_1_std_allocator_1_1rebind_html"><div class="ttname"><a href="structrapidjson_1_1_std_allocator_1_1rebind.html">rapidjson::StdAllocator::rebind</a></div><div class="ttdef"><b>Definition:</b> allocators.h:497</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a199ce203dde7f2b364b6b844a8af04ec"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">rapidjson::MemoryPoolAllocator::Free</a></div><div class="ttdeci">static void Free(void *ptr) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Frees a memory block (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:369</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_ada927b87fb5640124aefeb07e3e23c99"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">rapidjson::MemoryPoolAllocator::operator!=</a></div><div class="ttdeci">bool operator!=(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Compare (inequality) with another MemoryPoolAllocator</div><div class="ttdef"><b>Definition:</b> allocators.h:380</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_afa5935b0dc40420085822bdb5a3f2840"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">rapidjson::MemoryPoolAllocator::Clear</a></div><div class="ttdeci">void Clear() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Deallocates all memory chunks, excluding the first/user one.</div><div class="ttdef"><b>Definition:</b> allocators.h:276</div></div> +<div class="ttc" id="aclassrapidjson_1_1_crt_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_crt_allocator.html">rapidjson::CrtAllocator</a></div><div class="ttdoc">C-runtime library allocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:82</div></div> +<div class="ttc" id="arapidjson_8h_html_aa2c0f2121d7803191a43609ea5d8dd67"><div class="ttname"><a href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67">RAPIDJSON_REALLOC</a></div><div class="ttdeci">#define RAPIDJSON_REALLOC(ptr, new_size)</div><div class="ttdoc">! customization point for global realloc</div><div class="ttdef"><b>Definition:</b> rapidjson.h:700</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_aa5b6810e88de0c46390525cd3a0bd700"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">rapidjson::MemoryPoolAllocator::~MemoryPoolAllocator</a></div><div class="ttdeci">~MemoryPoolAllocator() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> allocators.h:258</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a59d783f4feba17dcd35d9f25fcbc09f4"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">rapidjson::MemoryPoolAllocator::MemoryPoolAllocator</a></div><div class="ttdeci">MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</div><div class="ttdoc">Constructor with chunkSize.</div><div class="ttdef"><b>Definition:</b> allocators.h:169</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_ab7368f377dafc0ecad2c59814cdfe265"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">rapidjson::MemoryPoolAllocator::Size</a></div><div class="ttdeci">size_t Size() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Computes the memory blocks allocated.</div><div class="ttdef"><b>Definition:</b> allocators.h:303</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_aaadeb62f04e430ae1254a7e69d54d724"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">rapidjson::MemoryPoolAllocator::operator==</a></div><div class="ttdeci">bool operator==(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Compare (equality) with another MemoryPoolAllocator</div><div class="ttdef"><b>Definition:</b> allocators.h:374</div></div> +<div class="ttc" id="arapidjson_8h_html_a047ad77d620d1ae97c1bc70a9f316f27"><div class="ttname"><a href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27">RAPIDJSON_MALLOC</a></div><div class="ttdeci">#define RAPIDJSON_MALLOC(size)</div><div class="ttdoc">! customization point for global malloc</div><div class="ttdef"><b>Definition:</b> rapidjson.h:696</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a208c29e04b1d748bfe068444b7044344"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">rapidjson::MemoryPoolAllocator::Malloc</a></div><div class="ttdeci">void * Malloc(size_t size)</div><div class="ttdoc">Allocates a memory block. (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:320</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator</a></div><div class="ttdoc">Default memory allocator used by the parser and DOM.</div><div class="ttdef"><b>Definition:</b> allocators.h:129</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="aclassrapidjson_1_1_std_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator</a></div><div class="ttdef"><b>Definition:</b> allocators.h:458</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> +<div class="ttc" id="arapidjson_8h_html_aa6d5138eed2c5b311d9862d191393a5f"><div class="ttname"><a href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f">RAPIDJSON_FREE</a></div><div class="ttdeci">#define RAPIDJSON_FREE(ptr)</div><div class="ttdoc">! customization point for global free</div><div class="ttdef"><b>Definition:</b> rapidjson.h:704</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_acf80d2330d6ae72643674a95ac62c0bd"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd">rapidjson::MemoryPoolAllocator::Capacity</a></div><div class="ttdeci">size_t Capacity() const RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Computes the total capacity of allocated memory chunks.</div><div class="ttdef"><b>Definition:</b> allocators.h:292</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga2b2a0d9143aa4fb31205a85b34c43952"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_NOEXCEPT_ASSERT(x)</div><div class="ttdoc">Assertion (in non-throwing contexts).</div><div class="ttdef"><b>Definition:</b> rapidjson.h:687</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga583915242504c7fdb36e826f02f76242"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a></div><div class="ttdeci">#define RAPIDJSON_ALIGN(x)</div><div class="ttdoc">Data alignment of the machine.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:307</div></div> +<div class="ttc" id="astructrapidjson_1_1_std_allocator_1_1rebind_html"><div class="ttname"><a href="structrapidjson_1_1_std_allocator_1_1rebind.html">rapidjson::StdAllocator::rebind</a></div><div class="ttdef"><b>Definition:</b> allocators.h:508</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html_a199ce203dde7f2b364b6b844a8af04ec"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">rapidjson::MemoryPoolAllocator::Free</a></div><div class="ttdeci">static void Free(void *ptr) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Frees a memory block (concept Allocator)</div><div class="ttdef"><b>Definition:</b> allocators.h:371</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/biginteger_8h_source.html b/zh-cn/biginteger_8h_source.html index 61002cbc..c4b8edad 100644 --- a/zh-cn/biginteger_8h_source.html +++ b/zh-cn/biginteger_8h_source.html @@ -380,9 +380,9 @@ $(document).ready(function(){initNavTree('biginteger_8h_source.html','');}); <div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor">#endif // RAPIDJSON_BIGINTEGER_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/classrapidjson_1_1_generic_document-members.html b/zh-cn/classrapidjson_1_1_generic_document-members.html index bcd6b683..cc536cbd 100644 --- a/zh-cn/classrapidjson_1_1_generic_document-members.html +++ b/zh-cn/classrapidjson_1_1_generic_document-members.html @@ -100,113 +100,124 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_generic_document.ht <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ConstObject</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7">ConstValueIterator</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>data_</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Double</b>(double d) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">EncodingType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>EndArray</b>(SizeType elementCount) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>EndObject</b>(SizeType memberCount) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">GenericDocument</a>(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">GenericDocument</a>(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GenericValue</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">rapidjson::GenericValue::GenericValue</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">rapidjson::GenericValue::GenericValue</a>(Type type) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">rapidjson::GenericValue::GenericValue</a>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">rapidjson::GenericValue::GenericValue</a>(bool b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">rapidjson::GenericValue::GenericValue</a>(int i) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">rapidjson::GenericValue::GenericValue</a>(unsigned u) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">rapidjson::GenericValue::GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">rapidjson::GenericValue::GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">rapidjson::GenericValue::GenericValue</a>(double d) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">rapidjson::GenericValue::GenericValue</a>(float f) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">rapidjson::GenericValue::GenericValue</a>(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">rapidjson::GenericValue::GenericValue</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">rapidjson::GenericValue::GenericValue</a>(const Ch *s, SizeType length, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">rapidjson::GenericValue::GenericValue</a>(const Ch *s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">rapidjson::GenericValue::GenericValue</a>(const std::basic_string< Ch > &s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">rapidjson::GenericValue::GenericValue</a>(Array a) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">rapidjson::GenericValue::GenericValue</a>(Object o) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">GetAllocator</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetElementsPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">GetErrorOffset</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetMembersPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">GetParseError</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">GetStackCapacity</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GetStringPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">HasParseError</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Int</b>(int i) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Int64</b>(int64_t i) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kArrayFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kBoolFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kConstStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kCopyFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kCopyStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDefaultArrayCapacity</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kDefaultObjectCapacity</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDoubleFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Key</b>(const Ch *str, SizeType length, bool copy) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kFalseFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kInlineStrFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kInt64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kIntFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNullFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberAnyFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberDoubleFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberInt64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberIntFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberUint64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberUintFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kObjectFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kShortStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kTrueFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kTypeMask</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kUint64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kUintFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Null</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Object</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974">operator ParseResult</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">rapidjson::GenericValue::operator=</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">rapidjson::GenericValue::operator=</a>(StringRefType str) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">Parse</a>(const typename SourceEncoding::Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">Parse</a>(const Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">Parse</a>(const Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const typename SourceEncoding::Ch *str, size_t length) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const Ch *str, size_t length) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DataString</b>(const Data &data) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DataStringLength</b>(const Data &data) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoAddMember</b>(GenericValue &name, GenericValue &value, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoAllocMembers</b>(SizeType capacity, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoClearMembers</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoCopyMembers</b>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoEraseMembers</b>(ConstMemberIterator first, ConstMemberIterator last) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoFindMember</b>(const GenericValue< Encoding, SourceAllocator > &name) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoFreeMembers</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoRemoveMember</b>(MemberIterator m) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoReserveMembers</b>(SizeType newCapacity, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Double</b>(double d) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">EncodingType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>EndArray</b>(SizeType elementCount) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>EndObject</b>(SizeType memberCount) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">GenericDocument</a>(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">GenericDocument</a>(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenericValue</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">rapidjson::GenericValue::GenericValue</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">rapidjson::GenericValue::GenericValue</a>(Type type) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">rapidjson::GenericValue::GenericValue</a>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">rapidjson::GenericValue::GenericValue</a>(bool b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">rapidjson::GenericValue::GenericValue</a>(int i) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">rapidjson::GenericValue::GenericValue</a>(unsigned u) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">rapidjson::GenericValue::GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">rapidjson::GenericValue::GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">rapidjson::GenericValue::GenericValue</a>(double d) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">rapidjson::GenericValue::GenericValue</a>(float f) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">rapidjson::GenericValue::GenericValue</a>(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">rapidjson::GenericValue::GenericValue</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">rapidjson::GenericValue::GenericValue</a>(const Ch *s, SizeType length, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">rapidjson::GenericValue::GenericValue</a>(const Ch *s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">rapidjson::GenericValue::GenericValue</a>(const std::basic_string< Ch > &s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">rapidjson::GenericValue::GenericValue</a>(Array a) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">rapidjson::GenericValue::GenericValue</a>(Object o) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">GetAllocator</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>GetElementsPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">GetErrorOffset</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>GetMembersPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">GetParseError</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">GetStackCapacity</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetStringPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">HasParseError</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Int</b>(int i) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Int64</b>(int64_t i) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kArrayFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kBoolFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kConstStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kCopyFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kCopyStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kDefaultArrayCapacity</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDefaultObjectCapacity</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kDoubleFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Key</b>(const Ch *str, SizeType length, bool copy) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kFalseFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kInlineStrFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kInt64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kIntFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNullFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberAnyFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberDoubleFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberInt64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberIntFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberUint64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberUintFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kObjectFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kShortStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kTrueFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kTypeMask</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kUint64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kUintFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Null</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Object</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974">operator ParseResult</a>() const</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">rapidjson::GenericValue::operator=</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">rapidjson::GenericValue::operator=</a>(StringRefType str) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">Parse</a>(const typename SourceEncoding::Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">Parse</a>(const Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">Parse</a>(const Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const typename SourceEncoding::Ch *str, size_t length) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const Ch *str, size_t length) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const std::basic_string< typename SourceEncoding::Ch > &str) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const std::basic_string< Ch > &str) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const Ch *str, size_t length) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const std::basic_string< typename SourceEncoding::Ch > &str) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Parse</b>(const std::basic_string< Ch > &str) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">ParseInsitu</a>(Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">ParseInsitu</a>(Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">Populate</a>(Generator &g)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0">RAPIDJSON_DISABLEIF_RETURN</a>((internal::IsPointer< T >),(GenericValue &)) operator</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>RawNumber</b>(const Ch *str, SizeType length, bool copy) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetArrayRaw</b>(GenericValue *values, SizeType count, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>SetElementsPointer</b>(GenericValue *elements) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetMembersPointer</b>(Member *members) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(Member *members, SizeType count, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetStringPointer</b>(const Ch *str) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(StringRefType s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>StartArray</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StartObject</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>String</b>(const Ch *str, SizeType length, bool copy) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StringEqual</b>(const GenericValue< Encoding, SourceAllocator > &rhs) const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">swap</a>(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Parse</b>(const std::basic_string< Ch > &str) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">ParseInsitu</a>(Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">ParseInsitu</a>(Ch *str)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">ParseStream</a>(InputStream &is)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">Populate</a>(Generator &g)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0">RAPIDJSON_DISABLEIF_RETURN</a>((internal::IsPointer< T >),(GenericValue &)) operator</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>RawNumber</b>(const Ch *str, SizeType length, bool copy) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetArrayRaw</b>(GenericValue *values, SizeType count, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetElementsPointer</b>(GenericValue *elements) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetMembersPointer</b>(Member *members) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(Member *members, SizeType count, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetStringPointer</b>(const Ch *str) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(StringRefType s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StartArray</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StartObject</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>String</b>(const Ch *str, SizeType length, bool copy) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StringEqual</b>(const GenericValue< Encoding, SourceAllocator > &rhs) const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">Swap</a>(GenericDocument &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Uint</b>(unsigned i) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Uint64</b>(uint64_t i) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">ValueType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~GenericDocument</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">swap</a>(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Uint</b>(unsigned i) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Uint64</b>(uint64_t i) (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">ValueType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>~GenericDocument</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> </table></div><!-- contents --> </div><!-- doc-content --> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/classrapidjson_1_1_generic_document.html b/zh-cn/classrapidjson_1_1_generic_document.html index c8f083ed..0eff195e 100644 --- a/zh-cn/classrapidjson_1_1_generic_document.html +++ b/zh-cn/classrapidjson_1_1_generic_document.html @@ -373,6 +373,35 @@ RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html# <tr class="memitem:a19199230941f1fe59b5b6a27281fcd1b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a19199230941f1fe59b5b6a27281fcd1b"></a> RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> * </td><td class="memItemRight" valign="bottom"><b>SetMembersPointer</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> *members)</td></tr> <tr class="separator:a19199230941f1fe59b5b6a27281fcd1b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9125585f7d3315da5e9aec2b5587bb7d inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a9125585f7d3315da5e9aec2b5587bb7d"></a> +RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> * </td><td class="memItemRight" valign="bottom"><b>DoAllocMembers</b> (<a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:a9125585f7d3315da5e9aec2b5587bb7d inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad4451b6417bf2ada4d8b56ba0b3b6031 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="ad4451b6417bf2ada4d8b56ba0b3b6031"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoReserveMembers</b> (<a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:ad4451b6417bf2ada4d8b56ba0b3b6031 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a94105ff1a8eeb895cee95fb4eca7781b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memTemplParams" colspan="2"><a id="a94105ff1a8eeb895cee95fb4eca7781b"></a> +template<typename SourceAllocator > </td></tr> +<tr class="memitem:a94105ff1a8eeb895cee95fb4eca7781b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memTemplItemRight" valign="bottom"><b>DoFindMember</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &name)</td></tr> +<tr class="separator:a94105ff1a8eeb895cee95fb4eca7781b inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a1c2162a0a065a59bf465497e5110788c inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a1c2162a0a065a59bf465497e5110788c"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoClearMembers</b> ()</td></tr> +<tr class="separator:a1c2162a0a065a59bf465497e5110788c inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a7e5cf02ff6ee4938b672d98258a79546 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a7e5cf02ff6ee4938b672d98258a79546"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoFreeMembers</b> ()</td></tr> +<tr class="separator:a7e5cf02ff6ee4938b672d98258a79546 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a92627391393b9aa6245275593040cf0a inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a92627391393b9aa6245275593040cf0a"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoAddMember</b> (<a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> &name, <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> &value, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:a92627391393b9aa6245275593040cf0a inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0655ea1a6fb2cf09f845a4e50b6b961f inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a0655ea1a6fb2cf09f845a4e50b6b961f"></a> +<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memItemRight" valign="bottom"><b>DoRemoveMember</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> m)</td></tr> +<tr class="separator:a0655ea1a6fb2cf09f845a4e50b6b961f inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a98ce0a47cc6951eb7ee106160e3b637a inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a98ce0a47cc6951eb7ee106160e3b637a"></a> +<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memItemRight" valign="bottom"><b>DoEraseMembers</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> first, <a class="el" href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> last)</td></tr> +<tr class="separator:a98ce0a47cc6951eb7ee106160e3b637a inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aca2fab62d3450b24d46cc9841ed8cfef inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memTemplParams" colspan="2"><a id="aca2fab62d3450b24d46cc9841ed8cfef"></a> +template<typename SourceAllocator > </td></tr> +<tr class="memitem:aca2fab62d3450b24d46cc9841ed8cfef inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>DoCopyMembers</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &rhs, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator, bool copyConstStrings)</td></tr> +<tr class="separator:aca2fab62d3450b24d46cc9841ed8cfef inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9cc2eb5c196affb861560219a4973dd0 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a9cc2eb5c196affb861560219a4973dd0"></a> void </td><td class="memItemRight" valign="bottom"><b>SetArrayRaw</b> (<a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> *values, <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> <tr class="separator:a9cc2eb5c196affb861560219a4973dd0 inherit pub_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> @@ -475,6 +504,13 @@ template<typename , typename > </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a> 额外继承的成员函数</h2></td></tr> +<tr class="inherit_header pub_static_methods_classrapidjson_1_1_generic_value"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classrapidjson_1_1_generic_value')"><img src="closed.png" alt="-"/> 静态 Public 成员函数 继承自 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td></tr> +<tr class="memitem:a2c26a47d781359b9bd0e4b7b91948bc6 inherit pub_static_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a2c26a47d781359b9bd0e4b7b91948bc6"></a> +static const RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> * </td><td class="memItemRight" valign="bottom"><b>DataString</b> (const <a class="el" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> &data)</td></tr> +<tr class="separator:a2c26a47d781359b9bd0e4b7b91948bc6 inherit pub_static_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0012e161e17ef746c31b1985a3e34cc6 inherit pub_static_methods_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a0012e161e17ef746c31b1985a3e34cc6"></a> +static RAPIDJSON_FORCEINLINE <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> </td><td class="memItemRight" valign="bottom"><b>DataStringLength</b> (const <a class="el" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> &data)</td></tr> +<tr class="separator:a0012e161e17ef746c31b1985a3e34cc6 inherit pub_static_methods_classrapidjson_1_1_generic_value"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_attribs_classrapidjson_1_1_generic_value"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_classrapidjson_1_1_generic_value')"><img src="closed.png" alt="-"/> Public 属性 继承自 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td></tr> <tr class="memitem:a45b0ddd23742e045ffe286f9ead712b7 inherit pub_attribs_classrapidjson_1_1_generic_value"><td class="memItemLeft" align="right" valign="top"><a id="a45b0ddd23742e045ffe286f9ead712b7"></a> const typedef <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7">ConstValueIterator</a></td></tr> @@ -1137,8 +1173,8 @@ template<typename Encoding , typename Allocator = RAPIDJSON_DEFAULT_ALLOCATO </ul> </div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a0d63efcc43758ac3aed77e868233369d"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument::swap</a></div><div class="ttdeci">friend void swap(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> document.h:2320</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a0d63efcc43758ac3aed77e868233369d"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument::swap</a></div><div class="ttdeci">friend void swap(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> document.h:2587</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gabdaf1a7a4db30fb0e3d927fdf0fabe79"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79">rapidjson::GetParseError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)</div><div class="ttdoc">Maps error code of parsing into error message.</div><div class="ttdef"><b>Definition:</b> en.h:36</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> diff --git a/zh-cn/classrapidjson_1_1_generic_value-members.html b/zh-cn/classrapidjson_1_1_generic_value-members.html index 81eec587..3cb0853a 100644 --- a/zh-cn/classrapidjson_1_1_generic_value-members.html +++ b/zh-cn/classrapidjson_1_1_generic_value-members.html @@ -99,74 +99,85 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_generic_value.html' <tr bgcolor="#f0f0f0"><td class="entry"><b>ConstObject</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7">ConstValueIterator</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> <tr bgcolor="#f0f0f0"><td class="entry"><b>data_</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">EncodingType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GenericDocument</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">GenericValue</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">GenericValue</a>(Type type) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">GenericValue</a>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a>(bool b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">GenericValue</a>(int i) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">GenericValue</a>(unsigned u) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">GenericValue</a>(double d) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">GenericValue</a>(float f) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">GenericValue</a>(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">GenericValue</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">GenericValue</a>(const Ch *s, SizeType length, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">GenericValue</a>(const Ch *s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">GenericValue</a>(const std::basic_string< Ch > &s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a>(Array a) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">GenericValue</a>(Object o) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GetElementsPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetMembersPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>GetStringPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kArrayFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kBoolFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kConstStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kCopyFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kCopyStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kDefaultArrayCapacity</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDefaultObjectCapacity</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kDoubleFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kFalseFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kInlineStrFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kInt64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kIntFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNullFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberAnyFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberDoubleFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberInt64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberIntFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberUint64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberUintFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kObjectFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kShortStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kTrueFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kTypeMask</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>kUint64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kUintFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Object</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">operator=</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">operator=</a>(StringRefType str) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0">RAPIDJSON_DISABLEIF_RETURN</a>((internal::IsPointer< T >),(GenericValue &)) operator</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetArrayRaw</b>(GenericValue *values, SizeType count, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>SetElementsPointer</b>(GenericValue *elements) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetMembersPointer</b>(Member *members) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(Member *members, SizeType count, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetStringPointer</b>(const Ch *str) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(StringRefType s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>StringEqual</b>(const GenericValue< Encoding, SourceAllocator > &rhs) const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DataString</b>(const Data &data) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DataStringLength</b>(const Data &data) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoAddMember</b>(GenericValue &name, GenericValue &value, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoAllocMembers</b>(SizeType capacity, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoClearMembers</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoCopyMembers</b>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoEraseMembers</b>(ConstMemberIterator first, ConstMemberIterator last) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoFindMember</b>(const GenericValue< Encoding, SourceAllocator > &name) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoFreeMembers</b>() (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>DoRemoveMember</b>(MemberIterator m) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DoReserveMembers</b>(SizeType newCapacity, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">EncodingType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenericDocument</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">GenericValue</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">GenericValue</a>(Type type) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">GenericValue</a>(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a>(bool b) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">GenericValue</a>(int i) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">GenericValue</a>(unsigned u) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">GenericValue</a>(double d) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">GenericValue</a>(float f) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">GenericValue</a>(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">GenericValue</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">GenericValue</a>(const Ch *s, SizeType length, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">GenericValue</a>(const Ch *s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">GenericValue</a>(const std::basic_string< Ch > &s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a>(Array a) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">GenericValue</a>(Object o) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetElementsPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>GetMembersPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetStringPointer</b>() const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kArrayFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kBoolFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kConstStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kCopyFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kCopyStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDefaultArrayCapacity</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kDefaultObjectCapacity</b> (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kDoubleFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kFalseFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kInlineStrFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kInt64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kIntFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNullFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberAnyFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberDoubleFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberInt64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberIntFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kNumberUint64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNumberUintFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kObjectFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kShortStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kStringFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kTrueFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kTypeMask</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kUint64Flag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>kUintFlag</b> 枚举值 (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Object</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">operator=</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">operator=</a>(StringRefType str) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0">RAPIDJSON_DISABLEIF_RETURN</a>((internal::IsPointer< T >),(GenericValue &)) operator</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(GenericValue &rhs) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetArrayRaw</b>(GenericValue *values, SizeType count, Allocator &allocator) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetElementsPointer</b>(GenericValue *elements) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetMembersPointer</b>(Member *members) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(Member *members, SizeType count, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>SetStringPointer</b>(const Ch *str) (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(StringRefType s) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(StringRefType s, Allocator &allocator)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StringEqual</b>(const GenericValue< Encoding, SourceAllocator > &rhs) const (定义于 <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">StringRefType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">ValueIterator</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202">ValueType</a> typedef</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>()</td><td class="entry"><a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue< Encoding, Allocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> </table></div><!-- contents --> </div><!-- doc-content --> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/classrapidjson_1_1_generic_value.html b/zh-cn/classrapidjson_1_1_generic_value.html index b4629073..cf74bcd4 100644 --- a/zh-cn/classrapidjson_1_1_generic_value.html +++ b/zh-cn/classrapidjson_1_1_generic_value.html @@ -330,6 +330,35 @@ RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html# <tr class="memitem:a19199230941f1fe59b5b6a27281fcd1b"><td class="memItemLeft" align="right" valign="top"><a id="a19199230941f1fe59b5b6a27281fcd1b"></a> RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> * </td><td class="memItemRight" valign="bottom"><b>SetMembersPointer</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> *members)</td></tr> <tr class="separator:a19199230941f1fe59b5b6a27281fcd1b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9125585f7d3315da5e9aec2b5587bb7d"><td class="memItemLeft" align="right" valign="top"><a id="a9125585f7d3315da5e9aec2b5587bb7d"></a> +RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">Member</a> * </td><td class="memItemRight" valign="bottom"><b>DoAllocMembers</b> (<a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:a9125585f7d3315da5e9aec2b5587bb7d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad4451b6417bf2ada4d8b56ba0b3b6031"><td class="memItemLeft" align="right" valign="top"><a id="ad4451b6417bf2ada4d8b56ba0b3b6031"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoReserveMembers</b> (<a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:ad4451b6417bf2ada4d8b56ba0b3b6031"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a94105ff1a8eeb895cee95fb4eca7781b"><td class="memTemplParams" colspan="2"><a id="a94105ff1a8eeb895cee95fb4eca7781b"></a> +template<typename SourceAllocator > </td></tr> +<tr class="memitem:a94105ff1a8eeb895cee95fb4eca7781b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memTemplItemRight" valign="bottom"><b>DoFindMember</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &name)</td></tr> +<tr class="separator:a94105ff1a8eeb895cee95fb4eca7781b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a1c2162a0a065a59bf465497e5110788c"><td class="memItemLeft" align="right" valign="top"><a id="a1c2162a0a065a59bf465497e5110788c"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoClearMembers</b> ()</td></tr> +<tr class="separator:a1c2162a0a065a59bf465497e5110788c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a7e5cf02ff6ee4938b672d98258a79546"><td class="memItemLeft" align="right" valign="top"><a id="a7e5cf02ff6ee4938b672d98258a79546"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoFreeMembers</b> ()</td></tr> +<tr class="separator:a7e5cf02ff6ee4938b672d98258a79546"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a92627391393b9aa6245275593040cf0a"><td class="memItemLeft" align="right" valign="top"><a id="a92627391393b9aa6245275593040cf0a"></a> +void </td><td class="memItemRight" valign="bottom"><b>DoAddMember</b> (<a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> &name, <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> &value, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> +<tr class="separator:a92627391393b9aa6245275593040cf0a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0655ea1a6fb2cf09f845a4e50b6b961f"><td class="memItemLeft" align="right" valign="top"><a id="a0655ea1a6fb2cf09f845a4e50b6b961f"></a> +<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memItemRight" valign="bottom"><b>DoRemoveMember</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> m)</td></tr> +<tr class="separator:a0655ea1a6fb2cf09f845a4e50b6b961f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a98ce0a47cc6951eb7ee106160e3b637a"><td class="memItemLeft" align="right" valign="top"><a id="a98ce0a47cc6951eb7ee106160e3b637a"></a> +<a class="el" href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">MemberIterator</a> </td><td class="memItemRight" valign="bottom"><b>DoEraseMembers</b> (<a class="el" href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> first, <a class="el" href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">ConstMemberIterator</a> last)</td></tr> +<tr class="separator:a98ce0a47cc6951eb7ee106160e3b637a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aca2fab62d3450b24d46cc9841ed8cfef"><td class="memTemplParams" colspan="2"><a id="aca2fab62d3450b24d46cc9841ed8cfef"></a> +template<typename SourceAllocator > </td></tr> +<tr class="memitem:aca2fab62d3450b24d46cc9841ed8cfef"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>DoCopyMembers</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &rhs, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator, bool copyConstStrings)</td></tr> +<tr class="separator:aca2fab62d3450b24d46cc9841ed8cfef"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9cc2eb5c196affb861560219a4973dd0"><td class="memItemLeft" align="right" valign="top"><a id="a9cc2eb5c196affb861560219a4973dd0"></a> void </td><td class="memItemRight" valign="bottom"><b>SetArrayRaw</b> (<a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a> *values, <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator)</td></tr> <tr class="separator:a9cc2eb5c196affb861560219a4973dd0"><td class="memSeparator" colspan="2"> </td></tr> @@ -353,6 +382,12 @@ void </td><td class="memItemRight" valign="bottom"><a class="el" href="clas template<typename SourceAllocator > </td></tr> <tr class="memitem:a19e954a8f4731fea785abe0defa0ac44"><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><b>StringEqual</b> (const <a class="el" href="classrapidjson_1_1_generic_value.html">GenericValue</a>< <a class="el" href="classrapidjson_1_1_encoding.html">Encoding</a>, SourceAllocator > &rhs) const</td></tr> <tr class="separator:a19e954a8f4731fea785abe0defa0ac44"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a2c26a47d781359b9bd0e4b7b91948bc6"><td class="memItemLeft" align="right" valign="top"><a id="a2c26a47d781359b9bd0e4b7b91948bc6"></a> +static const RAPIDJSON_FORCEINLINE <a class="el" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> * </td><td class="memItemRight" valign="bottom"><b>DataString</b> (const <a class="el" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> &data)</td></tr> +<tr class="separator:a2c26a47d781359b9bd0e4b7b91948bc6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0012e161e17ef746c31b1985a3e34cc6"><td class="memItemLeft" align="right" valign="top"><a id="a0012e161e17ef746c31b1985a3e34cc6"></a> +static RAPIDJSON_FORCEINLINE <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> </td><td class="memItemRight" valign="bottom"><b>DataStringLength</b> (const <a class="el" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> &data)</td></tr> +<tr class="separator:a0012e161e17ef746c31b1985a3e34cc6"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">详细描述</h2> <div class="textblock"><h3>template<typename Encoding, typename Allocator = RAPIDJSON_DEFAULT_ALLOCATOR><br /> diff --git a/zh-cn/classrapidjson_1_1_generic_value.js b/zh-cn/classrapidjson_1_1_generic_value.js index 0247114c..76c7e85f 100644 --- a/zh-cn/classrapidjson_1_1_generic_value.js +++ b/zh-cn/classrapidjson_1_1_generic_value.js @@ -63,6 +63,15 @@ var classrapidjson_1_1_generic_value = [ "GenericValue", "classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8", null ], [ "GenericValue", "classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e", null ], [ "~GenericValue", "classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437", null ], + [ "DoAddMember", "classrapidjson_1_1_generic_value.html#a92627391393b9aa6245275593040cf0a", null ], + [ "DoAllocMembers", "classrapidjson_1_1_generic_value.html#a9125585f7d3315da5e9aec2b5587bb7d", null ], + [ "DoClearMembers", "classrapidjson_1_1_generic_value.html#a1c2162a0a065a59bf465497e5110788c", null ], + [ "DoCopyMembers", "classrapidjson_1_1_generic_value.html#aca2fab62d3450b24d46cc9841ed8cfef", null ], + [ "DoEraseMembers", "classrapidjson_1_1_generic_value.html#a98ce0a47cc6951eb7ee106160e3b637a", null ], + [ "DoFindMember", "classrapidjson_1_1_generic_value.html#a94105ff1a8eeb895cee95fb4eca7781b", null ], + [ "DoFreeMembers", "classrapidjson_1_1_generic_value.html#a7e5cf02ff6ee4938b672d98258a79546", null ], + [ "DoRemoveMember", "classrapidjson_1_1_generic_value.html#a0655ea1a6fb2cf09f845a4e50b6b961f", null ], + [ "DoReserveMembers", "classrapidjson_1_1_generic_value.html#ad4451b6417bf2ada4d8b56ba0b3b6031", null ], [ "GetElementsPointer", "classrapidjson_1_1_generic_value.html#af2475845538fccc217d8cf3e94d6a5e0", null ], [ "GetMembersPointer", "classrapidjson_1_1_generic_value.html#a1f56ed626112cc824a93b6c29afc0cea", null ], [ "GetStringPointer", "classrapidjson_1_1_generic_value.html#ab562c68bda956d38f6c5bd1c47e20213", null ], diff --git a/zh-cn/classrapidjson_1_1_handler.html b/zh-cn/classrapidjson_1_1_handler.html index ac1fc23e..3a44bccb 100644 --- a/zh-cn/classrapidjson_1_1_handler.html +++ b/zh-cn/classrapidjson_1_1_handler.html @@ -119,7 +119,7 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_handler.html','');} </ul> </div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_handler_html"><div class="ttname"><a href="classrapidjson_1_1_handler.html">Handler</a></div><div class="ttdoc">Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> diff --git a/zh-cn/classrapidjson_1_1_memory_pool_allocator-members.html b/zh-cn/classrapidjson_1_1_memory_pool_allocator-members.html index 0f89a5a2..2e94abb7 100644 --- a/zh-cn/classrapidjson_1_1_memory_pool_allocator-members.html +++ b/zh-cn/classrapidjson_1_1_memory_pool_allocator-members.html @@ -95,17 +95,18 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_memory_pool_allocat <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840">Clear</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec">Free</a>(void *ptr) RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29">kNeedFree</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">Malloc</a>(size_t size)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">MemoryPoolAllocator</a>(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">MemoryPoolAllocator</a>(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>MemoryPoolAllocator</b>(const MemoryPoolAllocator &rhs) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">operator!=</a>(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const MemoryPoolAllocator &rhs) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">operator==</a>(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">Realloc</a>(void *originalPtr, size_t originalSize, size_t newSize)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">Shared</a>() const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">Size</a>() const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">~MemoryPoolAllocator</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496">kRefCounted</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344">Malloc</a>(size_t size)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4">MemoryPoolAllocator</a>(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7">MemoryPoolAllocator</a>(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MemoryPoolAllocator</b>(const MemoryPoolAllocator &rhs) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99">operator!=</a>(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const MemoryPoolAllocator &rhs) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724">operator==</a>(const MemoryPoolAllocator &rhs) const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d">Realloc</a>(void *originalPtr, size_t originalSize, size_t newSize)</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc">Shared</a>() const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr class="even"><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265">Size</a>() const RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700">~MemoryPoolAllocator</a>() RAPIDJSON_NOEXCEPT</td><td class="entry"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator< BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> </table></div><!-- contents --> </div><!-- doc-content --> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/classrapidjson_1_1_memory_pool_allocator.html b/zh-cn/classrapidjson_1_1_memory_pool_allocator.html index 32ee421e..61aaa3d8 100644 --- a/zh-cn/classrapidjson_1_1_memory_pool_allocator.html +++ b/zh-cn/classrapidjson_1_1_memory_pool_allocator.html @@ -160,6 +160,10 @@ static void </td><td class="memItemRight" valign="bottom"><a class="el" hre static const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29">kNeedFree</a> = false</td></tr> <tr class="memdesc:a2606d96e19bcfc9d4bf58aefe55c1b29"><td class="mdescLeft"> </td><td class="mdescRight">Tell users that no need to call <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec" title="Frees a memory block (concept Allocator)">Free()</a> with this allocator. (concept <a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a>) <br /></td></tr> <tr class="separator:a2606d96e19bcfc9d4bf58aefe55c1b29"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a285002fe7283af29c222adf63c9c6496"><td class="memItemLeft" align="right" valign="top"><a id="a285002fe7283af29c222adf63c9c6496"></a> +static const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496">kRefCounted</a> = true</td></tr> +<tr class="memdesc:a285002fe7283af29c222adf63c9c6496"><td class="mdescLeft"> </td><td class="mdescRight">Tell users that this allocator is reference counted on copy <br /></td></tr> +<tr class="separator:a285002fe7283af29c222adf63c9c6496"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">详细描述</h2> <div class="textblock"><h3>template<typename BaseAllocator = CrtAllocator><br /> diff --git a/zh-cn/classrapidjson_1_1_std_allocator-members.html b/zh-cn/classrapidjson_1_1_std_allocator-members.html index e03222ab..2ad9304c 100644 --- a/zh-cn/classrapidjson_1_1_std_allocator-members.html +++ b/zh-cn/classrapidjson_1_1_std_allocator-members.html @@ -105,21 +105,22 @@ $(document).ready(function(){initNavTree('classrapidjson_1_1_std_allocator.html' <tr bgcolor="#f0f0f0"><td class="entry"><b>difference_type</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Free</b>(void *ptr) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr> <tr><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c">kNeedFree</a></td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Malloc</b>(size_t size) (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>max_size</b>() const RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator!=</b>(const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>operator==</b>(const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>pointer</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>Realloc</b>(void *originalPtr, size_t originalSize, size_t newSize) (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reference</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>size_type</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b> (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b>() RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b>(const StdAllocator &rhs) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b>(const StdAllocator< U, BaseAllocator > &rhs) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b>(const BaseAllocator &allocator) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> - <tr bgcolor="#f0f0f0"><td class="entry"><b>value_type</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> - <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~StdAllocator</b>() RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kRefCounted</b> (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">static</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>Malloc</b>(size_t size) (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>max_size</b>() const RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>operator!=</b>(const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator==</b>(const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>pointer</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Realloc</b>(void *originalPtr, size_t originalSize, size_t newSize) (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>reference</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>size_type</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b> (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">friend</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b>() RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b>(const StdAllocator &rhs) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StdAllocator</b>(const StdAllocator< U, BaseAllocator > &rhs) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>StdAllocator</b>(const BaseAllocator &allocator) RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> + <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_type</b> typedef (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"></td></tr> + <tr bgcolor="#f0f0f0"><td class="entry"><b>~StdAllocator</b>() RAPIDJSON_NOEXCEPT (定义于 <a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a>)</td><td class="entry"><a class="el" href="classrapidjson_1_1_std_allocator.html">rapidjson::StdAllocator< T, BaseAllocator ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr> </table></div><!-- contents --> </div><!-- doc-content --> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/classrapidjson_1_1_std_allocator.html b/zh-cn/classrapidjson_1_1_std_allocator.html index fb50e390..d3104f72 100644 --- a/zh-cn/classrapidjson_1_1_std_allocator.html +++ b/zh-cn/classrapidjson_1_1_std_allocator.html @@ -203,6 +203,9 @@ static void </td><td class="memItemRight" valign="bottom"><b>Free</b> (void static const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c">kNeedFree</a> = BaseAllocator::kNeedFree</td></tr> <tr class="memdesc:a000e9708918f813fc151020c0a03c62c"><td class="mdescLeft"> </td><td class="mdescRight">rapidjson <a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> concept <br /></td></tr> <tr class="separator:a000e9708918f813fc151020c0a03c62c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad348d692cc81c18d7c195a2c8fe2a9b2"><td class="memItemLeft" align="right" valign="top"><a id="ad348d692cc81c18d7c195a2c8fe2a9b2"></a> +static const bool </td><td class="memItemRight" valign="bottom"><b>kRefCounted</b> = internal::IsRefCounted<BaseAllocator>::<a class="el" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a></td></tr> +<tr class="separator:ad348d692cc81c18d7c195a2c8fe2a9b2"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a> 友元</h2></td></tr> diff --git a/zh-cn/clzll_8h_source.html b/zh-cn/clzll_8h_source.html index e2d09916..10830184 100644 --- a/zh-cn/clzll_8h_source.html +++ b/zh-cn/clzll_8h_source.html @@ -161,7 +161,7 @@ $(document).ready(function(){initNavTree('clzll_8h_source.html','');}); <div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">#endif // RAPIDJSON_CLZLL_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/diyfp_8h_source.html b/zh-cn/diyfp_8h_source.html index de7fcc55..604fed1b 100644 --- a/zh-cn/diyfp_8h_source.html +++ b/zh-cn/diyfp_8h_source.html @@ -347,8 +347,8 @@ $(document).ready(function(){initNavTree('diyfp_8h_source.html','');}); <div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor">#endif // RAPIDJSON_DIYFP_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/document_8h_source.html b/zh-cn/document_8h_source.html index f20a351b..b252855d 100644 --- a/zh-cn/document_8h_source.html +++ b/zh-cn/document_8h_source.html @@ -136,8 +136,8 @@ $(document).ready(function(){initNavTree('document_8h_source.html','');}); <div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor">#include <iterator></span> <span class="comment">// std::random_access_iterator_tag</span></div> <div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  </div> -<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#include <utility></span> <span class="comment">// std::move</span></div> +<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#include <map></span> <span class="comment">// std::multimap</span></div> <div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  </div> <div class="line"><a name="l00053"></a><span class="lineno"> 53</span> RAPIDJSON_NAMESPACE_BEGIN</div> @@ -822,2145 +822,2414 @@ $(document).ready(function(){initNavTree('document_8h_source.html','');}); <div class="line"><a name="l00732"></a><span class="lineno"> 732</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> <div class="line"><a name="l00733"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac"> 733</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding,SourceAllocator></a>& rhs, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator, <span class="keywordtype">bool</span> copyConstStrings = <span class="keyword">false</span>) {</div> <div class="line"><a name="l00734"></a><span class="lineno"> 734</span>  <span class="keywordflow">switch</span> (rhs.GetType()) {</div> -<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>: {</div> -<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count = rhs.data_.o.size;</div> -<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* lm = reinterpret_cast<Member*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>)));</div> -<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>  <span class="keyword">const</span> <span class="keyword">typename</span> <a class="code" href="classrapidjson_1_1_generic_member.html">GenericValue<Encoding,SourceAllocator>::Member</a>* rm = rhs.GetMembersPointer();</div> -<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++) {</div> -<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  <span class="keyword">new</span> (&lm[i].<a class="code" href="classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607">name</a>) <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(rm[i].name, allocator, copyConstStrings);</div> -<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>  <span class="keyword">new</span> (&lm[i].<a class="code" href="classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6">value</a>) <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(rm[i].value, allocator, copyConstStrings);</div> -<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>  }</div> -<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>  data_.f.flags = kObjectFlag;</div> -<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>  data_.o.size = data_.o.capacity = count;</div> -<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>  SetMembersPointer(lm);</div> -<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>  }</div> -<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>: {</div> -<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count = rhs.data_.a.size;</div> -<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* le = reinterpret_cast<GenericValue*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>)));</div> -<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>  <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding,SourceAllocator></a>* re = rhs.GetElementsPointer();</div> -<div class="line"><a name="l00752"></a><span class="lineno"> 752</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++)</div> -<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>  <span class="keyword">new</span> (&le[i]) <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(re[i], allocator, copyConstStrings);</div> -<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>  data_.f.flags = kArrayFlag;</div> -<div class="line"><a name="l00755"></a><span class="lineno"> 755</span>  data_.a.size = data_.a.capacity = count;</div> -<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>  SetElementsPointer(le);</div> -<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>  }</div> -<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> -<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>  <span class="keywordflow">if</span> (rhs.data_.f.flags == kConstStringFlag && !copyConstStrings) {</div> -<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>  data_.f.flags = rhs.data_.f.flags;</div> -<div class="line"><a name="l00762"></a><span class="lineno"> 762</span>  data_ = *reinterpret_cast<const Data*>(&rhs.data_);</div> -<div class="line"><a name="l00763"></a><span class="lineno"> 763</span>  }</div> -<div class="line"><a name="l00764"></a><span class="lineno"> 764</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l00765"></a><span class="lineno"> 765</span>  SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs.GetString(), rhs.GetStringLength()), allocator);</div> -<div class="line"><a name="l00766"></a><span class="lineno"> 766</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00767"></a><span class="lineno"> 767</span>  <span class="keywordflow">default</span>:</div> -<div class="line"><a name="l00768"></a><span class="lineno"> 768</span>  data_.f.flags = rhs.data_.f.flags;</div> -<div class="line"><a name="l00769"></a><span class="lineno"> 769</span>  data_ = *reinterpret_cast<const Data*>(&rhs.data_);</div> -<div class="line"><a name="l00770"></a><span class="lineno"> 770</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00771"></a><span class="lineno"> 771</span>  }</div> -<div class="line"><a name="l00772"></a><span class="lineno"> 772</span>  }</div> -<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="comment"></span> </div> -<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> <span class="comment"> //! Constructor for boolean value.</span></div> -<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="comment"></span><span class="comment"> /*! \param b Boolean value</span></div> -<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> <span class="comment"> \note This constructor is limited to \em real boolean values and rejects</span></div> -<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="comment"> implicitly converted types like arbitrary pointers. Use an explicit cast</span></div> -<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="comment"> to \c bool, if you want to construct a boolean JSON value in such cases.</span></div> -<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="preprocessor">#ifndef RAPIDJSON_DOXYGEN_RUNNING // hide SFINAE from Doxygen</span></div> -<div class="line"><a name="l00781"></a><span class="lineno"> 781</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l00782"></a><span class="lineno"> 782</span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(T b, RAPIDJSON_ENABLEIF((internal::IsSame<bool, T>))) RAPIDJSON_NOEXCEPT <span class="comment">// See #472</span></div> -<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00784"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9"> 784</a></span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a>(<span class="keywordtype">bool</span> b) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00786"></a><span class="lineno"> 786</span>  : data_() {</div> -<div class="line"><a name="l00787"></a><span class="lineno"> 787</span>  <span class="comment">// safe-guard against failing SFINAE</span></div> -<div class="line"><a name="l00788"></a><span class="lineno"> 788</span>  <a class="code" href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a>((<a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">internal::IsSame<bool,T>::Value</a>));</div> -<div class="line"><a name="l00789"></a><span class="lineno"> 789</span>  data_.f.flags = b ? kTrueFlag : kFalseFlag;</div> -<div class="line"><a name="l00790"></a><span class="lineno"> 790</span>  }</div> -<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="comment"></span> </div> -<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="comment"> //! Constructor for int value.</span></div> -<div class="line"><a name="l00793"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19"> 793</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">GenericValue</a>(<span class="keywordtype">int</span> i) RAPIDJSON_NOEXCEPT : data_() {</div> -<div class="line"><a name="l00794"></a><span class="lineno"> 794</span>  data_.n.i64 = i;</div> -<div class="line"><a name="l00795"></a><span class="lineno"> 795</span>  data_.f.flags = (i >= 0) ? (kNumberIntFlag | kUintFlag | kUint64Flag) : kNumberIntFlag;</div> -<div class="line"><a name="l00796"></a><span class="lineno"> 796</span>  }</div> -<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="comment"></span> </div> -<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="comment"> //! Constructor for unsigned value.</span></div> -<div class="line"><a name="l00799"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6"> 799</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">GenericValue</a>(<span class="keywordtype">unsigned</span> u) RAPIDJSON_NOEXCEPT : data_() {</div> -<div class="line"><a name="l00800"></a><span class="lineno"> 800</span>  data_.n.u64 = u; </div> -<div class="line"><a name="l00801"></a><span class="lineno"> 801</span>  data_.f.flags = (u & 0x80000000) ? kNumberUintFlag : (kNumberUintFlag | kIntFlag | kInt64Flag);</div> -<div class="line"><a name="l00802"></a><span class="lineno"> 802</span>  }</div> -<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="comment"></span> </div> -<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="comment"> //! Constructor for int64_t value.</span></div> -<div class="line"><a name="l00805"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8"> 805</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT : data_() {</div> -<div class="line"><a name="l00806"></a><span class="lineno"> 806</span>  data_.n.i64 = i64;</div> -<div class="line"><a name="l00807"></a><span class="lineno"> 807</span>  data_.f.flags = kNumberInt64Flag;</div> -<div class="line"><a name="l00808"></a><span class="lineno"> 808</span>  <span class="keywordflow">if</span> (i64 >= 0) {</div> -<div class="line"><a name="l00809"></a><span class="lineno"> 809</span>  data_.f.flags |= kNumberUint64Flag;</div> -<div class="line"><a name="l00810"></a><span class="lineno"> 810</span>  <span class="keywordflow">if</span> (!(static_cast<uint64_t>(i64) & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x00000000)))</div> -<div class="line"><a name="l00811"></a><span class="lineno"> 811</span>  data_.f.flags |= kUintFlag;</div> -<div class="line"><a name="l00812"></a><span class="lineno"> 812</span>  <span class="keywordflow">if</span> (!(static_cast<uint64_t>(i64) & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> -<div class="line"><a name="l00813"></a><span class="lineno"> 813</span>  data_.f.flags |= kIntFlag;</div> -<div class="line"><a name="l00814"></a><span class="lineno"> 814</span>  }</div> -<div class="line"><a name="l00815"></a><span class="lineno"> 815</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (i64 >= static_cast<int64_t>(<a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> -<div class="line"><a name="l00816"></a><span class="lineno"> 816</span>  data_.f.flags |= kIntFlag;</div> -<div class="line"><a name="l00817"></a><span class="lineno"> 817</span>  }</div> -<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="comment"></span> </div> -<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="comment"> //! Constructor for uint64_t value.</span></div> -<div class="line"><a name="l00820"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563"> 820</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT : data_() {</div> -<div class="line"><a name="l00821"></a><span class="lineno"> 821</span>  data_.n.u64 = u64;</div> -<div class="line"><a name="l00822"></a><span class="lineno"> 822</span>  data_.f.flags = kNumberUint64Flag;</div> -<div class="line"><a name="l00823"></a><span class="lineno"> 823</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0x80000000, 0x00000000)))</div> -<div class="line"><a name="l00824"></a><span class="lineno"> 824</span>  data_.f.flags |= kInt64Flag;</div> -<div class="line"><a name="l00825"></a><span class="lineno"> 825</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x00000000)))</div> -<div class="line"><a name="l00826"></a><span class="lineno"> 826</span>  data_.f.flags |= kUintFlag;</div> -<div class="line"><a name="l00827"></a><span class="lineno"> 827</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> -<div class="line"><a name="l00828"></a><span class="lineno"> 828</span>  data_.f.flags |= kIntFlag;</div> -<div class="line"><a name="l00829"></a><span class="lineno"> 829</span>  }</div> -<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> <span class="comment"></span> </div> -<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="comment"> //! Constructor for double value.</span></div> -<div class="line"><a name="l00832"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a"> 832</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">GenericValue</a>(<span class="keywordtype">double</span> d) RAPIDJSON_NOEXCEPT : data_() { data_.n.d = d; data_.f.flags = kNumberDoubleFlag; }</div> -<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="comment"></span> </div> -<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="comment"> //! Constructor for float value.</span></div> -<div class="line"><a name="l00835"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b"> 835</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">GenericValue</a>(<span class="keywordtype">float</span> f) RAPIDJSON_NOEXCEPT : data_() { data_.n.d = static_cast<double>(f); data_.f.flags = kNumberDoubleFlag; }</div> -<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="comment"></span> </div> -<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="comment"> //! Constructor for constant string (i.e. do not make a copy of string)</span></div> -<div class="line"><a name="l00838"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1"> 838</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) RAPIDJSON_NOEXCEPT : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length)); }</div> -<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="comment"></span> </div> -<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="comment"> //! Constructor for constant string (i.e. do not make a copy of string)</span></div> -<div class="line"><a name="l00841"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941"> 841</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">GenericValue</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s) RAPIDJSON_NOEXCEPT : data_() { SetStringRaw(s); }</div> -<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="comment"></span> </div> -<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> <span class="comment"> //! Constructor for copy-string (i.e. do make a copy of string)</span></div> -<div class="line"><a name="l00844"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2"> 844</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length), allocator); }</div> +<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>:</div> +<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>  DoCopyMembers(rhs, allocator, copyConstStrings);</div> +<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>: {</div> +<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count = rhs.data_.a.size;</div> +<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* le = reinterpret_cast<GenericValue*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>)));</div> +<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>  <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding,SourceAllocator></a>* re = rhs.GetElementsPointer();</div> +<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++)</div> +<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>  <span class="keyword">new</span> (&le[i]) <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(re[i], allocator, copyConstStrings);</div> +<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>  data_.f.flags = kArrayFlag;</div> +<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>  data_.a.size = data_.a.capacity = count;</div> +<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>  SetElementsPointer(le);</div> +<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>  }</div> +<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> +<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>  <span class="keywordflow">if</span> (rhs.data_.f.flags == kConstStringFlag && !copyConstStrings) {</div> +<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>  data_.f.flags = rhs.data_.f.flags;</div> +<div class="line"><a name="l00752"></a><span class="lineno"> 752</span>  data_ = *reinterpret_cast<const Data*>(&rhs.data_);</div> +<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>  }</div> +<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l00755"></a><span class="lineno"> 755</span>  SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs.GetString(), rhs.GetStringLength()), allocator);</div> +<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>  <span class="keywordflow">default</span>:</div> +<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>  data_.f.flags = rhs.data_.f.flags;</div> +<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>  data_ = *reinterpret_cast<const Data*>(&rhs.data_);</div> +<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>  }</div> +<div class="line"><a name="l00762"></a><span class="lineno"> 762</span>  }</div> +<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="comment"></span> </div> +<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <span class="comment"> //! Constructor for boolean value.</span></div> +<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="comment"></span><span class="comment"> /*! \param b Boolean value</span></div> +<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="comment"> \note This constructor is limited to \em real boolean values and rejects</span></div> +<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="comment"> implicitly converted types like arbitrary pointers. Use an explicit cast</span></div> +<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <span class="comment"> to \c bool, if you want to construct a boolean JSON value in such cases.</span></div> +<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <span class="preprocessor">#ifndef RAPIDJSON_DOXYGEN_RUNNING // hide SFINAE from Doxygen</span></div> +<div class="line"><a name="l00771"></a><span class="lineno"> 771</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l00772"></a><span class="lineno"> 772</span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>(T b, RAPIDJSON_ENABLEIF((internal::IsSame<bool, T>))) RAPIDJSON_NOEXCEPT <span class="comment">// See #472</span></div> +<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00774"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9"> 774</a></span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">GenericValue</a>(<span class="keywordtype">bool</span> b) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00776"></a><span class="lineno"> 776</span>  : data_() {</div> +<div class="line"><a name="l00777"></a><span class="lineno"> 777</span>  <span class="comment">// safe-guard against failing SFINAE</span></div> +<div class="line"><a name="l00778"></a><span class="lineno"> 778</span>  <a class="code" href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a>((<a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">internal::IsSame<bool,T>::Value</a>));</div> +<div class="line"><a name="l00779"></a><span class="lineno"> 779</span>  data_.f.flags = b ? kTrueFlag : kFalseFlag;</div> +<div class="line"><a name="l00780"></a><span class="lineno"> 780</span>  }</div> +<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="comment"></span> </div> +<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> <span class="comment"> //! Constructor for int value.</span></div> +<div class="line"><a name="l00783"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19"> 783</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">GenericValue</a>(<span class="keywordtype">int</span> i) RAPIDJSON_NOEXCEPT : data_() {</div> +<div class="line"><a name="l00784"></a><span class="lineno"> 784</span>  data_.n.i64 = i;</div> +<div class="line"><a name="l00785"></a><span class="lineno"> 785</span>  data_.f.flags = (i >= 0) ? (kNumberIntFlag | kUintFlag | kUint64Flag) : kNumberIntFlag;</div> +<div class="line"><a name="l00786"></a><span class="lineno"> 786</span>  }</div> +<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> <span class="comment"></span> </div> +<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> <span class="comment"> //! Constructor for unsigned value.</span></div> +<div class="line"><a name="l00789"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6"> 789</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">GenericValue</a>(<span class="keywordtype">unsigned</span> u) RAPIDJSON_NOEXCEPT : data_() {</div> +<div class="line"><a name="l00790"></a><span class="lineno"> 790</span>  data_.n.u64 = u; </div> +<div class="line"><a name="l00791"></a><span class="lineno"> 791</span>  data_.f.flags = (u & 0x80000000) ? kNumberUintFlag : (kNumberUintFlag | kIntFlag | kInt64Flag);</div> +<div class="line"><a name="l00792"></a><span class="lineno"> 792</span>  }</div> +<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="comment"></span> </div> +<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> <span class="comment"> //! Constructor for int64_t value.</span></div> +<div class="line"><a name="l00795"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8"> 795</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">GenericValue</a>(int64_t i64) RAPIDJSON_NOEXCEPT : data_() {</div> +<div class="line"><a name="l00796"></a><span class="lineno"> 796</span>  data_.n.i64 = i64;</div> +<div class="line"><a name="l00797"></a><span class="lineno"> 797</span>  data_.f.flags = kNumberInt64Flag;</div> +<div class="line"><a name="l00798"></a><span class="lineno"> 798</span>  <span class="keywordflow">if</span> (i64 >= 0) {</div> +<div class="line"><a name="l00799"></a><span class="lineno"> 799</span>  data_.f.flags |= kNumberUint64Flag;</div> +<div class="line"><a name="l00800"></a><span class="lineno"> 800</span>  <span class="keywordflow">if</span> (!(static_cast<uint64_t>(i64) & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x00000000)))</div> +<div class="line"><a name="l00801"></a><span class="lineno"> 801</span>  data_.f.flags |= kUintFlag;</div> +<div class="line"><a name="l00802"></a><span class="lineno"> 802</span>  <span class="keywordflow">if</span> (!(static_cast<uint64_t>(i64) & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> +<div class="line"><a name="l00803"></a><span class="lineno"> 803</span>  data_.f.flags |= kIntFlag;</div> +<div class="line"><a name="l00804"></a><span class="lineno"> 804</span>  }</div> +<div class="line"><a name="l00805"></a><span class="lineno"> 805</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (i64 >= static_cast<int64_t>(<a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> +<div class="line"><a name="l00806"></a><span class="lineno"> 806</span>  data_.f.flags |= kIntFlag;</div> +<div class="line"><a name="l00807"></a><span class="lineno"> 807</span>  }</div> +<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="comment"></span> </div> +<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> <span class="comment"> //! Constructor for uint64_t value.</span></div> +<div class="line"><a name="l00810"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563"> 810</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">GenericValue</a>(uint64_t u64) RAPIDJSON_NOEXCEPT : data_() {</div> +<div class="line"><a name="l00811"></a><span class="lineno"> 811</span>  data_.n.u64 = u64;</div> +<div class="line"><a name="l00812"></a><span class="lineno"> 812</span>  data_.f.flags = kNumberUint64Flag;</div> +<div class="line"><a name="l00813"></a><span class="lineno"> 813</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0x80000000, 0x00000000)))</div> +<div class="line"><a name="l00814"></a><span class="lineno"> 814</span>  data_.f.flags |= kInt64Flag;</div> +<div class="line"><a name="l00815"></a><span class="lineno"> 815</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x00000000)))</div> +<div class="line"><a name="l00816"></a><span class="lineno"> 816</span>  data_.f.flags |= kUintFlag;</div> +<div class="line"><a name="l00817"></a><span class="lineno"> 817</span>  <span class="keywordflow">if</span> (!(u64 & <a class="code" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a>(0xFFFFFFFF, 0x80000000)))</div> +<div class="line"><a name="l00818"></a><span class="lineno"> 818</span>  data_.f.flags |= kIntFlag;</div> +<div class="line"><a name="l00819"></a><span class="lineno"> 819</span>  }</div> +<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="comment"></span> </div> +<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="comment"> //! Constructor for double value.</span></div> +<div class="line"><a name="l00822"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a"> 822</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">GenericValue</a>(<span class="keywordtype">double</span> d) RAPIDJSON_NOEXCEPT : data_() { data_.n.d = d; data_.f.flags = kNumberDoubleFlag; }</div> +<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="comment"></span> </div> +<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="comment"> //! Constructor for float value.</span></div> +<div class="line"><a name="l00825"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b"> 825</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">GenericValue</a>(<span class="keywordtype">float</span> f) RAPIDJSON_NOEXCEPT : data_() { data_.n.d = static_cast<double>(f); data_.f.flags = kNumberDoubleFlag; }</div> +<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="comment"></span> </div> +<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="comment"> //! Constructor for constant string (i.e. do not make a copy of string)</span></div> +<div class="line"><a name="l00828"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1"> 828</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) RAPIDJSON_NOEXCEPT : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length)); }</div> +<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="comment"></span> </div> +<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> <span class="comment"> //! Constructor for constant string (i.e. do not make a copy of string)</span></div> +<div class="line"><a name="l00831"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941"> 831</a></span> <span class="comment"></span> <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">GenericValue</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s) RAPIDJSON_NOEXCEPT : data_() { SetStringRaw(s); }</div> +<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="comment"></span> </div> +<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="comment"> //! Constructor for copy-string (i.e. do make a copy of string)</span></div> +<div class="line"><a name="l00834"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2"> 834</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length), allocator); }</div> +<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="comment"></span> </div> +<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="comment"> //! Constructor for copy-string (i.e. do make a copy of string)</span></div> +<div class="line"><a name="l00837"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f"> 837</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>*s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> +<div class="line"><a name="l00838"></a><span class="lineno"> 838</span>  </div> +<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="comment"> //! Constructor for copy-string from a string object (i.e. do make a copy of string)</span></div> +<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> <span class="comment"></span><span class="comment"> /*! \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> +<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00843"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc"> 843</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">GenericValue</a>(<span class="keyword">const</span> std::basic_string<Ch>& s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> +<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00845"></a><span class="lineno"> 845</span> <span class="comment"></span> </div> -<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="comment"> //! Constructor for copy-string (i.e. do make a copy of string)</span></div> -<div class="line"><a name="l00847"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f"> 847</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">GenericValue</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>*s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> -<div class="line"><a name="l00848"></a><span class="lineno"> 848</span>  </div> -<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="comment"> //! Constructor for copy-string from a string object (i.e. do make a copy of string)</span></div> -<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> <span class="comment"></span><span class="comment"> /*! \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> -<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00853"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc"> 853</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">GenericValue</a>(<span class="keyword">const</span> std::basic_string<Ch>& s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) : data_() { SetStringRaw(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> -<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <span class="comment"></span> </div> -<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="comment"> //! Constructor for Array.</span></div> -<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="comment"> \param a An array obtained by \c GetArray().</span></div> -<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="comment"> \note \c Array is always pass-by-value.</span></div> -<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <span class="comment"> \note the source array is moved into this value and the sourec array becomes empty.</span></div> -<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00862"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8"> 862</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a>(<a class="code" href="classrapidjson_1_1_generic_array.html">Array</a> a) RAPIDJSON_NOEXCEPT : data_(a.value_.data_) {</div> -<div class="line"><a name="l00863"></a><span class="lineno"> 863</span>  a.value_.data_ = Data();</div> -<div class="line"><a name="l00864"></a><span class="lineno"> 864</span>  a.value_.data_.f.flags = kArrayFlag;</div> -<div class="line"><a name="l00865"></a><span class="lineno"> 865</span>  }</div> -<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> <span class="comment"></span> </div> -<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="comment"> //! Constructor for Object.</span></div> -<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="comment"> \param o An object obtained by \c GetObject().</span></div> -<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="comment"> \note \c Object is always pass-by-value.</span></div> -<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> <span class="comment"> \note the source object is moved into this value and the sourec object becomes empty.</span></div> -<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00873"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e"> 873</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">GenericValue</a>(<a class="code" href="classrapidjson_1_1_generic_object.html">Object</a> o) RAPIDJSON_NOEXCEPT : data_(o.value_.data_) {</div> -<div class="line"><a name="l00874"></a><span class="lineno"> 874</span>  o.value_.data_ = Data();</div> -<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>  o.value_.data_.f.flags = kObjectFlag;</div> -<div class="line"><a name="l00876"></a><span class="lineno"> 876</span>  }</div> -<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="comment"></span> </div> -<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="comment"> //! Destructor.</span></div> -<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="comment"></span><span class="comment"> /*! Need to destruct elements of array, members of object, or copy-string.</span></div> -<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00881"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437"> 881</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>() {</div> -<div class="line"><a name="l00882"></a><span class="lineno"> 882</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree) { <span class="comment">// Shortcut by Allocator's trait</span></div> -<div class="line"><a name="l00883"></a><span class="lineno"> 883</span>  <span class="keywordflow">switch</span>(data_.f.flags) {</div> -<div class="line"><a name="l00884"></a><span class="lineno"> 884</span>  <span class="keywordflow">case</span> kArrayFlag:</div> -<div class="line"><a name="l00885"></a><span class="lineno"> 885</span>  {</div> -<div class="line"><a name="l00886"></a><span class="lineno"> 886</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* e = GetElementsPointer();</div> -<div class="line"><a name="l00887"></a><span class="lineno"> 887</span>  <span class="keywordflow">for</span> (<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* v = e; v != e + data_.a.size; ++v)</div> -<div class="line"><a name="l00888"></a><span class="lineno"> 888</span>  v->~GenericValue();</div> -<div class="line"><a name="l00889"></a><span class="lineno"> 889</span>  Allocator::Free(e);</div> -<div class="line"><a name="l00890"></a><span class="lineno"> 890</span>  }</div> -<div class="line"><a name="l00891"></a><span class="lineno"> 891</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00892"></a><span class="lineno"> 892</span>  </div> -<div class="line"><a name="l00893"></a><span class="lineno"> 893</span>  <span class="keywordflow">case</span> kObjectFlag:</div> -<div class="line"><a name="l00894"></a><span class="lineno"> 894</span>  <span class="keywordflow">for</span> (<a class="code" href="classrapidjson_1_1_generic_member_iterator.html">MemberIterator</a> m = MemberBegin(); m != MemberEnd(); ++m)</div> -<div class="line"><a name="l00895"></a><span class="lineno"> 895</span>  m->~Member();</div> -<div class="line"><a name="l00896"></a><span class="lineno"> 896</span>  Allocator::Free(GetMembersPointer());</div> -<div class="line"><a name="l00897"></a><span class="lineno"> 897</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00898"></a><span class="lineno"> 898</span>  </div> -<div class="line"><a name="l00899"></a><span class="lineno"> 899</span>  <span class="keywordflow">case</span> kCopyStringFlag:</div> -<div class="line"><a name="l00900"></a><span class="lineno"> 900</span>  Allocator::Free(const_cast<Ch*>(GetStringPointer()));</div> -<div class="line"><a name="l00901"></a><span class="lineno"> 901</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l00902"></a><span class="lineno"> 902</span>  </div> -<div class="line"><a name="l00903"></a><span class="lineno"> 903</span>  <span class="keywordflow">default</span>:</div> -<div class="line"><a name="l00904"></a><span class="lineno"> 904</span>  <span class="keywordflow">break</span>; <span class="comment">// Do nothing for other types.</span></div> -<div class="line"><a name="l00905"></a><span class="lineno"> 905</span>  }</div> -<div class="line"><a name="l00906"></a><span class="lineno"> 906</span>  }</div> -<div class="line"><a name="l00907"></a><span class="lineno"> 907</span>  }</div> -<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="comment"></span> </div> -<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="comment"> //!@name Assignment operators</span></div> -<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> <span class="comment"> //! Assignment with move semantics.</span></div> -<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> <span class="comment"></span><span class="comment"> /*! \param rhs Source of the assignment. It will become a null value after assignment.</span></div> -<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00917"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac"> 917</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& <a class="code" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">operator=</a>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& rhs) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00918"></a><span class="lineno"> 918</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a>(<span class="keyword">this</span> != &rhs)) {</div> -<div class="line"><a name="l00919"></a><span class="lineno"> 919</span>  <span class="comment">// Can't destroy "this" before assigning "rhs", otherwise "rhs"</span></div> -<div class="line"><a name="l00920"></a><span class="lineno"> 920</span>  <span class="comment">// could be used after free if it's an sub-Value of "this",</span></div> -<div class="line"><a name="l00921"></a><span class="lineno"> 921</span>  <span class="comment">// hence the temporary danse.</span></div> -<div class="line"><a name="l00922"></a><span class="lineno"> 922</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> temp;</div> -<div class="line"><a name="l00923"></a><span class="lineno"> 923</span>  temp.<a class="code" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(rhs);</div> -<div class="line"><a name="l00924"></a><span class="lineno"> 924</span>  this->~<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>();</div> -<div class="line"><a name="l00925"></a><span class="lineno"> 925</span>  RawAssign(temp);</div> -<div class="line"><a name="l00926"></a><span class="lineno"> 926</span>  }</div> -<div class="line"><a name="l00927"></a><span class="lineno"> 927</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00928"></a><span class="lineno"> 928</span>  }</div> -<div class="line"><a name="l00929"></a><span class="lineno"> 929</span>  </div> -<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> <span class="comment"> //! Move assignment in C++11</span></div> -<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& operator=(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>&& rhs) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00933"></a><span class="lineno"> 933</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = rhs.Move();</div> -<div class="line"><a name="l00934"></a><span class="lineno"> 934</span>  }</div> -<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> <span class="comment"></span> </div> -<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> <span class="comment"> //! Assignment of constant string reference (no copy)</span></div> -<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> <span class="comment"></span><span class="comment"> /*! \param str Constant string reference to be assigned</span></div> -<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type assignment overload below.</span></div> -<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> <span class="comment"> \see GenericStringRef, operator=(T)</span></div> -<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00942"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c"> 942</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& <a class="code" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">operator=</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> str) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00943"></a><span class="lineno"> 943</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> s(str);</div> -<div class="line"><a name="l00944"></a><span class="lineno"> 944</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = s;</div> -<div class="line"><a name="l00945"></a><span class="lineno"> 945</span>  }</div> -<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="comment"></span> </div> -<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> <span class="comment"> //! Assignment with primitive types.</span></div> -<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> -<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> <span class="comment"> \param value The value to be assigned.</span></div> -<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="comment"></span> </div> -<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> -<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> -<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> -<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> <span class="comment"> \ref SetString(const Ch*, Allocator&) (for copying) or</span></div> -<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="comment"> \ref StringRef() (to explicitly mark the pointer as constant) instead.</span></div> -<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> -<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> <span class="comment"> use \ref SetBool() instead.</span></div> -<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l00960"></a><span class="lineno"> 960</span>  RAPIDJSON_DISABLEIF_RETURN((internal::IsPointer<T>), (<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>&))</div> -<div class="line"><a name="l00961"></a><span class="lineno"> 961</span>  operator=(T value) {</div> -<div class="line"><a name="l00962"></a><span class="lineno"> 962</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> v(value);</div> -<div class="line"><a name="l00963"></a><span class="lineno"> 963</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = v;</div> -<div class="line"><a name="l00964"></a><span class="lineno"> 964</span>  }</div> -<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="comment"></span> </div> -<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="comment"> //! Deep-copy assignment from Value</span></div> -<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="comment"></span><span class="comment"> /*! Assigns a \b copy of the Value to the current Value object</span></div> -<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="comment"> \tparam SourceAllocator Allocator type of \c rhs</span></div> -<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="comment"> \param rhs Value to copy from (read-only)</span></div> -<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> <span class="comment"> \param allocator Allocator to use for copying</span></div> -<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> <span class="comment"> \param copyConstStrings Force copying of constant strings (e.g. referencing an in-situ buffer)</span></div> -<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00973"></a><span class="lineno"> 973</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l00974"></a><span class="lineno"> 974</span>  GenericValue& CopyFrom(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator, <span class="keywordtype">bool</span> copyConstStrings = <span class="keyword">false</span>) {</div> -<div class="line"><a name="l00975"></a><span class="lineno"> 975</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(static_cast<void*>(<span class="keyword">this</span>) != static_cast<void const*>(&rhs));</div> -<div class="line"><a name="l00976"></a><span class="lineno"> 976</span>  this->~GenericValue();</div> -<div class="line"><a name="l00977"></a><span class="lineno"> 977</span>  <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(rhs, allocator, copyConstStrings);</div> -<div class="line"><a name="l00978"></a><span class="lineno"> 978</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00979"></a><span class="lineno"> 979</span>  }</div> -<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="comment"></span> </div> -<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> <span class="comment"> //! Exchange the contents of this value with those of other.</span></div> -<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="comment"> \param other Another value.</span></div> -<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> <span class="comment"> \note Constant complexity.</span></div> -<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00986"></a><span class="lineno"> 986</span>  GenericValue& Swap(GenericValue& other) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l00987"></a><span class="lineno"> 987</span>  GenericValue temp;</div> -<div class="line"><a name="l00988"></a><span class="lineno"> 988</span>  temp.RawAssign(*<span class="keyword">this</span>);</div> -<div class="line"><a name="l00989"></a><span class="lineno"> 989</span>  RawAssign(other);</div> -<div class="line"><a name="l00990"></a><span class="lineno"> 990</span>  other.RawAssign(temp);</div> -<div class="line"><a name="l00991"></a><span class="lineno"> 991</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l00992"></a><span class="lineno"> 992</span>  }</div> -<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="comment"></span> </div> -<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="comment"> //! free-standing swap function helper</span></div> -<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="comment"> Helper function to enable support for common swap implementation pattern based on \c std::swap:</span></div> -<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="comment"> void swap(MyClass& a, MyClass& b) {</span></div> -<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="comment"> using std::swap;</span></div> -<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="comment"> swap(a.value, b.value);</span></div> -<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> <span class="comment"> // ...</span></div> -<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="comment"> }</span></div> -<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="comment"> \see Swap()</span></div> -<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>  <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> swap(GenericValue& a, GenericValue& b) RAPIDJSON_NOEXCEPT { a.Swap(b); }</div> -<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="comment"></span> </div> -<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="comment"> //! Prepare Value for move semantics</span></div> -<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <span class="comment"></span><span class="comment"> /*! \return *this */</span></div> -<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>  GenericValue& Move() RAPIDJSON_NOEXCEPT { <span class="keywordflow">return</span> *<span class="keyword">this</span>; }<span class="comment"></span></div> -<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="comment"> //!@name Equal-to and not-equal-to operators</span></div> -<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="comment"></span><span class="comment"> //! Equal-to operator</span></div> -<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> <span class="comment"> \note If an object contains duplicated named member, comparing equality with any object is always \c false.</span></div> -<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> <span class="comment"> \note Complexity is quadratic in Object's member number and linear for the rest (number of all values in the subtree and total lengths of all strings).</span></div> -<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs)<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>  <span class="keyword">typedef</span> GenericValue<Encoding, SourceAllocator> RhsType;</div> -<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>  <span class="keywordflow">if</span> (GetType() != rhs.GetType())</div> -<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>  </div> -<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>  <span class="keywordflow">switch</span> (GetType()) {</div> -<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>: <span class="comment">// Warning: O(n^2) inner-loop</span></div> -<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>  <span class="keywordflow">if</span> (data_.o.size != rhs.data_.o.size)</div> -<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>; </div> -<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>  <span class="keywordflow">for</span> (ConstMemberIterator lhsMemberItr = MemberBegin(); lhsMemberItr != MemberEnd(); ++lhsMemberItr) {</div> -<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>  <span class="keyword">typename</span> RhsType::ConstMemberIterator rhsMemberItr = rhs.FindMember(lhsMemberItr->name);</div> -<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>  <span class="keywordflow">if</span> (rhsMemberItr == rhs.MemberEnd() || lhsMemberItr->value != rhsMemberItr->value)</div> -<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>  }</div> -<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>  </div> -<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>:</div> -<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>  <span class="keywordflow">if</span> (data_.a.size != rhs.data_.a.size)</div> -<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < data_.a.size; i++)</div> -<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>  <span class="keywordflow">if</span> ((*<span class="keyword">this</span>)[i] != rhs[i])</div> -<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>  </div> -<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> -<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>  <span class="keywordflow">return</span> StringEqual(rhs);</div> -<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>  </div> -<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>:</div> -<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>  <span class="keywordflow">if</span> (IsDouble() || rhs.IsDouble()) {</div> -<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>  <span class="keywordtype">double</span> a = GetDouble(); <span class="comment">// May convert from integer to double.</span></div> -<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>  <span class="keywordtype">double</span> b = rhs.GetDouble(); <span class="comment">// Ditto</span></div> -<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>  <span class="keywordflow">return</span> a >= b && a <= b; <span class="comment">// Prevent -Wfloat-equal</span></div> -<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>  }</div> -<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>  <span class="keywordflow">return</span> data_.n.u64 == rhs.data_.n.u64;</div> -<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>  </div> -<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>  <span class="keywordflow">default</span>:</div> -<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>  }</div> -<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>  }</div> -<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="comment"></span> </div> -<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <span class="comment"> //! Equal-to operator with const C-string pointer</span></div> -<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="comment"></span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Ch* rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs)); }</div> -<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>  </div> -<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="comment"> //! Equal-to operator with string object</span></div> -<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="comment"></span><span class="comment"> /*! \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> -<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> std::basic_string<Ch>& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs)); }</div> -<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="comment"> //! Constructor for Array.</span></div> +<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> <span class="comment"> \param a An array obtained by \c GetArray().</span></div> +<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="comment"> \note \c Array is always pass-by-value.</span></div> +<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="comment"> \note the source array is moved into this value and the sourec array becomes empty.</span></div> +<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00852"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8"> 852</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">GenericValue</a>(<a class="code" href="classrapidjson_1_1_generic_array.html">Array</a> a) RAPIDJSON_NOEXCEPT : data_(a.value_.data_) {</div> +<div class="line"><a name="l00853"></a><span class="lineno"> 853</span>  a.value_.data_ = Data();</div> +<div class="line"><a name="l00854"></a><span class="lineno"> 854</span>  a.value_.data_.f.flags = kArrayFlag;</div> +<div class="line"><a name="l00855"></a><span class="lineno"> 855</span>  }</div> +<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="comment"></span> </div> +<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="comment"> //! Constructor for Object.</span></div> +<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="comment"> \param o An object obtained by \c GetObject().</span></div> +<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <span class="comment"> \note \c Object is always pass-by-value.</span></div> +<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> <span class="comment"> \note the source object is moved into this value and the sourec object becomes empty.</span></div> +<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00863"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e"> 863</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">GenericValue</a>(<a class="code" href="classrapidjson_1_1_generic_object.html">Object</a> o) RAPIDJSON_NOEXCEPT : data_(o.value_.data_) {</div> +<div class="line"><a name="l00864"></a><span class="lineno"> 864</span>  o.value_.data_ = Data();</div> +<div class="line"><a name="l00865"></a><span class="lineno"> 865</span>  o.value_.data_.f.flags = kObjectFlag;</div> +<div class="line"><a name="l00866"></a><span class="lineno"> 866</span>  }</div> +<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="comment"></span> </div> +<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="comment"> //! Destructor.</span></div> +<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="comment"></span><span class="comment"> /*! Need to destruct elements of array, members of object, or copy-string.</span></div> +<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00871"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437"> 871</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">~GenericValue</a>() {</div> +<div class="line"><a name="l00872"></a><span class="lineno"> 872</span>  <span class="comment">// With RAPIDJSON_USE_MEMBERSMAP, the maps need to be destroyed to release</span></div> +<div class="line"><a name="l00873"></a><span class="lineno"> 873</span>  <span class="comment">// their Allocator if it's refcounted (e.g. MemoryPoolAllocator).</span></div> +<div class="line"><a name="l00874"></a><span class="lineno"> 874</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree || (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">RAPIDJSON_USE_MEMBERSMAP</a>+0 &&</div> +<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>  <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">internal::IsRefCounted<Allocator>::Value</a>)) {</div> +<div class="line"><a name="l00876"></a><span class="lineno"> 876</span>  <span class="keywordflow">switch</span>(data_.f.flags) {</div> +<div class="line"><a name="l00877"></a><span class="lineno"> 877</span>  <span class="keywordflow">case</span> kArrayFlag:</div> +<div class="line"><a name="l00878"></a><span class="lineno"> 878</span>  {</div> +<div class="line"><a name="l00879"></a><span class="lineno"> 879</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* e = GetElementsPointer();</div> +<div class="line"><a name="l00880"></a><span class="lineno"> 880</span>  <span class="keywordflow">for</span> (<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* v = e; v != e + data_.a.size; ++v)</div> +<div class="line"><a name="l00881"></a><span class="lineno"> 881</span>  v->~GenericValue();</div> +<div class="line"><a name="l00882"></a><span class="lineno"> 882</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree) { <span class="comment">// Shortcut by Allocator's trait</span></div> +<div class="line"><a name="l00883"></a><span class="lineno"> 883</span>  Allocator::Free(e);</div> +<div class="line"><a name="l00884"></a><span class="lineno"> 884</span>  }</div> +<div class="line"><a name="l00885"></a><span class="lineno"> 885</span>  }</div> +<div class="line"><a name="l00886"></a><span class="lineno"> 886</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00887"></a><span class="lineno"> 887</span>  </div> +<div class="line"><a name="l00888"></a><span class="lineno"> 888</span>  <span class="keywordflow">case</span> kObjectFlag:</div> +<div class="line"><a name="l00889"></a><span class="lineno"> 889</span>  DoFreeMembers();</div> +<div class="line"><a name="l00890"></a><span class="lineno"> 890</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00891"></a><span class="lineno"> 891</span>  </div> +<div class="line"><a name="l00892"></a><span class="lineno"> 892</span>  <span class="keywordflow">case</span> kCopyStringFlag:</div> +<div class="line"><a name="l00893"></a><span class="lineno"> 893</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree) { <span class="comment">// Shortcut by Allocator's trait</span></div> +<div class="line"><a name="l00894"></a><span class="lineno"> 894</span>  Allocator::Free(const_cast<Ch*>(GetStringPointer()));</div> +<div class="line"><a name="l00895"></a><span class="lineno"> 895</span>  }</div> +<div class="line"><a name="l00896"></a><span class="lineno"> 896</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l00897"></a><span class="lineno"> 897</span>  </div> +<div class="line"><a name="l00898"></a><span class="lineno"> 898</span>  <span class="keywordflow">default</span>:</div> +<div class="line"><a name="l00899"></a><span class="lineno"> 899</span>  <span class="keywordflow">break</span>; <span class="comment">// Do nothing for other types.</span></div> +<div class="line"><a name="l00900"></a><span class="lineno"> 900</span>  }</div> +<div class="line"><a name="l00901"></a><span class="lineno"> 901</span>  }</div> +<div class="line"><a name="l00902"></a><span class="lineno"> 902</span>  }</div> +<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> <span class="comment"></span> </div> +<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <span class="comment"> //!@name Assignment operators</span></div> +<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="comment"> //! Assignment with move semantics.</span></div> +<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="comment"></span><span class="comment"> /*! \param rhs Source of the assignment. It will become a null value after assignment.</span></div> +<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00912"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac"> 912</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& <a class="code" href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">operator=</a>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& rhs) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00913"></a><span class="lineno"> 913</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a>(<span class="keyword">this</span> != &rhs)) {</div> +<div class="line"><a name="l00914"></a><span class="lineno"> 914</span>  <span class="comment">// Can't destroy "this" before assigning "rhs", otherwise "rhs"</span></div> +<div class="line"><a name="l00915"></a><span class="lineno"> 915</span>  <span class="comment">// could be used after free if it's an sub-Value of "this",</span></div> +<div class="line"><a name="l00916"></a><span class="lineno"> 916</span>  <span class="comment">// hence the temporary danse.</span></div> +<div class="line"><a name="l00917"></a><span class="lineno"> 917</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> temp;</div> +<div class="line"><a name="l00918"></a><span class="lineno"> 918</span>  temp.<a class="code" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(rhs);</div> +<div class="line"><a name="l00919"></a><span class="lineno"> 919</span>  this->~<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>();</div> +<div class="line"><a name="l00920"></a><span class="lineno"> 920</span>  RawAssign(temp);</div> +<div class="line"><a name="l00921"></a><span class="lineno"> 921</span>  }</div> +<div class="line"><a name="l00922"></a><span class="lineno"> 922</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00923"></a><span class="lineno"> 923</span>  }</div> +<div class="line"><a name="l00924"></a><span class="lineno"> 924</span>  </div> +<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> <span class="comment"> //! Move assignment in C++11</span></div> +<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& operator=(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>&& rhs) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00928"></a><span class="lineno"> 928</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = rhs.Move();</div> +<div class="line"><a name="l00929"></a><span class="lineno"> 929</span>  }</div> +<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> <span class="comment"></span> </div> +<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="comment"> //! Assignment of constant string reference (no copy)</span></div> +<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="comment"></span><span class="comment"> /*! \param str Constant string reference to be assigned</span></div> +<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type assignment overload below.</span></div> +<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="comment"> \see GenericStringRef, operator=(T)</span></div> +<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00937"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c"> 937</a></span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& <a class="code" href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">operator=</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> str) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00938"></a><span class="lineno"> 938</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> s(str);</div> +<div class="line"><a name="l00939"></a><span class="lineno"> 939</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = s;</div> +<div class="line"><a name="l00940"></a><span class="lineno"> 940</span>  }</div> +<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="comment"></span> </div> +<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> <span class="comment"> //! Assignment with primitive types.</span></div> +<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> +<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> <span class="comment"> \param value The value to be assigned.</span></div> +<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> <span class="comment"></span> </div> +<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> +<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> +<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> +<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> <span class="comment"> \ref SetString(const Ch*, Allocator&) (for copying) or</span></div> +<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="comment"> \ref StringRef() (to explicitly mark the pointer as constant) instead.</span></div> +<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> +<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="comment"> use \ref SetBool() instead.</span></div> +<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00954"></a><span class="lineno"> 954</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l00955"></a><span class="lineno"> 955</span>  RAPIDJSON_DISABLEIF_RETURN((internal::IsPointer<T>), (<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>&))</div> +<div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  operator=(T value) {</div> +<div class="line"><a name="l00957"></a><span class="lineno"> 957</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a> v(value);</div> +<div class="line"><a name="l00958"></a><span class="lineno"> 958</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span> = v;</div> +<div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  }</div> +<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="comment"></span> </div> +<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> <span class="comment"> //! Deep-copy assignment from Value</span></div> +<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="comment"></span><span class="comment"> /*! Assigns a \b copy of the Value to the current Value object</span></div> +<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="comment"> \tparam SourceAllocator Allocator type of \c rhs</span></div> +<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="comment"> \param rhs Value to copy from (read-only)</span></div> +<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="comment"> \param allocator Allocator to use for copying</span></div> +<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="comment"> \param copyConstStrings Force copying of constant strings (e.g. referencing an in-situ buffer)</span></div> +<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00968"></a><span class="lineno"> 968</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l00969"></a><span class="lineno"> 969</span>  GenericValue& CopyFrom(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator, <span class="keywordtype">bool</span> copyConstStrings = <span class="keyword">false</span>) {</div> +<div class="line"><a name="l00970"></a><span class="lineno"> 970</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(static_cast<void*>(<span class="keyword">this</span>) != static_cast<void const*>(&rhs));</div> +<div class="line"><a name="l00971"></a><span class="lineno"> 971</span>  this->~GenericValue();</div> +<div class="line"><a name="l00972"></a><span class="lineno"> 972</span>  <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(rhs, allocator, copyConstStrings);</div> +<div class="line"><a name="l00973"></a><span class="lineno"> 973</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00974"></a><span class="lineno"> 974</span>  }</div> +<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="comment"></span> </div> +<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="comment"> //! Exchange the contents of this value with those of other.</span></div> +<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> <span class="comment"> \param other Another value.</span></div> +<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="comment"> \note Constant complexity.</span></div> +<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00981"></a><span class="lineno"> 981</span>  GenericValue& Swap(GenericValue& other) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l00982"></a><span class="lineno"> 982</span>  GenericValue temp;</div> +<div class="line"><a name="l00983"></a><span class="lineno"> 983</span>  temp.RawAssign(*<span class="keyword">this</span>);</div> +<div class="line"><a name="l00984"></a><span class="lineno"> 984</span>  RawAssign(other);</div> +<div class="line"><a name="l00985"></a><span class="lineno"> 985</span>  other.RawAssign(temp);</div> +<div class="line"><a name="l00986"></a><span class="lineno"> 986</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l00987"></a><span class="lineno"> 987</span>  }</div> +<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <span class="comment"></span> </div> +<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> <span class="comment"> //! free-standing swap function helper</span></div> +<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> <span class="comment"> Helper function to enable support for common swap implementation pattern based on \c std::swap:</span></div> +<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="comment"> void swap(MyClass& a, MyClass& b) {</span></div> +<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="comment"> using std::swap;</span></div> +<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="comment"> swap(a.value, b.value);</span></div> +<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="comment"> // ...</span></div> +<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> <span class="comment"> }</span></div> +<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="comment"> \see Swap()</span></div> +<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>  <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> swap(GenericValue& a, GenericValue& b) RAPIDJSON_NOEXCEPT { a.Swap(b); }</div> +<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="comment"></span> </div> +<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> <span class="comment"> //! Prepare Value for move semantics</span></div> +<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="comment"></span><span class="comment"> /*! \return *this */</span></div> +<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>  GenericValue& Move() RAPIDJSON_NOEXCEPT { <span class="keywordflow">return</span> *<span class="keyword">this</span>; }<span class="comment"></span></div> +<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="comment"> //!@name Equal-to and not-equal-to operators</span></div> +<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> <span class="comment"></span><span class="comment"> //! Equal-to operator</span></div> +<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> <span class="comment"> \note If an object contains duplicated named member, comparing equality with any object is always \c false.</span></div> +<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="comment"> \note Complexity is quadratic in Object's member number and linear for the rest (number of all values in the subtree and total lengths of all strings).</span></div> +<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs)<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>  <span class="keyword">typedef</span> GenericValue<Encoding, SourceAllocator> RhsType;</div> +<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>  <span class="keywordflow">if</span> (GetType() != rhs.GetType())</div> +<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>  </div> +<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>  <span class="keywordflow">switch</span> (GetType()) {</div> +<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>: <span class="comment">// Warning: O(n^2) inner-loop</span></div> +<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>  <span class="keywordflow">if</span> (data_.o.size != rhs.data_.o.size)</div> +<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>; </div> +<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>  <span class="keywordflow">for</span> (ConstMemberIterator lhsMemberItr = MemberBegin(); lhsMemberItr != MemberEnd(); ++lhsMemberItr) {</div> +<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>  <span class="keyword">typename</span> RhsType::ConstMemberIterator rhsMemberItr = rhs.FindMember(lhsMemberItr->name);</div> +<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>  <span class="keywordflow">if</span> (rhsMemberItr == rhs.MemberEnd() || lhsMemberItr->value != rhsMemberItr->value)</div> +<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>  }</div> +<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>  </div> +<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>:</div> +<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>  <span class="keywordflow">if</span> (data_.a.size != rhs.data_.a.size)</div> +<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < data_.a.size; i++)</div> +<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>  <span class="keywordflow">if</span> ((*<span class="keyword">this</span>)[i] != rhs[i])</div> +<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>  </div> +<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> +<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>  <span class="keywordflow">return</span> StringEqual(rhs);</div> +<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>  </div> +<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>:</div> +<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>  <span class="keywordflow">if</span> (IsDouble() || rhs.IsDouble()) {</div> +<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>  <span class="keywordtype">double</span> a = GetDouble(); <span class="comment">// May convert from integer to double.</span></div> +<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>  <span class="keywordtype">double</span> b = rhs.GetDouble(); <span class="comment">// Ditto</span></div> +<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>  <span class="keywordflow">return</span> a >= b && a <= b; <span class="comment">// Prevent -Wfloat-equal</span></div> +<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>  }</div> +<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>  <span class="keywordflow">return</span> data_.n.u64 == rhs.data_.n.u64;</div> +<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>  </div> +<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>  <span class="keywordflow">default</span>:</div> +<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>  }</div> +<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>  }</div> +<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> <span class="comment"></span> </div> +<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <span class="comment"> //! Equal-to operator with const C-string pointer</span></div> +<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> <span class="comment"></span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> Ch* rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs)); }</div> +<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>  </div> +<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="comment"> //! Equal-to operator with string object</span></div> +<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <span class="comment"></span><span class="comment"> /*! \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> +<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>  <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> std::basic_string<Ch>& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(rhs)); }</div> +<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="comment"></span> </div> +<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="comment"> //! Equal-to operator with primitive types</span></div> +<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t, \c double, \c true, \c false</span></div> +<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>,internal::IsGenericValue<T> >), (<span class="keywordtype">bool</span>)) operator==(<span class="keyword">const</span> T& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(rhs); }</div> <div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> <span class="comment"></span> </div> -<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> <span class="comment"> //! Equal-to operator with primitive types</span></div> -<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t, \c double, \c true, \c false</span></div> -<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>,internal::IsGenericValue<T> >), (<span class="keywordtype">bool</span>)) operator==(<span class="keyword">const</span> T& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> *<span class="keyword">this</span> == GenericValue(rhs); }</div> -<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> <span class="comment"></span> </div> -<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> <span class="comment"> //! Not-equal-to operator</span></div> -<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> <span class="comment"></span><span class="comment"> /*! \return !(*this == rhs)</span></div> -<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> -<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="comment"></span> </div> -<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="comment"> //! Not-equal-to operator with const C-string pointer</span></div> -<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> <span class="comment"></span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Ch* rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> -<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> <span class="comment"></span> </div> -<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="comment"> //! Not-equal-to operator with arbitrary types</span></div> -<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> <span class="comment"></span><span class="comment"> /*! \return !(*this == rhs)</span></div> -<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator!=(<span class="keyword">const</span> T& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> -<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>  </div> -<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> <span class="preprocessor">#ifndef __cpp_lib_three_way_comparison</span></div> -<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="comment"> //! Equal-to operator with arbitrary types (symmetric version)</span></div> -<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> <span class="comment"></span><span class="comment"> /*! \return (rhs == lhs)</span></div> +<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> <span class="comment"> //! Not-equal-to operator</span></div> +<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <span class="comment"></span><span class="comment"> /*! \return !(*this == rhs)</span></div> +<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>  <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> +<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> <span class="comment"></span> </div> +<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> <span class="comment"> //! Not-equal-to operator with const C-string pointer</span></div> +<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <span class="comment"></span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> Ch* rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> +<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> <span class="comment"></span> </div> +<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> <span class="comment"> //! Not-equal-to operator with arbitrary types</span></div> +<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="comment"></span><span class="comment"> /*! \return !(*this == rhs)</span></div> +<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator!=(<span class="keyword">const</span> T& rhs)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs); }</div> +<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>  </div> +<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="preprocessor">#ifndef __cpp_lib_three_way_comparison</span></div> +<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> <span class="comment"> //! Equal-to operator with arbitrary types (symmetric version)</span></div> +<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="comment"></span><span class="comment"> /*! \return (rhs == lhs)</span></div> +<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> <span class="keyword">friend</span> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator==(<span class="keyword">const</span> T& lhs, <span class="keyword">const</span> GenericValue& rhs) { <span class="keywordflow">return</span> rhs == lhs; }</div> +<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> <span class="comment"></span> </div> +<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="comment"> //! Not-Equal-to operator with arbitrary types (symmetric version)</span></div> +<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> <span class="comment"></span><span class="comment"> /*! \return !(rhs == lhs)</span></div> <div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> <span class="keyword">friend</span> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator==(<span class="keyword">const</span> T& lhs, <span class="keyword">const</span> GenericValue& rhs) { <span class="keywordflow">return</span> rhs == lhs; }</div> -<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> <span class="comment"></span> </div> -<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> <span class="comment"> //! Not-Equal-to operator with arbitrary types (symmetric version)</span></div> -<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="comment"></span><span class="comment"> /*! \return !(rhs == lhs)</span></div> -<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> <span class="keyword">friend</span> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator!=(<span class="keyword">const</span> T& lhs, <span class="keyword">const</span> GenericValue& rhs) { <span class="keywordflow">return</span> !(rhs == lhs); }<span class="comment"></span></div> -<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> <span class="comment"></span> </div> -<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> <span class="comment"> //!@name Type</span></div> -<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> <span class="comment"></span> </div> -<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>  <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> GetType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> static_cast<Type>(data_.f.flags & kTypeMask); }</div> -<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>  <span class="keywordtype">bool</span> IsNull()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kNullFlag; }</div> -<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>  <span class="keywordtype">bool</span> IsFalse()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kFalseFlag; }</div> -<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>  <span class="keywordtype">bool</span> IsTrue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kTrueFlag; }</div> -<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>  <span class="keywordtype">bool</span> IsBool()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kBoolFlag) != 0; }</div> -<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>  <span class="keywordtype">bool</span> IsObject()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kObjectFlag; }</div> -<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>  <span class="keywordtype">bool</span> IsArray()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kArrayFlag; }</div> -<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>  <span class="keywordtype">bool</span> IsNumber()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kNumberFlag) != 0; }</div> -<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>  <span class="keywordtype">bool</span> IsInt()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kIntFlag) != 0; }</div> -<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>  <span class="keywordtype">bool</span> IsUint()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kUintFlag) != 0; }</div> -<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>  <span class="keywordtype">bool</span> IsInt64()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kInt64Flag) != 0; }</div> -<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>  <span class="keywordtype">bool</span> IsUint64()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kUint64Flag) != 0; }</div> -<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>  <span class="keywordtype">bool</span> IsDouble()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kDoubleFlag) != 0; }</div> -<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>  <span class="keywordtype">bool</span> IsString()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kStringFlag) != 0; }</div> -<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>  </div> -<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>  <span class="comment">// Checks whether a number can be losslessly converted to a double.</span></div> -<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>  <span class="keywordtype">bool</span> IsLosslessDouble()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>  <span class="keywordflow">if</span> (!IsNumber()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>  <span class="keywordflow">if</span> (IsUint64()) {</div> -<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>  uint64_t u = GetUint64();</div> -<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>  <span class="keyword">volatile</span> <span class="keywordtype">double</span> d = static_cast<double>(u);</div> -<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>  <span class="keywordflow">return</span> (d >= 0.0)</div> -<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>  && (d < static_cast<double>((std::numeric_limits<uint64_t>::max)()))</div> -<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>  && (u == static_cast<uint64_t>(d));</div> -<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>  }</div> -<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>  <span class="keywordflow">if</span> (IsInt64()) {</div> -<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>  int64_t i = GetInt64();</div> -<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>  <span class="keyword">volatile</span> <span class="keywordtype">double</span> d = static_cast<double>(i);</div> -<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>  <span class="keywordflow">return</span> (d >= static_cast<double>((std::numeric_limits<int64_t>::min)()))</div> -<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>  && (d < static_cast<double>((std::numeric_limits<int64_t>::max)()))</div> -<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>  && (i == static_cast<int64_t>(d));</div> -<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>  }</div> -<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>; <span class="comment">// double, int, uint are always lossless</span></div> -<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>  }</div> -<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>  </div> -<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>  <span class="comment">// Checks whether a number is a float (possible lossy).</span></div> -<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>  <span class="keywordtype">bool</span> IsFloat()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>  <span class="keywordflow">if</span> ((data_.f.flags & kDoubleFlag) == 0)</div> -<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>  <span class="keywordtype">double</span> d = GetDouble();</div> -<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>  <span class="keywordflow">return</span> d >= -3.4028234e38 && d <= 3.4028234e38;</div> -<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>  }</div> -<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>  <span class="comment">// Checks whether a number can be losslessly converted to a float.</span></div> -<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>  <span class="keywordtype">bool</span> IsLosslessFloat()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>  <span class="keywordflow">if</span> (!IsNumber()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>  <span class="keywordtype">double</span> a = GetDouble();</div> -<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>  <span class="keywordflow">if</span> (a < static_cast<double>(-(std::numeric_limits<float>::max)())</div> -<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>  || a > static_cast<double>((std::numeric_limits<float>::max)()))</div> -<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>  <span class="keywordtype">double</span> b = static_cast<double>(static_cast<float>(a));</div> -<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>  <span class="keywordflow">return</span> a >= b && a <= b; <span class="comment">// Prevent -Wfloat-equal</span></div> -<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>  }</div> +<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> <span class="keyword">friend</span> RAPIDJSON_DISABLEIF_RETURN((internal::IsGenericValue<T>), (<span class="keywordtype">bool</span>)) operator!=(<span class="keyword">const</span> T& lhs, <span class="keyword">const</span> GenericValue& rhs) { <span class="keywordflow">return</span> !(rhs == lhs); }<span class="comment"></span></div> +<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="comment"></span> </div> +<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> <span class="comment"> //!@name Type</span></div> +<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> <span class="comment"></span> </div> +<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>  <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> GetType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> static_cast<Type>(data_.f.flags & kTypeMask); }</div> +<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>  <span class="keywordtype">bool</span> IsNull()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kNullFlag; }</div> +<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>  <span class="keywordtype">bool</span> IsFalse()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kFalseFlag; }</div> +<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>  <span class="keywordtype">bool</span> IsTrue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kTrueFlag; }</div> +<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>  <span class="keywordtype">bool</span> IsBool()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kBoolFlag) != 0; }</div> +<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>  <span class="keywordtype">bool</span> IsObject()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kObjectFlag; }</div> +<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>  <span class="keywordtype">bool</span> IsArray()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_.f.flags == kArrayFlag; }</div> +<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>  <span class="keywordtype">bool</span> IsNumber()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kNumberFlag) != 0; }</div> +<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>  <span class="keywordtype">bool</span> IsInt()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kIntFlag) != 0; }</div> +<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>  <span class="keywordtype">bool</span> IsUint()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kUintFlag) != 0; }</div> +<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>  <span class="keywordtype">bool</span> IsInt64()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kInt64Flag) != 0; }</div> +<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>  <span class="keywordtype">bool</span> IsUint64()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kUint64Flag) != 0; }</div> +<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>  <span class="keywordtype">bool</span> IsDouble()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kDoubleFlag) != 0; }</div> +<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>  <span class="keywordtype">bool</span> IsString()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (data_.f.flags & kStringFlag) != 0; }</div> +<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>  </div> +<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>  <span class="comment">// Checks whether a number can be losslessly converted to a double.</span></div> +<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>  <span class="keywordtype">bool</span> IsLosslessDouble()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>  <span class="keywordflow">if</span> (!IsNumber()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>  <span class="keywordflow">if</span> (IsUint64()) {</div> +<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>  uint64_t u = GetUint64();</div> +<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>  <span class="keyword">volatile</span> <span class="keywordtype">double</span> d = static_cast<double>(u);</div> +<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>  <span class="keywordflow">return</span> (d >= 0.0)</div> +<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>  && (d < static_cast<double>((std::numeric_limits<uint64_t>::max)()))</div> +<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>  && (u == static_cast<uint64_t>(d));</div> +<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>  }</div> +<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>  <span class="keywordflow">if</span> (IsInt64()) {</div> +<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>  int64_t i = GetInt64();</div> +<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>  <span class="keyword">volatile</span> <span class="keywordtype">double</span> d = static_cast<double>(i);</div> +<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>  <span class="keywordflow">return</span> (d >= static_cast<double>((std::numeric_limits<int64_t>::min)()))</div> +<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>  && (d < static_cast<double>((std::numeric_limits<int64_t>::max)()))</div> +<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>  && (i == static_cast<int64_t>(d));</div> +<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>  }</div> +<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>; <span class="comment">// double, int, uint are always lossless</span></div> +<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>  }</div> +<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>  </div> +<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>  <span class="comment">// Checks whether a number is a float (possible lossy).</span></div> +<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>  <span class="keywordtype">bool</span> IsFloat()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>  <span class="keywordflow">if</span> ((data_.f.flags & kDoubleFlag) == 0)</div> +<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>  <span class="keywordtype">double</span> d = GetDouble();</div> +<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>  <span class="keywordflow">return</span> d >= -3.4028234e38 && d <= 3.4028234e38;</div> +<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>  }</div> +<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>  <span class="comment">// Checks whether a number can be losslessly converted to a float.</span></div> +<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>  <span class="keywordtype">bool</span> IsLosslessFloat()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>  <span class="keywordflow">if</span> (!IsNumber()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>  <span class="keywordtype">double</span> a = GetDouble();</div> +<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>  <span class="keywordflow">if</span> (a < static_cast<double>(-(std::numeric_limits<float>::max)())</div> +<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>  || a > static_cast<double>((std::numeric_limits<float>::max)()))</div> +<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>  <span class="keywordtype">double</span> b = static_cast<double>(static_cast<float>(a));</div> +<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>  <span class="keywordflow">return</span> a >= b && a <= b; <span class="comment">// Prevent -Wfloat-equal</span></div> +<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>  }</div> +<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> <span class="comment"></span> </div> +<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> <span class="comment"> //!@name Null</span></div> +<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> <span class="comment"></span><span class="comment"> //@{</span></div> <div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> <span class="comment"></span> </div> -<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> <span class="comment"> //!@name Null</span></div> -<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="comment"></span> </div> -<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>  GenericValue& SetNull() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>  GenericValue& SetNull() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="comment"></span> </div> +<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="comment"> //!@name Bool</span></div> +<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> <span class="comment"></span><span class="comment"> //@{</span></div> <div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> <span class="comment"></span> </div> -<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="comment"> //!@name Bool</span></div> -<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>  <span class="keywordtype">bool</span> GetBool()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsBool()); <span class="keywordflow">return</span> data_.f.flags == kTrueFlag; }<span class="comment"></span></div> +<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> <span class="comment"> //!< Set boolean value</span></div> +<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="comment"></span><span class="comment"> /*! \post IsBool() == true */</span></div> +<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>  GenericValue& SetBool(<span class="keywordtype">bool</span> b) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(b); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> <div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> <span class="comment"></span> </div> -<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>  <span class="keywordtype">bool</span> GetBool()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsBool()); <span class="keywordflow">return</span> data_.f.flags == kTrueFlag; }<span class="comment"></span></div> -<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="comment"> //!< Set boolean value</span></div> -<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> <span class="comment"></span><span class="comment"> /*! \post IsBool() == true */</span></div> -<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>  GenericValue& SetBool(<span class="keywordtype">bool</span> b) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(b); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <span class="comment"></span> </div> -<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> <span class="comment"> //!@name Object</span></div> -<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> <span class="comment"> //! Set this value as an empty object.</span></div> -<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> <span class="comment"></span><span class="comment"> /*! \post IsObject() == true */</span></div> -<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>  GenericValue& SetObject() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> <span class="comment"></span> </div> -<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> <span class="comment"> //! Get the number of members in the object.</span></div> -<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCount()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.size; }</div> -<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> <span class="comment"></span> </div> -<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> <span class="comment"> //! Get the capacity of object.</span></div> -<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCapacity()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.capacity; }</div> -<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> <span class="comment"></span> </div> -<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> <span class="comment"> //! Check whether the object is empty.</span></div> -<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> <span class="comment"></span> <span class="keywordtype">bool</span> ObjectEmpty()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.size == 0; }</div> -<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="comment"></span> </div> -<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <span class="comment"> //! Get a value from an object associated with the name.</span></div> -<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true</span></div> -<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <span class="comment"> \tparam T Either \c Ch or \c const \c Ch (template used for disambiguation with \ref operator[](SizeType))</span></div> -<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> <span class="comment"> \note In version 0.1x, if the member is not found, this function returns a null value. This makes issue 7.</span></div> -<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> <span class="comment"> Since 0.2, if the name is not correct, it will assert.</span></div> -<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> <span class="comment"> If user is unsure whether a member exists, user should use HasMember() first.</span></div> -<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> <span class="comment"> A better approach is to use FindMember().</span></div> -<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> <span class="comment"> //!@name Object</span></div> +<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="comment"> //! Set this value as an empty object.</span></div> +<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> <span class="comment"></span><span class="comment"> /*! \post IsObject() == true */</span></div> +<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>  GenericValue& SetObject() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> <span class="comment"></span> </div> +<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> <span class="comment"> //! Get the number of members in the object.</span></div> +<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCount()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.size; }</div> +<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> <span class="comment"></span> </div> +<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> <span class="comment"> //! Get the capacity of object.</span></div> +<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCapacity()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.capacity; }</div> +<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> <span class="comment"></span> </div> +<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> <span class="comment"> //! Check whether the object is empty.</span></div> +<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> <span class="comment"></span> <span class="keywordtype">bool</span> ObjectEmpty()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> data_.o.size == 0; }</div> +<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> <span class="comment"></span> </div> +<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> <span class="comment"> //! Get a value from an object associated with the name.</span></div> +<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true</span></div> +<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> <span class="comment"> \tparam T Either \c Ch or \c const \c Ch (template used for disambiguation with \ref operator[](SizeType))</span></div> +<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> <span class="comment"> \note In version 0.1x, if the member is not found, this function returns a null value. This makes issue 7.</span></div> +<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="comment"> Since 0.2, if the name is not correct, it will assert.</span></div> +<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <span class="comment"> If user is unsure whether a member exists, user should use HasMember() first.</span></div> +<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> <span class="comment"> A better approach is to use FindMember().</span></div> +<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>  RAPIDJSON_DISABLEIF_RETURN((internal::NotExpr<internal::IsSame<<span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::RemoveConst<T>::Type</a>, Ch> >),(GenericValue&)) operator[](T* name) {</div> +<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> +<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>  <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[n];</div> +<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>  }</div> <div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>  RAPIDJSON_DISABLEIF_RETURN((internal::NotExpr<internal::IsSame<<span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::RemoveConst<T>::Type</a>, Ch> >),(GenericValue&)) operator[](T* name) {</div> -<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> -<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>  <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[n];</div> -<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>  }</div> -<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>  RAPIDJSON_DISABLEIF_RETURN((internal::NotExpr<internal::IsSame<<span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::RemoveConst<T>::Type</a>, Ch> >),(<span class="keyword">const</span> GenericValue&)) operator[](T* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[name]; }</div> -<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <span class="comment"></span> </div> -<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="comment"> //! Get a value from an object associated with the name.</span></div> -<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true</span></div> -<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> <span class="comment"> \tparam SourceAllocator Allocator of the \c name value</span></div> -<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="comment"></span> </div> -<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> <span class="comment"> \note Compared to \ref operator[](T*), this version is faster because it does not need a StrLen().</span></div> -<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> <span class="comment"> And it can also handle strings with embedded null characters.</span></div> -<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> <span class="comment"></span> </div> -<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>  GenericValue& operator[](<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> -<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>  MemberIterator member = FindMember(name);</div> -<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>  <span class="keywordflow">if</span> (member != MemberEnd())</div> -<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>  <span class="keywordflow">return</span> member->value;</div> -<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>  <span class="keywordflow">else</span> {</div> -<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(<span class="keyword">false</span>); <span class="comment">// see above note</span></div> -<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>  </div> -<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>  <span class="comment">// This will generate -Wexit-time-destructors in clang</span></div> -<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>  <span class="comment">// static GenericValue NullValue;</span></div> -<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>  <span class="comment">// return NullValue;</span></div> -<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>  </div> -<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>  <span class="comment">// Use static buffer and placement-new to prevent destruction</span></div> -<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>  <span class="keyword">static</span> <span class="keywordtype">char</span> buffer[<span class="keyword">sizeof</span>(GenericValue)];</div> -<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>  <span class="keywordflow">return</span> *<span class="keyword">new</span> (buffer) GenericValue();</div> -<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>  }</div> -<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>  }</div> -<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>  <span class="keyword">const</span> GenericValue& operator[](<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[name]; }</div> -<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>  </div> -<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> <span class="comment"> //! Get a value from an object associated with name (string object).</span></div> -<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="comment"></span> GenericValue& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))]; }</div> -<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>  <span class="keyword">const</span> GenericValue& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))]; }</div> -<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> <span class="comment"></span> </div> -<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> <span class="comment"> //! Const member iterator</span></div> -<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> -<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>  ConstMemberIterator MemberBegin()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstMemberIterator(GetMembersPointer()); }<span class="comment"></span></div> -<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> <span class="comment"> //! Const \em past-the-end member iterator</span></div> -<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> -<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>  ConstMemberIterator MemberEnd()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstMemberIterator(GetMembersPointer() + data_.o.size); }<span class="comment"></span></div> -<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span> <span class="comment"> //! Member iterator</span></div> -<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> -<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>  MemberIterator MemberBegin() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> MemberIterator(GetMembersPointer()); }<span class="comment"></span></div> -<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> <span class="comment"> //! \em Past-the-end member iterator</span></div> -<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> -<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>  MemberIterator MemberEnd() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> MemberIterator(GetMembersPointer() + data_.o.size); }</div> -<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="comment"></span> </div> -<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> <span class="comment"> //! Request the object to have enough capacity to store members.</span></div> -<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> <span class="comment"></span><span class="comment"> /*! \param newCapacity The capacity that the object at least need to have.</span></div> -<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>  GenericValue& MemberReserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator) {</div> -<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>  <span class="keywordflow">if</span> (newCapacity > data_.o.capacity) {</div> -<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>  SetMembersPointer(reinterpret_cast<Member*>(allocator.Realloc(GetMembersPointer(), data_.o.capacity * <span class="keyword">sizeof</span>(Member), newCapacity * <span class="keyword">sizeof</span>(Member))));</div> -<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>  data_.o.capacity = newCapacity;</div> -<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>  }</div> -<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>  }</div> -<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> <span class="comment"></span> </div> -<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> <span class="comment"> //! Check whether a member exists in the object.</span></div> -<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> <span class="comment"> \return Whether a member with that name exists.</span></div> -<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> -<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> -<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>  </div> -<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> <span class="comment"> //! Check whether a member exists in the object with string object.</span></div> -<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> <span class="comment"> \return Whether a member with that name exists.</span></div> -<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> -<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> -<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span> <span class="comment"></span> </div> -<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span> <span class="comment"> //! Check whether a member exists in the object with GenericValue name.</span></div> -<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span> <span class="comment"> This version is faster because it does not need a StrLen(). It can also handle string with null character.</span></div> -<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> <span class="comment"> \return Whether a member with that name exists.</span></div> -<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> -<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> -<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> <span class="comment"></span> </div> -<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="comment"> //! Find member by name.</span></div> -<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> -<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> -<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span> <span class="comment"></span> </div> -<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span> <span class="comment"> \note Earlier versions of Rapidjson returned a \c NULL pointer, in case</span></div> -<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span> <span class="comment"> the requested member doesn't exist. For consistency with e.g.</span></div> -<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> <span class="comment"> \c std::map, this has been changed to MemberEnd() now.</span></div> -<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>  MemberIterator FindMember(<span class="keyword">const</span> Ch* name) {</div> -<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> -<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>  <span class="keywordflow">return</span> FindMember(n);</div> -<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>  }</div> -<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>  </div> -<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>  ConstMemberIterator FindMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).FindMember(name); }</div> +<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>  RAPIDJSON_DISABLEIF_RETURN((internal::NotExpr<internal::IsSame<<span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::RemoveConst<T>::Type</a>, Ch> >),(<span class="keyword">const</span> GenericValue&)) operator[](T* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[name]; }</div> +<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> <span class="comment"></span> </div> +<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> <span class="comment"> //! Get a value from an object associated with the name.</span></div> +<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true</span></div> +<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> <span class="comment"> \tparam SourceAllocator Allocator of the \c name value</span></div> +<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> <span class="comment"></span> </div> +<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <span class="comment"> \note Compared to \ref operator[](T*), this version is faster because it does not need a StrLen().</span></div> +<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="comment"> And it can also handle strings with embedded null characters.</span></div> +<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <span class="comment"></span> </div> +<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>  GenericValue& operator[](<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>  MemberIterator member = FindMember(name);</div> +<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>  <span class="keywordflow">if</span> (member != MemberEnd())</div> +<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>  <span class="keywordflow">return</span> member->value;</div> +<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>  <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(<span class="keyword">false</span>); <span class="comment">// see above note</span></div> +<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>  </div> +<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>  <span class="comment">// This will generate -Wexit-time-destructors in clang</span></div> +<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>  <span class="comment">// static GenericValue NullValue;</span></div> +<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>  <span class="comment">// return NullValue;</span></div> +<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>  </div> +<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>  <span class="comment">// Use static buffer and placement-new to prevent destruction</span></div> +<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>  <span class="keyword">static</span> <span class="keywordtype">char</span> buffer[<span class="keyword">sizeof</span>(GenericValue)];</div> +<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>  <span class="keywordflow">return</span> *<span class="keyword">new</span> (buffer) GenericValue();</div> +<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>  }</div> +<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>  }</div> +<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>  <span class="keyword">const</span> GenericValue& operator[](<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[name]; }</div> +<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>  </div> +<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> <span class="comment"> //! Get a value from an object associated with name (string object).</span></div> +<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> <span class="comment"></span> GenericValue& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))]; }</div> +<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>  <span class="keyword">const</span> GenericValue& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (*<span class="keyword">this</span>)[GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))]; }</div> +<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> <span class="comment"></span> </div> +<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> <span class="comment"> //! Const member iterator</span></div> +<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> +<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>  ConstMemberIterator MemberBegin()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstMemberIterator(GetMembersPointer()); }<span class="comment"></span></div> +<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> <span class="comment"> //! Const \em past-the-end member iterator</span></div> +<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> +<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>  ConstMemberIterator MemberEnd()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstMemberIterator(GetMembersPointer() + data_.o.size); }<span class="comment"></span></div> +<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="comment"> //! Member iterator</span></div> +<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> +<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>  MemberIterator MemberBegin() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> MemberIterator(GetMembersPointer()); }<span class="comment"></span></div> +<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> <span class="comment"> //! \em Past-the-end member iterator</span></div> +<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span> <span class="comment"></span><span class="comment"> /*! \pre IsObject() == true */</span></div> +<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>  MemberIterator MemberEnd() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> MemberIterator(GetMembersPointer() + data_.o.size); }</div> +<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> <span class="comment"></span> </div> +<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span> <span class="comment"> //! Request the object to have enough capacity to store members.</span></div> +<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> <span class="comment"></span><span class="comment"> /*! \param newCapacity The capacity that the object at least need to have.</span></div> +<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>  GenericValue& MemberReserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator) {</div> +<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>  DoReserveMembers(newCapacity, allocator);</div> +<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>  }</div> +<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span> <span class="comment"></span> </div> +<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> <span class="comment"> //! Check whether a member exists in the object.</span></div> +<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span> <span class="comment"> \return Whether a member with that name exists.</span></div> +<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> +<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> +<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>  </div> +<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> <span class="comment"> //! Check whether a member exists in the object with string object.</span></div> +<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> <span class="comment"> \return Whether a member with that name exists.</span></div> +<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> +<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> +<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> <span class="comment"></span> </div> +<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="comment"> //! Check whether a member exists in the object with GenericValue name.</span></div> +<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> <span class="comment"> This version is faster because it does not need a StrLen(). It can also handle string with null character.</span></div> +<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span> <span class="comment"> \return Whether a member with that name exists.</span></div> +<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> <span class="comment"> \note It is better to use FindMember() directly if you need the obtain the value as well.</span></div> +<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(name) != MemberEnd(); }</div> +<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> <span class="comment"></span> </div> +<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span> <span class="comment"> //! Find member by name.</span></div> +<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> +<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> +<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span> <span class="comment"></span> </div> +<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> <span class="comment"> \note Earlier versions of Rapidjson returned a \c NULL pointer, in case</span></div> +<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="comment"> the requested member doesn't exist. For consistency with e.g.</span></div> +<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> <span class="comment"> \c std::map, this has been changed to MemberEnd() now.</span></div> +<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>  MemberIterator FindMember(<span class="keyword">const</span> Ch* name) {</div> +<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> +<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>  <span class="keywordflow">return</span> FindMember(n);</div> +<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>  }</div> +<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>  </div> +<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>  ConstMemberIterator FindMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).FindMember(name); }</div> +<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> <span class="comment"></span> </div> +<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> <span class="comment"> //! Find member by name.</span></div> +<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> <span class="comment"> This version is faster because it does not need a StrLen(). It can also handle string with null character.</span></div> +<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> +<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> <div class="line"><a name="l01327"></a><span class="lineno"> 1327</span> <span class="comment"></span> </div> -<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> <span class="comment"> //! Find member by name.</span></div> -<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="comment"> This version is faster because it does not need a StrLen(). It can also handle string with null character.</span></div> -<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> -<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> -<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span> <span class="comment"></span> </div> -<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> <span class="comment"> \note Earlier versions of Rapidjson returned a \c NULL pointer, in case</span></div> -<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> <span class="comment"> the requested member doesn't exist. For consistency with e.g.</span></div> -<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span> <span class="comment"> \c std::map, this has been changed to MemberEnd() now.</span></div> -<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>  MemberIterator FindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> -<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(name.IsString());</div> -<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>  MemberIterator member = MemberBegin();</div> -<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>  <span class="keywordflow">for</span> ( ; member != MemberEnd(); ++member)</div> -<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>  <span class="keywordflow">if</span> (name.StringEqual(member->name))</div> -<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>  <span class="keywordflow">break</span>;</div> -<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>  <span class="keywordflow">return</span> member;</div> -<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>  }</div> -<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> ConstMemberIterator FindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).FindMember(name); }</div> -<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>  </div> -<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> <span class="comment"> //! Find member by string object name.</span></div> -<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> <span class="comment"> \param name Member name to be searched.</span></div> -<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> <span class="comment"> \pre IsObject() == true</span></div> -<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> -<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> -<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>  MemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> FindMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>  ConstMemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> <span class="comment"></span> </div> -<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span> <span class="comment"> //! Add a member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> -<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span> <span class="comment"> \param value Value of any type.</span></div> -<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> <span class="comment"> \note The ownership of \c name and \c value will be transferred to this object on success.</span></div> -<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> <span class="comment"> \pre IsObject() && name.IsString()</span></div> -<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> <span class="comment"> \post name.IsNull() && value.IsNull()</span></div> -<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>  GenericValue& AddMember(GenericValue& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(name.IsString());</div> -<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>  </div> -<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>  ObjectData& o = data_.o;</div> -<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>  <span class="keywordflow">if</span> (o.size >= o.capacity)</div> -<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>  MemberReserve(o.capacity == 0 ? kDefaultObjectCapacity : (o.capacity + (o.capacity + 1) / 2), allocator);</div> -<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>  Member* members = GetMembersPointer();</div> -<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>  members[o.size].name.RawAssign(name);</div> -<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>  members[o.size].value.RawAssign(value);</div> -<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>  o.size++;</div> -<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>  }</div> -<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> <span class="comment"></span> </div> -<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="comment"> //! Add a constant string value as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> -<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> <span class="comment"> \param value constant string reference as value of member.</span></div> -<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(GenericValue&,T,Allocator&) overload below.</span></div> -<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>  GenericValue& AddMember(GenericValue& name, StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>  GenericValue v(value);</div> -<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> -<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>  }</div> -<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>  </div> -<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> <span class="comment"> //! Add a string object as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> -<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> <span class="comment"> \param value constant string reference as value of member.</span></div> -<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(GenericValue&,T,Allocator&) overload below.</span></div> -<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>  GenericValue& AddMember(GenericValue& name, std::basic_string<Ch>& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>  GenericValue v(value, allocator);</div> -<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> -<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>  }</div> -<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span> <span class="comment"></span> </div> -<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span> <span class="comment"> //! Add any primitive value as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> -<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span> <span class="comment"> \param name A string value as name of member.</span></div> -<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> <span class="comment"> \param value Value of primitive type \c T as value of member</span></div> -<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span> <span class="comment"> \param allocator Allocator for reallocating memory. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span> <span class="comment"></span> </div> -<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> -<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> -<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> -<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span> <span class="comment"> \ref AddMember(StringRefType, GenericValue&, Allocator&) or \ref</span></div> -<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span> <span class="comment"> AddMember(StringRefType, StringRefType, Allocator&).</span></div> -<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> -<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> -<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> -<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>  AddMember(GenericValue& name, T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>  GenericValue v(value);</div> -<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> -<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>  }</div> -<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>  </div> -<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>  GenericValue& AddMember(GenericValue&& name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> -<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>  }</div> -<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>  GenericValue& AddMember(GenericValue&& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> -<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>  }</div> -<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>  GenericValue& AddMember(GenericValue& name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> -<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>  }</div> -<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>  GenericValue& AddMember(StringRefType name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>  GenericValue n(name);</div> -<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> -<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>  }</div> -<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>  </div> -<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> <span class="comment"></span> </div> -<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> <span class="comment"> //! Add a member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> <span class="comment"></span><span class="comment"> /*! \param name A constant string reference as name of member.</span></div> -<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> <span class="comment"> \param value Value of any type.</span></div> -<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span> <span class="comment"> \note The ownership of \c value will be transferred to this object on success.</span></div> -<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span> <span class="comment"> \post value.IsNull()</span></div> -<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>  GenericValue& AddMember(StringRefType name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>  GenericValue n(name);</div> -<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> -<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>  }</div> -<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> <span class="comment"></span> </div> -<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> <span class="comment"> //! Add a constant string value as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> <span class="comment"></span><span class="comment"> /*! \param name A constant string reference as name of member.</span></div> -<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> <span class="comment"> \param value constant string reference as value of member.</span></div> -<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(StringRefType,T,Allocator&) overload below.</span></div> -<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>  GenericValue& AddMember(StringRefType name, StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>  GenericValue v(value);</div> -<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> -<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>  }</div> -<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span> <span class="comment"></span> </div> -<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span> <span class="comment"> //! Add any primitive value as member (name-value pair) to the object.</span></div> -<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> -<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span> <span class="comment"> \param name A constant string reference as name of member.</span></div> -<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span> <span class="comment"> \param value Value of primitive type \c T as value of member</span></div> -<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> <span class="comment"> \param allocator Allocator for reallocating memory. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span> <span class="comment"> \pre IsObject()</span></div> -<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> <span class="comment"></span> </div> -<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> -<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> -<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> -<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span> <span class="comment"> \ref AddMember(StringRefType, GenericValue&, Allocator&) or \ref</span></div> -<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span> <span class="comment"> AddMember(StringRefType, StringRefType, Allocator&).</span></div> -<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> -<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> -<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> -<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> -<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>  AddMember(StringRefType name, T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>  GenericValue n(name);</div> -<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> -<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>  }</div> -<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span> <span class="comment"></span> </div> -<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span> <span class="comment"> //! Remove all members in the object.</span></div> -<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span> <span class="comment"></span><span class="comment"> /*! This function do not deallocate memory in the object, i.e. the capacity is unchanged.</span></div> -<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>  <span class="keywordtype">void</span> RemoveAllMembers() {</div> -<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); </div> -<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>  <span class="keywordflow">for</span> (MemberIterator m = MemberBegin(); m != MemberEnd(); ++m)</div> -<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>  m->~Member();</div> -<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>  data_.o.size = 0;</div> -<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>  }</div> -<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span> <span class="comment"></span> </div> -<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span> <span class="comment"> //! Remove a member in object by its name.</span></div> -<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span> <span class="comment"></span><span class="comment"> /*! \param name Name of member to be removed.</span></div> -<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span> <span class="comment"> \return Whether the member existed.</span></div> -<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span> <span class="comment"> \note This function may reorder the object members. Use \ref</span></div> -<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span> <span class="comment"> EraseMember(ConstMemberIterator) if you need to preserve the</span></div> -<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span> <span class="comment"> relative order of the remaining members.</span></div> -<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> Ch* name) {</div> -<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> -<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>  <span class="keywordflow">return</span> RemoveMember(n);</div> -<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>  }</div> -<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>  </div> -<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> RemoveMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>  </div> -<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> -<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>  MemberIterator m = FindMember(name);</div> -<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>  <span class="keywordflow">if</span> (m != MemberEnd()) {</div> -<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>  RemoveMember(m);</div> -<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>  }</div> -<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>  }</div> -<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span> <span class="comment"></span> </div> -<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span> <span class="comment"> //! Remove a member in object by iterator.</span></div> -<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span> <span class="comment"></span><span class="comment"> /*! \param m member iterator (obtained by FindMember() or MemberBegin()).</span></div> -<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span> <span class="comment"> \return the new iterator after removal.</span></div> -<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span> <span class="comment"> \note This function may reorder the object members. Use \ref</span></div> -<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span> <span class="comment"> EraseMember(ConstMemberIterator) if you need to preserve the</span></div> -<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span> <span class="comment"> relative order of the remaining members.</span></div> -<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span> <span class="comment"> \note Constant time complexity.</span></div> -<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>  MemberIterator RemoveMember(MemberIterator m) {</div> -<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.o.size > 0);</div> -<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetMembersPointer() != 0);</div> -<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(m >= MemberBegin() && m < MemberEnd());</div> -<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>  </div> -<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>  MemberIterator last(GetMembersPointer() + (data_.o.size - 1));</div> -<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>  <span class="keywordflow">if</span> (data_.o.size > 1 && m != last)</div> -<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>  *m = *last; <span class="comment">// Move the last one to this place</span></div> -<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>  m->~Member(); <span class="comment">// Only one left, just destroy</span></div> -<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>  --data_.o.size;</div> -<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>  <span class="keywordflow">return</span> m;</div> -<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>  }</div> -<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span> <span class="comment"></span> </div> -<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span> <span class="comment"> //! Remove a member from an object by iterator.</span></div> -<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span> <span class="comment"></span><span class="comment"> /*! \param pos iterator to the member to remove</span></div> -<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span> <span class="comment"> \pre IsObject() == true && \ref MemberBegin() <= \c pos < \ref MemberEnd()</span></div> -<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span> <span class="comment"> \return Iterator following the removed element.</span></div> -<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span> <span class="comment"> If the iterator \c pos refers to the last element, the \ref MemberEnd() iterator is returned.</span></div> -<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span> <span class="comment"> \note This function preserves the relative order of the remaining object</span></div> -<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span> <span class="comment"> members. If you do not need this, use the more efficient \ref RemoveMember(MemberIterator).</span></div> +<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> <span class="comment"> \note Earlier versions of Rapidjson returned a \c NULL pointer, in case</span></div> +<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> <span class="comment"> the requested member doesn't exist. For consistency with e.g.</span></div> +<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="comment"> \c std::map, this has been changed to MemberEnd() now.</span></div> +<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>  MemberIterator FindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(name.IsString());</div> +<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>  <span class="keywordflow">return</span> DoFindMember(name);</div> +<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>  }</div> +<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> ConstMemberIterator FindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).FindMember(name); }</div> +<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>  </div> +<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> <span class="comment"> //! Find member by string object name.</span></div> +<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> <span class="comment"> \param name Member name to be searched.</span></div> +<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> <span class="comment"> \pre IsObject() == true</span></div> +<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> <span class="comment"> \return Iterator to member, if it exists.</span></div> +<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> <span class="comment"> Otherwise returns \ref MemberEnd().</span></div> +<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>  MemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> FindMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>  ConstMemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FindMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> <span class="comment"></span> </div> +<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> <span class="comment"> //! Add a member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> +<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> <span class="comment"> \param value Value of any type.</span></div> +<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> <span class="comment"> \note The ownership of \c name and \c value will be transferred to this object on success.</span></div> +<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> <span class="comment"> \pre IsObject() && name.IsString()</span></div> +<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> <span class="comment"> \post name.IsNull() && value.IsNull()</span></div> +<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>  GenericValue& AddMember(GenericValue& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(name.IsString());</div> +<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>  DoAddMember(name, value, allocator);</div> +<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>  }</div> +<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> <span class="comment"></span> </div> +<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> <span class="comment"> //! Add a constant string value as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> +<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> <span class="comment"> \param value constant string reference as value of member.</span></div> +<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(GenericValue&,T,Allocator&) overload below.</span></div> +<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>  GenericValue& AddMember(GenericValue& name, StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>  GenericValue v(value);</div> +<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> +<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>  }</div> +<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>  </div> +<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span> <span class="comment"> //! Add a string object as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span> <span class="comment"></span><span class="comment"> /*! \param name A string value as name of member.</span></div> +<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span> <span class="comment"> \param value constant string reference as value of member.</span></div> +<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(GenericValue&,T,Allocator&) overload below.</span></div> +<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>  GenericValue& AddMember(GenericValue& name, std::basic_string<Ch>& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>  GenericValue v(value, allocator);</div> +<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> +<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>  }</div> +<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span> <span class="comment"></span> </div> +<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span> <span class="comment"> //! Add any primitive value as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> +<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span> <span class="comment"> \param name A string value as name of member.</span></div> +<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> <span class="comment"> \param value Value of primitive type \c T as value of member</span></div> +<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> <span class="comment"> \param allocator Allocator for reallocating memory. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> <span class="comment"></span> </div> +<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> +<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> +<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> +<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> <span class="comment"> \ref AddMember(StringRefType, GenericValue&, Allocator&) or \ref</span></div> +<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> <span class="comment"> AddMember(StringRefType, StringRefType, Allocator&).</span></div> +<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> +<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> +<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> +<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>  AddMember(GenericValue& name, T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>  GenericValue v(value);</div> +<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> +<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>  }</div> +<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>  </div> +<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>  GenericValue& AddMember(GenericValue&& name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> +<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>  }</div> +<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>  GenericValue& AddMember(GenericValue&& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> +<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>  }</div> +<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>  GenericValue& AddMember(GenericValue& name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>  <span class="keywordflow">return</span> AddMember(name, value, allocator);</div> +<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>  }</div> +<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>  GenericValue& AddMember(StringRefType name, GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>  GenericValue n(name);</div> +<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> +<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>  }</div> +<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>  </div> +<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span> <span class="comment"></span> </div> +<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span> <span class="comment"> //! Add a member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span> <span class="comment"></span><span class="comment"> /*! \param name A constant string reference as name of member.</span></div> +<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> <span class="comment"> \param value Value of any type.</span></div> +<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span> <span class="comment"> \note The ownership of \c value will be transferred to this object on success.</span></div> +<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span> <span class="comment"> \post value.IsNull()</span></div> +<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>  GenericValue& AddMember(StringRefType name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>  GenericValue n(name);</div> +<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> +<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>  }</div> +<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span> <span class="comment"></span> </div> +<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span> <span class="comment"> //! Add a constant string value as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> <span class="comment"></span><span class="comment"> /*! \param name A constant string reference as name of member.</span></div> +<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span> <span class="comment"> \param value constant string reference as value of member.</span></div> +<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> <span class="comment"> \note This overload is needed to avoid clashes with the generic primitive type AddMember(StringRefType,T,Allocator&) overload below.</span></div> +<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>  GenericValue& AddMember(StringRefType name, StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>  GenericValue v(value);</div> +<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>  <span class="keywordflow">return</span> AddMember(name, v, allocator);</div> +<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>  }</div> +<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> <span class="comment"></span> </div> +<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span> <span class="comment"> //! Add any primitive value as member (name-value pair) to the object.</span></div> +<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> +<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span> <span class="comment"> \param name A constant string reference as name of member.</span></div> +<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span> <span class="comment"> \param value Value of primitive type \c T as value of member</span></div> +<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> <span class="comment"> \param allocator Allocator for reallocating memory. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> <span class="comment"> \pre IsObject()</span></div> +<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> <span class="comment"></span> </div> +<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> +<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> +<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> +<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> <span class="comment"> \ref AddMember(StringRefType, GenericValue&, Allocator&) or \ref</span></div> +<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> <span class="comment"> AddMember(StringRefType, StringRefType, Allocator&).</span></div> +<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> +<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> +<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span> <span class="comment"> \note Amortized Constant time complexity.</span></div> +<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> +<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>  AddMember(StringRefType name, T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>  GenericValue n(name);</div> +<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>  <span class="keywordflow">return</span> AddMember(n, value, allocator);</div> +<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>  }</div> +<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> <span class="comment"></span> </div> +<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> <span class="comment"> //! Remove all members in the object.</span></div> +<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span> <span class="comment"></span><span class="comment"> /*! This function do not deallocate memory in the object, i.e. the capacity is unchanged.</span></div> +<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>  <span class="keywordtype">void</span> RemoveAllMembers() {</div> +<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); </div> +<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>  DoClearMembers();</div> +<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>  }</div> +<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span> <span class="comment"></span> </div> +<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span> <span class="comment"> //! Remove a member in object by its name.</span></div> +<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> <span class="comment"></span><span class="comment"> /*! \param name Name of member to be removed.</span></div> +<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> <span class="comment"> \return Whether the member existed.</span></div> +<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span> <span class="comment"> \note This function may reorder the object members. Use \ref</span></div> +<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span> <span class="comment"> EraseMember(ConstMemberIterator) if you need to preserve the</span></div> +<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span> <span class="comment"> relative order of the remaining members.</span></div> +<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> Ch* name) {</div> +<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> +<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>  <span class="keywordflow">return</span> RemoveMember(n);</div> +<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>  }</div> +<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>  </div> +<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> RemoveMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>  </div> +<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>  MemberIterator m = FindMember(name);</div> +<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>  <span class="keywordflow">if</span> (m != MemberEnd()) {</div> +<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>  RemoveMember(m);</div> +<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>  }</div> +<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>  }</div> +<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span> <span class="comment"></span> </div> +<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span> <span class="comment"> //! Remove a member in object by iterator.</span></div> +<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span> <span class="comment"></span><span class="comment"> /*! \param m member iterator (obtained by FindMember() or MemberBegin()).</span></div> +<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span> <span class="comment"> \return the new iterator after removal.</span></div> +<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span> <span class="comment"> \note This function may reorder the object members. Use \ref</span></div> +<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span> <span class="comment"> EraseMember(ConstMemberIterator) if you need to preserve the</span></div> +<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span> <span class="comment"> relative order of the remaining members.</span></div> +<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span> <span class="comment"> \note Constant time complexity.</span></div> +<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>  MemberIterator RemoveMember(MemberIterator m) {</div> +<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.o.size > 0);</div> +<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetMembersPointer() != 0);</div> +<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(m >= MemberBegin() && m < MemberEnd());</div> +<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>  <span class="keywordflow">return</span> DoRemoveMember(m);</div> +<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>  }</div> +<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span> <span class="comment"></span> </div> +<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span> <span class="comment"> //! Remove a member from an object by iterator.</span></div> +<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span> <span class="comment"></span><span class="comment"> /*! \param pos iterator to the member to remove</span></div> +<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span> <span class="comment"> \pre IsObject() == true && \ref MemberBegin() <= \c pos < \ref MemberEnd()</span></div> +<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span> <span class="comment"> \return Iterator following the removed element.</span></div> +<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span> <span class="comment"> If the iterator \c pos refers to the last element, the \ref MemberEnd() iterator is returned.</span></div> +<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span> <span class="comment"> \note This function preserves the relative order of the remaining object</span></div> +<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span> <span class="comment"> members. If you do not need this, use the more efficient \ref RemoveMember(MemberIterator).</span></div> +<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>  MemberIterator EraseMember(ConstMemberIterator pos) {</div> +<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>  <span class="keywordflow">return</span> EraseMember(pos, pos +1);</div> +<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>  }</div> +<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> <span class="comment"></span> </div> +<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span> <span class="comment"> //! Remove members in the range [first, last) from an object.</span></div> +<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span> <span class="comment"></span><span class="comment"> /*! \param first iterator to the first member to remove</span></div> +<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span> <span class="comment"> \param last iterator following the last member to remove</span></div> +<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span> <span class="comment"> \pre IsObject() == true && \ref MemberBegin() <= \c first <= \c last <= \ref MemberEnd()</span></div> +<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span> <span class="comment"> \return Iterator following the last removed element.</span></div> +<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span> <span class="comment"> \note This function preserves the relative order of the remaining object</span></div> +<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span> <span class="comment"> members.</span></div> +<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>  MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterator last) {</div> +<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> +<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.o.size > 0);</div> +<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetMembersPointer() != 0);</div> +<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first >= MemberBegin());</div> +<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first <= last);</div> +<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(last <= MemberEnd());</div> +<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>  <span class="keywordflow">return</span> DoEraseMembers(first, last);</div> +<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>  }</div> +<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span> <span class="comment"></span> </div> +<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span> <span class="comment"> //! Erase a member in object by its name.</span></div> +<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span> <span class="comment"></span><span class="comment"> /*! \param name Name of member to be removed.</span></div> +<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span> <span class="comment"> \return Whether the member existed.</span></div> <div class="line"><a name="l01582"></a><span class="lineno"> 1582</span> <span class="comment"> \note Linear time complexity.</span></div> <div class="line"><a name="l01583"></a><span class="lineno"> 1583</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>  MemberIterator EraseMember(ConstMemberIterator pos) {</div> -<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>  <span class="keywordflow">return</span> EraseMember(pos, pos +1);</div> -<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>  }</div> -<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span> <span class="comment"></span> </div> -<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span> <span class="comment"> //! Remove members in the range [first, last) from an object.</span></div> -<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span> <span class="comment"></span><span class="comment"> /*! \param first iterator to the first member to remove</span></div> -<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span> <span class="comment"> \param last iterator following the last member to remove</span></div> -<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span> <span class="comment"> \pre IsObject() == true && \ref MemberBegin() <= \c first <= \c last <= \ref MemberEnd()</span></div> -<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span> <span class="comment"> \return Iterator following the last removed element.</span></div> -<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span> <span class="comment"> \note This function preserves the relative order of the remaining object</span></div> -<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span> <span class="comment"> members.</span></div> -<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>  MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterator last) {</div> -<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject());</div> -<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.o.size > 0);</div> -<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetMembersPointer() != 0);</div> -<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first >= MemberBegin());</div> -<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first <= last);</div> -<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(last <= MemberEnd());</div> -<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>  </div> -<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>  MemberIterator pos = MemberBegin() + (first - MemberBegin());</div> -<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>  <span class="keywordflow">for</span> (MemberIterator itr = pos; itr != last; ++itr)</div> -<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>  itr->~Member();</div> -<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>  std::memmove(static_cast<void*>(&*pos), &*last, static_cast<size_t>(MemberEnd() - last) * <span class="keyword">sizeof</span>(Member));</div> -<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>  data_.o.size -= static_cast<SizeType>(last - first);</div> -<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>  <span class="keywordflow">return</span> pos;</div> -<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>  }</div> -<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> <span class="comment"></span> </div> -<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span> <span class="comment"> //! Erase a member in object by its name.</span></div> -<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span> <span class="comment"></span><span class="comment"> /*! \param name Name of member to be removed.</span></div> -<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> <span class="comment"> \return Whether the member existed.</span></div> -<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> Ch* name) {</div> -<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> -<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>  <span class="keywordflow">return</span> EraseMember(n);</div> -<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>  }</div> -<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>  </div> -<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> EraseMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>  </div> -<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> -<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>  MemberIterator m = FindMember(name);</div> -<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>  <span class="keywordflow">if</span> (m != MemberEnd()) {</div> -<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>  EraseMember(m);</div> -<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>  }</div> -<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span>  }</div> -<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>  </div> -<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>  Object GetObject() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> Object(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>  ConstObject GetObject()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstObject(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> <span class="comment"></span> </div> -<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span> <span class="comment"> //!@name Array</span></div> -<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span> <span class="comment"> //! Set this value as an empty array.</span></div> -<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span> <span class="comment"></span><span class="comment"> /*! \post IsArray == true */</span></div> -<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>  GenericValue& SetArray() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span> <span class="comment"></span> </div> -<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span> <span class="comment"> //! Get the number of elements in array.</span></div> -<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Size()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.size; }</div> -<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> <span class="comment"></span> </div> -<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> <span class="comment"> //! Get the capacity of array.</span></div> -<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Capacity()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.capacity; }</div> -<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span> <span class="comment"></span> </div> -<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span> <span class="comment"> //! Check whether the array is empty.</span></div> -<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span> <span class="comment"></span> <span class="keywordtype">bool</span> Empty()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.size == 0; }</div> -<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> <span class="comment"></span> </div> -<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span> <span class="comment"> //! Remove all elements in the array.</span></div> -<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span> <span class="comment"></span><span class="comment"> /*! This function do not deallocate memory in the array, i.e. the capacity is unchanged.</span></div> -<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>  <span class="keywordtype">void</span> Clear() {</div> -<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); </div> -<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>  GenericValue* e = GetElementsPointer();</div> -<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>  <span class="keywordflow">for</span> (GenericValue* v = e; v != e + data_.a.size; ++v)</div> -<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>  v->~GenericValue();</div> -<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>  data_.a.size = 0;</div> -<div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>  }</div> -<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span> <span class="comment"></span> </div> -<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span> <span class="comment"> //! Get an element from array by index.</span></div> -<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true</span></div> -<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span> <span class="comment"> \param index Zero-based index of element.</span></div> -<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span> <span class="comment"> \see operator[](T*)</span></div> -<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>  GenericValue& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index) {</div> -<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(index < data_.a.size);</div> -<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>  <span class="keywordflow">return</span> GetElementsPointer()[index];</div> -<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>  }</div> -<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>  <span class="keyword">const</span> GenericValue& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[index]; }</div> -<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> <span class="comment"></span> </div> -<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> <span class="comment"> //! Element iterator</span></div> -<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> -<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>  ValueIterator Begin() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> GetElementsPointer(); }<span class="comment"></span></div> -<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> <span class="comment"> //! \em Past-the-end element iterator</span></div> -<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> -<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>  ValueIterator End() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> GetElementsPointer() + data_.a.size; }<span class="comment"></span></div> -<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span> <span class="comment"> //! Constant element iterator</span></div> -<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> -<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>  ConstValueIterator Begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).Begin(); }<span class="comment"></span></div> -<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span> <span class="comment"> //! Constant \em past-the-end element iterator</span></div> -<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> -<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>  ConstValueIterator End()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).End(); }</div> -<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> <span class="comment"></span> </div> -<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span> <span class="comment"> //! Request the array to have enough capacity to store elements.</span></div> -<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span> <span class="comment"></span><span class="comment"> /*! \param newCapacity The capacity that the array at least need to have.</span></div> -<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>  GenericValue& Reserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator) {</div> -<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>  <span class="keywordflow">if</span> (newCapacity > data_.a.capacity) {</div> -<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>  SetElementsPointer(reinterpret_cast<GenericValue*>(allocator.Realloc(GetElementsPointer(), data_.a.capacity * <span class="keyword">sizeof</span>(GenericValue), newCapacity * <span class="keyword">sizeof</span>(GenericValue))));</div> -<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>  data_.a.capacity = newCapacity;</div> -<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>  }</div> -<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>  }</div> -<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span> <span class="comment"></span> </div> -<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span> <span class="comment"> //! Append a GenericValue at the end of the array.</span></div> -<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span> <span class="comment"></span><span class="comment"> /*! \param value Value to be appended.</span></div> -<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span> <span class="comment"> \pre IsArray() == true</span></div> -<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> <span class="comment"> \post value.IsNull() == true</span></div> -<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> <span class="comment"> \note The ownership of \c value will be transferred to this array on success.</span></div> -<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> -<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> <span class="comment"> \note Amortized constant time complexity.</span></div> -<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>  GenericValue& PushBack(GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>  <span class="keywordflow">if</span> (data_.a.size >= data_.a.capacity)</div> -<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>  Reserve(data_.a.capacity == 0 ? kDefaultArrayCapacity : (data_.a.capacity + (data_.a.capacity + 1) / 2), allocator);</div> -<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>  GetElementsPointer()[data_.a.size++].RawAssign(value);</div> -<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>  }</div> -<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>  </div> -<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>  GenericValue& PushBack(GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>  <span class="keywordflow">return</span> PushBack(value, allocator);</div> -<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>  }</div> -<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span> <span class="comment"></span> </div> -<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span> <span class="comment"> //! Append a constant string reference at the end of the array.</span></div> -<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span> <span class="comment"></span><span class="comment"> /*! \param value Constant string reference to be appended.</span></div> -<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one used previously. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> <span class="comment"> \pre IsArray() == true</span></div> -<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> -<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span> <span class="comment"> \note Amortized constant time complexity.</span></div> -<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span> <span class="comment"> \see GenericStringRef</span></div> -<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>  GenericValue& PushBack(StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>  <span class="keywordflow">return</span> (*this).template PushBack<StringRefType>(value, allocator);</div> -<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>  }</div> -<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span> <span class="comment"></span> </div> -<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> <span class="comment"> //! Append a primitive value at the end of the array.</span></div> -<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> -<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> <span class="comment"> \param value Value of primitive type T to be appended.</span></div> -<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> <span class="comment"> \pre IsArray() == true</span></div> -<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> -<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span> <span class="comment"></span> </div> -<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> -<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> -<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> -<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> <span class="comment"> \ref PushBack(GenericValue&, Allocator&) or \ref</span></div> -<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span> <span class="comment"> PushBack(StringRefType, Allocator&).</span></div> -<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> -<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> -<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span> <span class="comment"> \note Amortized constant time complexity.</span></div> -<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> -<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>  PushBack(T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>  GenericValue v(value);</div> -<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>  <span class="keywordflow">return</span> PushBack(v, allocator);</div> -<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>  }</div> -<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span> <span class="comment"></span> </div> -<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span> <span class="comment"> //! Remove the last element in the array.</span></div> -<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span> <span class="comment"> \note Constant time complexity.</span></div> -<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>  GenericValue& PopBack() {</div> -<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!Empty());</div> -<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>  GetElementsPointer()[--data_.a.size].~GenericValue();</div> -<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> Ch* name) {</div> +<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>  GenericValue n(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name));</div> +<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>  <span class="keywordflow">return</span> EraseMember(n);</div> +<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>  }</div> +<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>  </div> +<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> std::basic_string<Ch>& name) { <span class="keywordflow">return</span> EraseMember(GenericValue(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>  </div> +<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>  MemberIterator m = FindMember(name);</div> +<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>  <span class="keywordflow">if</span> (m != MemberEnd()) {</div> +<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>  EraseMember(m);</div> +<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>  }</div> +<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>  }</div> +<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>  </div> +<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>  Object GetObject() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> Object(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>  ConstObject GetObject()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsObject()); <span class="keywordflow">return</span> ConstObject(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span> <span class="comment"></span> </div> +<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span> <span class="comment"> //!@name Array</span></div> +<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> <span class="comment"> //! Set this value as an empty array.</span></div> +<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span> <span class="comment"></span><span class="comment"> /*! \post IsArray == true */</span></div> +<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>  GenericValue& SetArray() { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> <span class="comment"></span> </div> +<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> <span class="comment"> //! Get the number of elements in array.</span></div> +<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Size()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.size; }</div> +<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span> <span class="comment"></span> </div> +<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span> <span class="comment"> //! Get the capacity of array.</span></div> +<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Capacity()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.capacity; }</div> +<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span> <span class="comment"></span> </div> +<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span> <span class="comment"> //! Check whether the array is empty.</span></div> +<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> <span class="comment"></span> <span class="keywordtype">bool</span> Empty()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> data_.a.size == 0; }</div> +<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span> <span class="comment"></span> </div> +<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span> <span class="comment"> //! Remove all elements in the array.</span></div> +<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span> <span class="comment"></span><span class="comment"> /*! This function do not deallocate memory in the array, i.e. the capacity is unchanged.</span></div> +<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>  <span class="keywordtype">void</span> Clear() {</div> +<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); </div> +<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>  GenericValue* e = GetElementsPointer();</div> +<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>  <span class="keywordflow">for</span> (GenericValue* v = e; v != e + data_.a.size; ++v)</div> +<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>  v->~GenericValue();</div> +<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>  data_.a.size = 0;</div> +<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>  }</div> +<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span> <span class="comment"></span> </div> +<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span> <span class="comment"> //! Get an element from array by index.</span></div> +<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true</span></div> +<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span> <span class="comment"> \param index Zero-based index of element.</span></div> +<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> <span class="comment"> \see operator[](T*)</span></div> +<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>  GenericValue& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index) {</div> +<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(index < data_.a.size);</div> +<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>  <span class="keywordflow">return</span> GetElementsPointer()[index];</div> +<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>  }</div> +<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>  <span class="keyword">const</span> GenericValue& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*<span class="keyword">this</span>)[index]; }</div> +<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span> <span class="comment"></span> </div> +<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span> <span class="comment"> //! Element iterator</span></div> +<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> +<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>  ValueIterator Begin() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> GetElementsPointer(); }<span class="comment"></span></div> +<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> <span class="comment"> //! \em Past-the-end element iterator</span></div> +<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> +<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>  ValueIterator End() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> GetElementsPointer() + data_.a.size; }<span class="comment"></span></div> +<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span> <span class="comment"> //! Constant element iterator</span></div> +<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> +<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>  ConstValueIterator Begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).Begin(); }<span class="comment"></span></div> +<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> <span class="comment"> //! Constant \em past-the-end element iterator</span></div> +<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span> <span class="comment"></span><span class="comment"> /*! \pre IsArray() == true */</span></div> +<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>  ConstValueIterator End()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> const_cast<GenericValue&>(*this).End(); }</div> +<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span> <span class="comment"></span> </div> +<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> <span class="comment"> //! Request the array to have enough capacity to store elements.</span></div> +<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span> <span class="comment"></span><span class="comment"> /*! \param newCapacity The capacity that the array at least need to have.</span></div> +<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>  GenericValue& Reserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> &allocator) {</div> +<div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>  <span class="keywordflow">if</span> (newCapacity > data_.a.capacity) {</div> +<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>  SetElementsPointer(reinterpret_cast<GenericValue*>(allocator.Realloc(GetElementsPointer(), data_.a.capacity * <span class="keyword">sizeof</span>(GenericValue), newCapacity * <span class="keyword">sizeof</span>(GenericValue))));</div> +<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>  data_.a.capacity = newCapacity;</div> +<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>  }</div> +<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>  }</div> +<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span> <span class="comment"></span> </div> +<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span> <span class="comment"> //! Append a GenericValue at the end of the array.</span></div> +<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span> <span class="comment"></span><span class="comment"> /*! \param value Value to be appended.</span></div> +<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span> <span class="comment"> \pre IsArray() == true</span></div> +<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span> <span class="comment"> \post value.IsNull() == true</span></div> +<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> <span class="comment"> \note The ownership of \c value will be transferred to this array on success.</span></div> +<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> +<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span> <span class="comment"> \note Amortized constant time complexity.</span></div> +<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>  GenericValue& PushBack(GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>  <span class="keywordflow">if</span> (data_.a.size >= data_.a.capacity)</div> +<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>  Reserve(data_.a.capacity == 0 ? kDefaultArrayCapacity : (data_.a.capacity + (data_.a.capacity + 1) / 2), allocator);</div> +<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>  GetElementsPointer()[data_.a.size++].RawAssign(value);</div> +<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>  }</div> +<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>  </div> +<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>  GenericValue& PushBack(GenericValue&& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>  <span class="keywordflow">return</span> PushBack(value, allocator);</div> +<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>  }</div> +<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span> <span class="comment"></span> </div> +<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span> <span class="comment"> //! Append a constant string reference at the end of the array.</span></div> +<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span> <span class="comment"></span><span class="comment"> /*! \param value Constant string reference to be appended.</span></div> +<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one used previously. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span> <span class="comment"> \pre IsArray() == true</span></div> +<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> +<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span> <span class="comment"> \note Amortized constant time complexity.</span></div> +<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span> <span class="comment"> \see GenericStringRef</span></div> +<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>  GenericValue& PushBack(StringRefType value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>  <span class="keywordflow">return</span> (*this).template PushBack<StringRefType>(value, allocator);</div> +<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>  }</div> +<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> <span class="comment"></span> </div> +<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span> <span class="comment"> //! Append a primitive value at the end of the array.</span></div> +<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> <span class="comment"></span><span class="comment"> /*! \tparam T Either \ref Type, \c int, \c unsigned, \c int64_t, \c uint64_t</span></div> +<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span> <span class="comment"> \param value Value of primitive type T to be appended.</span></div> +<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> <span class="comment"> \param allocator Allocator for reallocating memory. It must be the same one as used before. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span> <span class="comment"> \pre IsArray() == true</span></div> +<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span> <span class="comment"> \note If the number of elements to be appended is known, calls Reserve() once first may be more efficient.</span></div> +<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span> <span class="comment"></span> </div> +<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span> <span class="comment"> \note The source type \c T explicitly disallows all pointer types,</span></div> +<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span> <span class="comment"> especially (\c const) \ref Ch*. This helps avoiding implicitly</span></div> +<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span> <span class="comment"> referencing character strings with insufficient lifetime, use</span></div> +<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span> <span class="comment"> \ref PushBack(GenericValue&, Allocator&) or \ref</span></div> +<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span> <span class="comment"> PushBack(StringRefType, Allocator&).</span></div> +<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span> <span class="comment"> All other pointer types would implicitly convert to \c bool,</span></div> +<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span> <span class="comment"> use an explicit cast instead, if needed.</span></div> +<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span> <span class="comment"> \note Amortized constant time complexity.</span></div> +<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>  RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericValue&))</div> +<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>  PushBack(T value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>  GenericValue v(value);</div> +<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span>  <span class="keywordflow">return</span> PushBack(v, allocator);</div> +<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>  }</div> +<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span> <span class="comment"></span> </div> +<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> <span class="comment"> //! Remove the last element in the array.</span></div> +<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span> <span class="comment"> \note Constant time complexity.</span></div> +<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>  GenericValue& PopBack() {</div> +<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!Empty());</div> +<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>  GetElementsPointer()[--data_.a.size].~GenericValue();</div> +<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>  }</div> +<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> <span class="comment"></span> </div> +<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span> <span class="comment"> //! Remove an element of array by iterator.</span></div> +<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span> <span class="comment"> \param pos iterator to the element to remove</span></div> +<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> <span class="comment"> \pre IsArray() == true && \ref Begin() <= \c pos < \ref End()</span></div> +<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span> <span class="comment"> \return Iterator following the removed element. If the iterator pos refers to the last element, the End() iterator is returned.</span></div> +<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>  ValueIterator Erase(ConstValueIterator pos) {</div> +<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>  <span class="keywordflow">return</span> Erase(pos, pos + 1);</div> +<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>  }</div> +<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> <span class="comment"></span> </div> +<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span> <span class="comment"> //! Remove elements in the range [first, last) of the array.</span></div> +<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> <span class="comment"> \param first iterator to the first element to remove</span></div> +<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span> <span class="comment"> \param last iterator following the last element to remove</span></div> +<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span> <span class="comment"> \pre IsArray() == true && \ref Begin() <= \c first <= \c last <= \ref End()</span></div> +<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span> <span class="comment"> \return Iterator following the last removed element.</span></div> +<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span> <span class="comment"> \note Linear time complexity.</span></div> +<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>  ValueIterator Erase(ConstValueIterator first, ConstValueIterator last) {</div> +<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> +<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.a.size > 0);</div> +<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetElementsPointer() != 0);</div> +<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first >= Begin());</div> +<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first <= last);</div> +<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(last <= End());</div> +<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>  ValueIterator pos = Begin() + (first - Begin());</div> +<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>  <span class="keywordflow">for</span> (ValueIterator itr = pos; itr != last; ++itr)</div> +<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>  itr->~GenericValue();</div> +<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>  std::memmove(static_cast<void*>(pos), last, static_cast<size_t>(End() - last) * <span class="keyword">sizeof</span>(GenericValue));</div> +<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>  data_.a.size -= static_cast<SizeType>(last - first);</div> +<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>  <span class="keywordflow">return</span> pos;</div> <div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>  }</div> -<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span> <span class="comment"></span> </div> -<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span> <span class="comment"> //! Remove an element of array by iterator.</span></div> -<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span> <span class="comment"> \param pos iterator to the element to remove</span></div> -<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span> <span class="comment"> \pre IsArray() == true && \ref Begin() <= \c pos < \ref End()</span></div> -<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span> <span class="comment"> \return Iterator following the removed element. If the iterator pos refers to the last element, the End() iterator is returned.</span></div> -<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>  ValueIterator Erase(ConstValueIterator pos) {</div> -<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>  <span class="keywordflow">return</span> Erase(pos, pos + 1);</div> -<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>  }</div> -<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span> <span class="comment"></span> </div> -<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span> <span class="comment"> //! Remove elements in the range [first, last) of the array.</span></div> -<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span> <span class="comment"> \param first iterator to the first element to remove</span></div> -<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span> <span class="comment"> \param last iterator following the last element to remove</span></div> -<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span> <span class="comment"> \pre IsArray() == true && \ref Begin() <= \c first <= \c last <= \ref End()</span></div> -<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span> <span class="comment"> \return Iterator following the last removed element.</span></div> -<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span> <span class="comment"> \note Linear time complexity.</span></div> -<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>  ValueIterator Erase(ConstValueIterator first, ConstValueIterator last) {</div> -<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray());</div> -<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.a.size > 0);</div> -<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetElementsPointer() != 0);</div> -<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first >= Begin());</div> -<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(first <= last);</div> -<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(last <= End());</div> -<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>  ValueIterator pos = Begin() + (first - Begin());</div> -<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>  <span class="keywordflow">for</span> (ValueIterator itr = pos; itr != last; ++itr)</div> -<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>  itr->~GenericValue();</div> -<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>  std::memmove(static_cast<void*>(pos), last, static_cast<size_t>(End() - last) * <span class="keyword">sizeof</span>(GenericValue));</div> -<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>  data_.a.size -= static_cast<SizeType>(last - first);</div> -<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>  <span class="keywordflow">return</span> pos;</div> -<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>  }</div> -<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>  </div> -<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>  Array GetArray() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> Array(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>  ConstArray GetArray()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> ConstArray(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span> <span class="comment"></span> </div> -<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span> <span class="comment"> //!@name Number</span></div> -<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span> <span class="comment"></span> </div> -<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>  <span class="keywordtype">int</span> GetInt()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kIntFlag); <span class="keywordflow">return</span> data_.n.i.i; }</div> -<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>  <span class="keywordtype">unsigned</span> GetUint()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kUintFlag); <span class="keywordflow">return</span> data_.n.u.u; }</div> -<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>  int64_t GetInt64()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kInt64Flag); <span class="keywordflow">return</span> data_.n.i64; }</div> -<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>  uint64_t GetUint64()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kUint64Flag); <span class="keywordflow">return</span> data_.n.u64; }</div> -<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span> <span class="comment"></span> </div> -<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span> <span class="comment"> //! Get the value as double type.</span></div> -<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span> <span class="comment"></span><span class="comment"> /*! \note If the value is 64-bit integer type, it may lose precision. Use \c IsLosslessDouble() to check whether the converison is lossless.</span></div> -<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>  <span class="keywordtype">double</span> GetDouble()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsNumber());</div> -<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>  <span class="keywordflow">if</span> ((data_.f.flags & kDoubleFlag) != 0) <span class="keywordflow">return</span> data_.n.d; <span class="comment">// exact type, no conversion.</span></div> -<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>  <span class="keywordflow">if</span> ((data_.f.flags & kIntFlag) != 0) <span class="keywordflow">return</span> data_.n.i.i; <span class="comment">// int -> double</span></div> -<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>  <span class="keywordflow">if</span> ((data_.f.flags & kUintFlag) != 0) <span class="keywordflow">return</span> data_.n.u.u; <span class="comment">// unsigned -> double</span></div> -<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>  <span class="keywordflow">if</span> ((data_.f.flags & kInt64Flag) != 0) <span class="keywordflow">return</span> static_cast<double>(data_.n.i64); <span class="comment">// int64_t -> double (may lose precision)</span></div> -<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>((data_.f.flags & kUint64Flag) != 0); <span class="keywordflow">return</span> static_cast<double>(data_.n.u64); <span class="comment">// uint64_t -> double (may lose precision)</span></div> -<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>  }</div> -<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> <span class="comment"></span> </div> -<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span> <span class="comment"> //! Get the value as float type.</span></div> -<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> <span class="comment"></span><span class="comment"> /*! \note If the value is 64-bit integer type, it may lose precision. Use \c IsLosslessFloat() to check whether the converison is lossless.</span></div> -<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>  <span class="keywordtype">float</span> GetFloat()<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>  <span class="keywordflow">return</span> static_cast<float>(GetDouble());</div> -<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>  }</div> -<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>  </div> -<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>  GenericValue& SetInt(<span class="keywordtype">int</span> i) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(i); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>  GenericValue& SetUint(<span class="keywordtype">unsigned</span> u) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(u); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>  GenericValue& SetInt64(int64_t i64) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(i64); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>  GenericValue& SetUint64(uint64_t u64) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(u64); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>  GenericValue& SetDouble(<span class="keywordtype">double</span> d) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(d); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>  GenericValue& SetFloat(<span class="keywordtype">float</span> f) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(static_cast<double>(f)); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> <span class="comment"></span> </div> -<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> <span class="comment"> //!@name String</span></div> -<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>  </div> +<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>  Array GetArray() { <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> Array(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>  ConstArray GetArray()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsArray()); <span class="keywordflow">return</span> ConstArray(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span> <span class="comment"></span> </div> +<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span> <span class="comment"> //!@name Number</span></div> +<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span> <span class="comment"></span> </div> +<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>  <span class="keywordtype">int</span> GetInt()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kIntFlag); <span class="keywordflow">return</span> data_.n.i.i; }</div> +<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>  <span class="keywordtype">unsigned</span> GetUint()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kUintFlag); <span class="keywordflow">return</span> data_.n.u.u; }</div> +<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>  int64_t GetInt64()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kInt64Flag); <span class="keywordflow">return</span> data_.n.i64; }</div> +<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>  uint64_t GetUint64()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(data_.f.flags & kUint64Flag); <span class="keywordflow">return</span> data_.n.u64; }</div> +<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span> <span class="comment"></span> </div> +<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span> <span class="comment"> //! Get the value as double type.</span></div> +<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span> <span class="comment"></span><span class="comment"> /*! \note If the value is 64-bit integer type, it may lose precision. Use \c IsLosslessDouble() to check whether the converison is lossless.</span></div> +<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>  <span class="keywordtype">double</span> GetDouble()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsNumber());</div> +<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>  <span class="keywordflow">if</span> ((data_.f.flags & kDoubleFlag) != 0) <span class="keywordflow">return</span> data_.n.d; <span class="comment">// exact type, no conversion.</span></div> +<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>  <span class="keywordflow">if</span> ((data_.f.flags & kIntFlag) != 0) <span class="keywordflow">return</span> data_.n.i.i; <span class="comment">// int -> double</span></div> +<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>  <span class="keywordflow">if</span> ((data_.f.flags & kUintFlag) != 0) <span class="keywordflow">return</span> data_.n.u.u; <span class="comment">// unsigned -> double</span></div> +<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>  <span class="keywordflow">if</span> ((data_.f.flags & kInt64Flag) != 0) <span class="keywordflow">return</span> static_cast<double>(data_.n.i64); <span class="comment">// int64_t -> double (may lose precision)</span></div> +<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>((data_.f.flags & kUint64Flag) != 0); <span class="keywordflow">return</span> static_cast<double>(data_.n.u64); <span class="comment">// uint64_t -> double (may lose precision)</span></div> +<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>  }</div> +<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span> <span class="comment"></span> </div> +<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span> <span class="comment"> //! Get the value as float type.</span></div> +<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span> <span class="comment"></span><span class="comment"> /*! \note If the value is 64-bit integer type, it may lose precision. Use \c IsLosslessFloat() to check whether the converison is lossless.</span></div> +<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>  <span class="keywordtype">float</span> GetFloat()<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>  <span class="keywordflow">return</span> static_cast<float>(GetDouble());</div> +<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>  }</div> +<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>  </div> +<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>  GenericValue& SetInt(<span class="keywordtype">int</span> i) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(i); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>  GenericValue& SetUint(<span class="keywordtype">unsigned</span> u) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(u); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>  GenericValue& SetInt64(int64_t i64) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(i64); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>  GenericValue& SetUint64(uint64_t u64) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(u64); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>  GenericValue& SetDouble(<span class="keywordtype">double</span> d) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(d); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>  GenericValue& SetFloat(<span class="keywordtype">float</span> f) { this->~GenericValue(); <span class="keyword">new</span> (<span class="keyword">this</span>) GenericValue(static_cast<double>(f)); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span> <span class="comment"></span> </div> +<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span> <span class="comment"> //!@name String</span></div> +<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span> <span class="comment"></span> </div> +<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>  <span class="keyword">const</span> Ch* GetString()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString()); <span class="keywordflow">return</span> DataString(data_); }</div> +<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span> <span class="comment"></span> </div> +<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span> <span class="comment"> //! Get the length of string.</span></div> +<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span> <span class="comment"></span><span class="comment"> /*! Since rapidjson permits "\\u0000" in the json string, strlen(v.GetString()) may not equal to v.GetStringLength().</span></div> +<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> GetStringLength()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString()); <span class="keywordflow">return</span> DataStringLength(data_); }</div> +<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span> <span class="comment"></span> </div> +<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span> <span class="comment"> //! Set this value as a string without copying source string.</span></div> +<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span> <span class="comment"></span><span class="comment"> /*! This version has better performance with supplied length, and also support string containing null character.</span></div> +<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span> <span class="comment"> \param s source string pointer. </span></div> +<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span> <span class="comment"> \param length The length of source string, excluding the trailing null terminator.</span></div> +<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span> <span class="comment"> \post IsString() == true && GetString() == s && GetStringLength() == length</span></div> +<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span> <span class="comment"> \see SetString(StringRefType)</span></div> +<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length)); }</div> +<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> <span class="comment"></span> </div> +<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> <span class="comment"> //! Set this value as a string without copying source string.</span></div> +<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span> <span class="comment"></span><span class="comment"> /*! \param s source string reference</span></div> +<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span> <span class="comment"> \post IsString() == true && GetString() == s && GetStringLength() == s.length</span></div> +<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>  GenericValue& SetString(StringRefType s) { this->~GenericValue(); SetStringRaw(s); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span> <span class="comment"></span> </div> +<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> +<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span> <span class="comment"></span><span class="comment"> /*! This version has better performance with supplied length, and also support string containing null character.</span></div> +<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span> <span class="comment"> \param s source string. </span></div> +<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span> <span class="comment"> \param length The length of source string, excluding the trailing null terminator.</span></div> +<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span> <span class="comment"> \post IsString() == true && GetString() != s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> +<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length), allocator); }</div> <div class="line"><a name="l01860"></a><span class="lineno"> 1860</span> <span class="comment"></span> </div> -<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>  <span class="keyword">const</span> Ch* GetString()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString()); <span class="keywordflow">return</span> (data_.f.flags & kInlineStrFlag) ? data_.ss.str : GetStringPointer(); }</div> -<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> <span class="comment"></span> </div> -<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> <span class="comment"> //! Get the length of string.</span></div> -<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span> <span class="comment"></span><span class="comment"> /*! Since rapidjson permits "\\u0000" in the json string, strlen(v.GetString()) may not equal to v.GetStringLength().</span></div> -<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> GetStringLength()<span class="keyword"> const </span>{ <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString()); <span class="keywordflow">return</span> ((data_.f.flags & kInlineStrFlag) ? (data_.ss.GetLength()) : data_.s.length); }</div> -<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span> <span class="comment"></span> </div> -<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span> <span class="comment"> //! Set this value as a string without copying source string.</span></div> -<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span> <span class="comment"></span><span class="comment"> /*! This version has better performance with supplied length, and also support string containing null character.</span></div> -<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> <span class="comment"> \param s source string pointer. </span></div> -<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> <span class="comment"> \param length The length of source string, excluding the trailing null terminator.</span></div> +<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> +<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> <span class="comment"></span><span class="comment"> /*! \param s source string. </span></div> +<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span> <span class="comment"> \post IsString() == true && GetString() != s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> +<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> +<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span> <span class="comment"></span> </div> +<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> +<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> <span class="comment"></span><span class="comment"> /*! \param s source string reference</span></div> +<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> <div class="line"><a name="l01872"></a><span class="lineno"> 1872</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span> <span class="comment"> \post IsString() == true && GetString() == s && GetStringLength() == length</span></div> -<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> <span class="comment"> \see SetString(StringRefType)</span></div> -<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length)); }</div> -<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span> <span class="comment"></span> </div> -<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> <span class="comment"> //! Set this value as a string without copying source string.</span></div> -<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> <span class="comment"></span><span class="comment"> /*! \param s source string reference</span></div> -<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span> <span class="comment"> \post IsString() == true && GetString() == s && GetStringLength() == s.length</span></div> -<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>  GenericValue& SetString(StringRefType s) { this->~GenericValue(); SetStringRaw(s); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span> <span class="comment"></span> </div> -<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> -<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span> <span class="comment"></span><span class="comment"> /*! This version has better performance with supplied length, and also support string containing null character.</span></div> -<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span> <span class="comment"> \param s source string. </span></div> -<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span> <span class="comment"> \param length The length of source string, excluding the trailing null terminator.</span></div> -<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span> <span class="comment"> \post IsString() == true && GetString() != s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> -<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s, length), allocator); }</div> -<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span> <span class="comment"></span> </div> -<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> -<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span> <span class="comment"></span><span class="comment"> /*! \param s source string. </span></div> -<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span> <span class="comment"> \post IsString() == true && GetString() != s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> -<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>  GenericValue& SetString(<span class="keyword">const</span> Ch* s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> -<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span> <span class="comment"></span> </div> -<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> -<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span> <span class="comment"></span><span class="comment"> /*! \param s source string reference</span></div> -<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span> <span class="comment"> \post IsString() == true && GetString() != s.s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> -<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>  GenericValue& SetString(StringRefType s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { this->~GenericValue(); SetStringRaw(s, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>  </div> -<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> -<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span> <span class="comment"></span><span class="comment"> /*! \param s source string.</span></div> -<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> -<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span> <span class="comment"> \return The value itself for fluent API.</span></div> -<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span> <span class="comment"> \post IsString() == true && GetString() != s.data() && strcmp(GetString(),s.data() == 0 && GetStringLength() == s.size()</span></div> -<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span> <span class="comment"> \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> -<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>  GenericValue& SetString(<span class="keyword">const</span> std::basic_string<Ch>& s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> -<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span> <span class="comment"></span> </div> -<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span> <span class="comment"> //!@name Array</span></div> -<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span> <span class="comment"></span><span class="comment"> //@{</span></div> -<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span> <span class="comment"> //! Templated version for checking whether this value is type T.</span></div> -<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span> <span class="comment"> \tparam T Either \c bool, \c int, \c unsigned, \c int64_t, \c uint64_t, \c double, \c float, \c const \c char*, \c std::basic_string<Ch></span></div> -<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>  <span class="keywordtype">bool</span> Is()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Is(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>  </div> -<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>  T Get()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Get(*<span class="keyword">this</span>); }</div> -<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>  </div> -<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>  T Get() { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Get(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span> <span class="comment"> \post IsString() == true && GetString() != s.s && strcmp(GetString(),s) == 0 && GetStringLength() == length</span></div> +<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>  GenericValue& SetString(StringRefType s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { this->~GenericValue(); SetStringRaw(s, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>  </div> +<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> <span class="comment"> //! Set this value as a string by copying from source string.</span></div> +<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> <span class="comment"></span><span class="comment"> /*! \param s source string.</span></div> +<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> <span class="comment"> \param allocator Allocator for allocating copied buffer. Commonly use GenericDocument::GetAllocator().</span></div> +<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span> <span class="comment"> \return The value itself for fluent API.</span></div> +<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> <span class="comment"> \post IsString() == true && GetString() != s.data() && strcmp(GetString(),s.data() == 0 && GetStringLength() == s.size()</span></div> +<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span> <span class="comment"> \note Requires the definition of the preprocessor symbol \ref RAPIDJSON_HAS_STDSTRING.</span></div> +<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>  GenericValue& SetString(<span class="keyword">const</span> std::basic_string<Ch>& s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) { <span class="keywordflow">return</span> SetString(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(s), allocator); }</div> +<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span> <span class="comment"></span> </div> +<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span> <span class="comment"> //!@name Array</span></div> +<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span> <span class="comment"></span><span class="comment"> //@{</span></div> +<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span> <span class="comment"> //! Templated version for checking whether this value is type T.</span></div> +<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span> <span class="comment"> \tparam T Either \c bool, \c int, \c unsigned, \c int64_t, \c uint64_t, \c double, \c float, \c const \c char*, \c std::basic_string<Ch></span></div> +<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>  <span class="keywordtype">bool</span> Is()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Is(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>  </div> +<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>  T Get()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Get(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>  </div> +<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>  T Get() { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Get(*<span class="keyword">this</span>); }</div> +<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>  </div> +<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>  ValueType& Set(<span class="keyword">const</span> T& data) { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Set(*<span class="keyword">this</span>, data); }</div> +<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>  </div> +<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> +<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>  ValueType& Set(<span class="keyword">const</span> T& data, AllocatorType& allocator) { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Set(*<span class="keyword">this</span>, data, allocator); }</div> +<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span> <span class="comment"></span> </div> +<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span> <span class="comment"> //@}</span></div> +<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span> <span class="comment"> //! Generate events of this value to a Handler.</span></div> +<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span> <span class="comment"></span><span class="comment"> /*! This function adopts the GoF visitor pattern.</span></div> +<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span> <span class="comment"> Typical usage is to output this JSON value as JSON text via Writer, which is a Handler.</span></div> +<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span> <span class="comment"> It can also be used to deep clone this value via GenericDocument, which is also a Handler.</span></div> +<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span> <span class="comment"> \tparam Handler type of handler.</span></div> +<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span> <span class="comment"> \param handler An object implementing concept Handler.</span></div> +<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span> <span class="comment"> */</span></div> +<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> Handler></div> +<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>  <span class="keywordtype">bool</span> Accept(<a class="code" href="classrapidjson_1_1_handler.html">Handler</a>& handler)<span class="keyword"> const </span>{</div> +<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>  <span class="keywordflow">switch</span>(GetType()) {</div> +<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a>: <span class="keywordflow">return</span> handler.Null();</div> +<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a>: <span class="keywordflow">return</span> handler.Bool(<span class="keyword">false</span>);</div> +<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a>: <span class="keywordflow">return</span> handler.Bool(<span class="keyword">true</span>);</div> +<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>  </div> +<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>:</div> +<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.StartObject()))</div> +<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>  <span class="keywordflow">for</span> (ConstMemberIterator m = MemberBegin(); m != MemberEnd(); ++m) {</div> +<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(m->name.IsString()); <span class="comment">// User may change the type of name by MemberIterator.</span></div> +<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.Key(m->name.GetString(), m->name.GetStringLength(), (m->name.data_.f.flags & kCopyFlag) != 0)))</div> +<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!m->value.Accept(handler)))</div> +<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>  }</div> +<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>  <span class="keywordflow">return</span> handler.EndObject(data_.o.size);</div> <div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>  </div> -<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>  ValueType& Set(<span class="keyword">const</span> T& data) { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Set(*<span class="keyword">this</span>, data); }</div> -<div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>  </div> -<div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>  <span class="keyword">template</span><<span class="keyword">typename</span> T></div> -<div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>  ValueType& Set(<span class="keyword">const</span> T& data, AllocatorType& allocator) { <span class="keywordflow">return</span> internal::TypeHelper<ValueType, T>::Set(*<span class="keyword">this</span>, data, allocator); }</div> -<div class="line"><a name="l01945"></a><span class="lineno"> 1945</span> <span class="comment"></span> </div> -<div class="line"><a name="l01946"></a><span class="lineno"> 1946</span> <span class="comment"> //@}</span></div> -<div class="line"><a name="l01947"></a><span class="lineno"> 1947</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span> <span class="comment"> //! Generate events of this value to a Handler.</span></div> -<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span> <span class="comment"></span><span class="comment"> /*! This function adopts the GoF visitor pattern.</span></div> -<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span> <span class="comment"> Typical usage is to output this JSON value as JSON text via Writer, which is a Handler.</span></div> -<div class="line"><a name="l01951"></a><span class="lineno"> 1951</span> <span class="comment"> It can also be used to deep clone this value via GenericDocument, which is also a Handler.</span></div> -<div class="line"><a name="l01952"></a><span class="lineno"> 1952</span> <span class="comment"> \tparam Handler type of handler.</span></div> -<div class="line"><a name="l01953"></a><span class="lineno"> 1953</span> <span class="comment"> \param handler An object implementing concept Handler.</span></div> -<div class="line"><a name="l01954"></a><span class="lineno"> 1954</span> <span class="comment"> */</span></div> -<div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> Handler></div> -<div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>  <span class="keywordtype">bool</span> Accept(<a class="code" href="classrapidjson_1_1_handler.html">Handler</a>& handler)<span class="keyword"> const </span>{</div> -<div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>  <span class="keywordflow">switch</span>(GetType()) {</div> -<div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a>: <span class="keywordflow">return</span> handler.Null();</div> -<div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a>: <span class="keywordflow">return</span> handler.Bool(<span class="keyword">false</span>);</div> -<div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a>: <span class="keywordflow">return</span> handler.Bool(<span class="keyword">true</span>);</div> -<div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>  </div> -<div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>:</div> -<div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.StartObject()))</div> -<div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>  <span class="keywordflow">for</span> (ConstMemberIterator m = MemberBegin(); m != MemberEnd(); ++m) {</div> -<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(m->name.IsString()); <span class="comment">// User may change the type of name by MemberIterator.</span></div> -<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.Key(m->name.GetString(), m->name.GetStringLength(), (m->name.data_.f.flags & kCopyFlag) != 0)))</div> -<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!m->value.Accept(handler)))</div> -<div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>  }</div> -<div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>  <span class="keywordflow">return</span> handler.EndObject(data_.o.size);</div> -<div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>  </div> -<div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>:</div> -<div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.StartArray()))</div> -<div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> GenericValue* v = Begin(); v != End(); ++v)</div> -<div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!v->Accept(handler)))</div> -<div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> -<div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>  <span class="keywordflow">return</span> handler.EndArray(data_.a.size);</div> -<div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>  </div> -<div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> -<div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>  <span class="keywordflow">return</span> handler.String(GetString(), GetStringLength(), (data_.f.flags & kCopyFlag) != 0);</div> -<div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>  </div> -<div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>  <span class="keywordflow">default</span>:</div> -<div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetType() == <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>);</div> -<div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>  <span class="keywordflow">if</span> (IsDouble()) <span class="keywordflow">return</span> handler.Double(data_.n.d);</div> -<div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsInt()) <span class="keywordflow">return</span> handler.Int(data_.n.i.i);</div> -<div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsUint()) <span class="keywordflow">return</span> handler.Uint(data_.n.u.u);</div> -<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsInt64()) <span class="keywordflow">return</span> handler.Int64(data_.n.i64);</div> -<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>  <span class="keywordflow">else</span> <span class="keywordflow">return</span> handler.Uint64(data_.n.u64);</div> -<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>  }</div> -<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>  }</div> -<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>  </div> -<div class="line"><a name="l01995"></a><span class="lineno"> 1995</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue;</div> -<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericDocument;</div> -<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>  </div> -<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>  <span class="keyword">enum</span> {</div> -<div class="line"><a name="l02000"></a><span class="lineno"> 2000</span>  kBoolFlag = 0x0008,</div> -<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>  kNumberFlag = 0x0010,</div> -<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>  kIntFlag = 0x0020,</div> -<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>  kUintFlag = 0x0040,</div> -<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>  kInt64Flag = 0x0080,</div> -<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>  kUint64Flag = 0x0100,</div> -<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>  kDoubleFlag = 0x0200,</div> -<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>  kStringFlag = 0x0400,</div> -<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>  kCopyFlag = 0x0800,</div> -<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>  kInlineStrFlag = 0x1000,</div> +<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>:</div> +<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!handler.StartArray()))</div> +<div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> GenericValue* v = Begin(); v != End(); ++v)</div> +<div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>  <span class="keywordflow">if</span> (<a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a>(!v->Accept(handler)))</div> +<div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div> +<div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>  <span class="keywordflow">return</span> handler.EndArray(data_.a.size);</div> +<div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>  </div> +<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>:</div> +<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>  <span class="keywordflow">return</span> handler.String(GetString(), GetStringLength(), (data_.f.flags & kCopyFlag) != 0);</div> +<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>  </div> +<div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>  <span class="keywordflow">default</span>:</div> +<div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(GetType() == <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>);</div> +<div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>  <span class="keywordflow">if</span> (IsDouble()) <span class="keywordflow">return</span> handler.Double(data_.n.d);</div> +<div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsInt()) <span class="keywordflow">return</span> handler.Int(data_.n.i.i);</div> +<div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsUint()) <span class="keywordflow">return</span> handler.Uint(data_.n.u.u);</div> +<div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsInt64()) <span class="keywordflow">return</span> handler.Int64(data_.n.i64);</div> +<div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>  <span class="keywordflow">else</span> <span class="keywordflow">return</span> handler.Uint64(data_.n.u64);</div> +<div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>  }</div> +<div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>  }</div> +<div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>  </div> +<div class="line"><a name="l01961"></a><span class="lineno"> 1961</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue;</div> +<div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericDocument;</div> +<div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>  </div> +<div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>  <span class="keyword">enum</span> {</div> +<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>  kBoolFlag = 0x0008,</div> +<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>  kNumberFlag = 0x0010,</div> +<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>  kIntFlag = 0x0020,</div> +<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>  kUintFlag = 0x0040,</div> +<div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>  kInt64Flag = 0x0080,</div> +<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>  kUint64Flag = 0x0100,</div> +<div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>  kDoubleFlag = 0x0200,</div> +<div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>  kStringFlag = 0x0400,</div> +<div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>  kCopyFlag = 0x0800,</div> +<div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>  kInlineStrFlag = 0x1000,</div> +<div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>  </div> +<div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>  <span class="comment">// Initial flags of different types.</span></div> +<div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>  kNullFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a>,</div> +<div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>  <span class="comment">// These casts are added to suppress the warning on MSVC about bitwise operations between enums of different types.</span></div> +<div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>  kTrueFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a>) | static_cast<int>(kBoolFlag),</div> +<div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>  kFalseFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a>) | static_cast<int>(kBoolFlag),</div> +<div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>  kNumberIntFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag),</div> +<div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>  kNumberUintFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kUintFlag | kUint64Flag | kInt64Flag),</div> +<div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>  kNumberInt64Flag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kInt64Flag),</div> +<div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>  kNumberUint64Flag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kUint64Flag),</div> +<div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>  kNumberDoubleFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kDoubleFlag),</div> +<div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>  kNumberAnyFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag | kUintFlag | kUint64Flag | kDoubleFlag),</div> +<div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>  kConstStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag),</div> +<div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>  kCopyStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag | kCopyFlag),</div> +<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>  kShortStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag | kCopyFlag | kInlineStrFlag),</div> +<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>  kObjectFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>,</div> +<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>  kArrayFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>,</div> +<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>  </div> +<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>  kTypeMask = 0x07</div> +<div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>  };</div> +<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>  </div> +<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> kDefaultArrayCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY</a>;</div> +<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> kDefaultObjectCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272">RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY</a>;</div> +<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>  </div> +<div class="line"><a name="l02000"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_flag.html"> 2000</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_flag.html">Flag</a> {</div> +<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span> <span class="preprocessor">#if RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + 6]; <span class="comment">// 2 x SizeType + lower 48-bit pointer</span></div> +<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span> <span class="preprocessor">#elif RAPIDJSON_64BIT</span></div> +<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) + 6]; <span class="comment">// 6 padding bytes</span></div> +<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) + 2]; <span class="comment">// 2 padding bytes</span></div> +<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>  uint16_t flags;</div> +<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>  };</div> <div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>  </div> -<div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>  <span class="comment">// Initial flags of different types.</span></div> -<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>  kNullFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a>,</div> -<div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>  <span class="comment">// These casts are added to suppress the warning on MSVC about bitwise operations between enums of different types.</span></div> -<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>  kTrueFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a>) | static_cast<int>(kBoolFlag),</div> -<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>  kFalseFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a>) | static_cast<int>(kBoolFlag),</div> -<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>  kNumberIntFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag),</div> -<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>  kNumberUintFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kUintFlag | kUint64Flag | kInt64Flag),</div> -<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>  kNumberInt64Flag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kInt64Flag),</div> -<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>  kNumberUint64Flag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kUint64Flag),</div> -<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>  kNumberDoubleFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kDoubleFlag),</div> -<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>  kNumberAnyFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a>) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag | kUintFlag | kUint64Flag | kDoubleFlag),</div> -<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>  kConstStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag),</div> -<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>  kCopyStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag | kCopyFlag),</div> -<div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>  kShortStringFlag = static_cast<int>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a>) | static_cast<int>(kStringFlag | kCopyFlag | kInlineStrFlag),</div> -<div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>  kObjectFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>,</div> -<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>  kArrayFlag = <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>,</div> -<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>  </div> -<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>  kTypeMask = 0x07</div> -<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>  };</div> -<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>  </div> -<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> kDefaultArrayCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY</a>;</div> -<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> kDefaultObjectCapacity = <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272">RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY</a>;</div> +<div class="line"><a name="l02011"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_string.html"> 2011</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html">String</a> {</div> +<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length;</div> +<div class="line"><a name="l02013"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260"> 2013</a></span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> <a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260">hashcode</a>; <span class="comment">//!< reserved</span></div> +<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span> <span class="comment"></span> <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str;</div> +<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> +<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>  </div> +<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>  <span class="comment">// implementation detail: ShortString can represent zero-terminated strings up to MaxSize chars</span></div> +<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>  <span class="comment">// (excluding the terminating zero) and store a value to determine the length of the contained</span></div> +<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>  <span class="comment">// string in the last character str[LenPos] by storing "MaxSize - length" there. If the string</span></div> +<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>  <span class="comment">// to store has the maximal length of MaxSize then str[LenPos] will be 0 and therefore act as</span></div> +<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>  <span class="comment">// the string terminator as well. For getting the string length back from that value just use</span></div> +<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>  <span class="comment">// "MaxSize - str[LenPos]".</span></div> +<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>  <span class="comment">// This allows to store 13-chars strings in 32-bit mode, 21-chars strings in 64-bit mode,</span></div> +<div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>  <span class="comment">// 13-chars strings for RAPIDJSON_48BITPOINTER_OPTIMIZATION=1 inline (for `UTF8`-encoded strings).</span></div> +<div class="line"><a name="l02025"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_short_string.html"> 2025</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_short_string.html">ShortString</a> {</div> +<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>  <span class="keyword">enum</span> { MaxChars = <span class="keyword">sizeof</span>(static_cast<Flag*>(0)->payload) / <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>), MaxSize = MaxChars - 1, LenPos = MaxSize };</div> +<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> str[MaxChars];</div> +<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>  </div> +<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>  <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> Usable(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len) { <span class="keywordflow">return</span> (MaxSize >= len); }</div> +<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>  <span class="keyword">inline</span> <span class="keywordtype">void</span> SetLength(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len) { str[LenPos] = static_cast<Ch>(MaxSize - len); }</div> +<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>  <span class="keyword">inline</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> GetLength()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> static_cast<SizeType>(MaxSize - str[LenPos]); }</div> +<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>  }; <span class="comment">// at most as many bytes as "String" above => 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> <div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>  </div> -<div class="line"><a name="l02034"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_flag.html"> 2034</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_flag.html">Flag</a> {</div> -<div class="line"><a name="l02035"></a><span class="lineno"> 2035</span> <span class="preprocessor">#if RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + 6]; <span class="comment">// 2 x SizeType + lower 48-bit pointer</span></div> -<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span> <span class="preprocessor">#elif RAPIDJSON_64BIT</span></div> -<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) + 6]; <span class="comment">// 6 padding bytes</span></div> -<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>  <span class="keywordtype">char</span> payload[<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>) * 2 + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) + 2]; <span class="comment">// 2 padding bytes</span></div> -<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>  uint16_t flags;</div> -<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>  };</div> -<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>  </div> -<div class="line"><a name="l02045"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_string.html"> 2045</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html">String</a> {</div> -<div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length;</div> -<div class="line"><a name="l02047"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260"> 2047</a></span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> <a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260">hashcode</a>; <span class="comment">//!< reserved</span></div> -<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span> <span class="comment"></span> <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str;</div> -<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> -<div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>  </div> -<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>  <span class="comment">// implementation detail: ShortString can represent zero-terminated strings up to MaxSize chars</span></div> -<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>  <span class="comment">// (excluding the terminating zero) and store a value to determine the length of the contained</span></div> -<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>  <span class="comment">// string in the last character str[LenPos] by storing "MaxSize - length" there. If the string</span></div> -<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>  <span class="comment">// to store has the maximal length of MaxSize then str[LenPos] will be 0 and therefore act as</span></div> -<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>  <span class="comment">// the string terminator as well. For getting the string length back from that value just use</span></div> -<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>  <span class="comment">// "MaxSize - str[LenPos]".</span></div> -<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>  <span class="comment">// This allows to store 13-chars strings in 32-bit mode, 21-chars strings in 64-bit mode,</span></div> -<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>  <span class="comment">// 13-chars strings for RAPIDJSON_48BITPOINTER_OPTIMIZATION=1 inline (for `UTF8`-encoded strings).</span></div> -<div class="line"><a name="l02059"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_short_string.html"> 2059</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_short_string.html">ShortString</a> {</div> -<div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>  <span class="keyword">enum</span> { MaxChars = <span class="keyword">sizeof</span>(static_cast<Flag*>(0)->payload) / <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>), MaxSize = MaxChars - 1, LenPos = MaxSize };</div> -<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a> str[MaxChars];</div> -<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>  </div> -<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>  <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> Usable(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len) { <span class="keywordflow">return</span> (MaxSize >= len); }</div> -<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>  <span class="keyword">inline</span> <span class="keywordtype">void</span> SetLength(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len) { str[LenPos] = static_cast<Ch>(MaxSize - len); }</div> -<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>  <span class="keyword">inline</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> GetLength()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> static_cast<SizeType>(MaxSize - str[LenPos]); }</div> -<div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>  }; <span class="comment">// at most as many bytes as "String" above => 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> -<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>  </div> -<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>  <span class="comment">// By using proper binary layout, retrieval of different integer types do not need conversions.</span></div> -<div class="line"><a name="l02069"></a><span class="lineno"><a class="line" href="unionrapidjson_1_1_generic_value_1_1_number.html"> 2069</a></span>  <span class="keyword">union </span><a class="code" href="unionrapidjson_1_1_generic_value_1_1_number.html">Number</a> {</div> -<div class="line"><a name="l02070"></a><span class="lineno"> 2070</span> <span class="preprocessor">#if RAPIDJSON_ENDIAN == RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">I</a> {</div> -<div class="line"><a name="l02072"></a><span class="lineno"> 2072</span>  <span class="keywordtype">int</span> i;</div> -<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>  <span class="keywordtype">char</span> padding[4];</div> -<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>  }i;</div> -<div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">U</a> {</div> -<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>  <span class="keywordtype">unsigned</span> u;</div> -<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>  <span class="keywordtype">char</span> padding2[4];</div> -<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>  }u;</div> -<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l02080"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html"> 2080</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">I</a> {</div> -<div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>  <span class="keywordtype">char</span> padding[4];</div> -<div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>  <span class="keywordtype">int</span> i;</div> -<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>  }i;</div> -<div class="line"><a name="l02084"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html"> 2084</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">U</a> {</div> -<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>  <span class="keywordtype">char</span> padding2[4];</div> -<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>  <span class="keywordtype">unsigned</span> u;</div> -<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>  }u;</div> -<div class="line"><a name="l02088"></a><span class="lineno"> 2088</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>  int64_t i64;</div> -<div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>  uint64_t u64;</div> -<div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>  <span class="keywordtype">double</span> d;</div> -<div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>  }; <span class="comment">// 8 bytes</span></div> -<div class="line"><a name="l02093"></a><span class="lineno"> 2093</span>  </div> -<div class="line"><a name="l02094"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_object_data.html"> 2094</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_object_data.html">ObjectData</a> {</div> -<div class="line"><a name="l02095"></a><span class="lineno"> 2095</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> size;</div> -<div class="line"><a name="l02096"></a><span class="lineno"> 2096</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity;</div> -<div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* members;</div> -<div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> -<div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>  </div> -<div class="line"><a name="l02100"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_array_data.html"> 2100</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_array_data.html">ArrayData</a> {</div> -<div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> size;</div> -<div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity;</div> -<div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* elements;</div> -<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> -<div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>  </div> -<div class="line"><a name="l02106"></a><span class="lineno"><a class="line" href="unionrapidjson_1_1_generic_value_1_1_data.html"> 2106</a></span>  <span class="keyword">union </span><a class="code" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> {</div> -<div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html">String</a> s;</div> -<div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_short_string.html">ShortString</a> ss;</div> -<div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>  <a class="code" href="unionrapidjson_1_1_generic_value_1_1_number.html">Number</a> n;</div> -<div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_object_data.html">ObjectData</a> o;</div> -<div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_array_data.html">ArrayData</a> a;</div> -<div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_flag.html">Flag</a> f;</div> -<div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>  }; <span class="comment">// 16 bytes in 32-bit mode, 24 bytes in 64-bit mode, 16 bytes in 64-bit with RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>  </div> -<div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>  RAPIDJSON_FORCEINLINE <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* GetStringPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>, data_.s.str); }</div> -<div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>  RAPIDJSON_FORCEINLINE <span class="keyword">const</span> Ch* SetStringPointer(<span class="keyword">const</span> Ch* str) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(Ch, data_.s.str, str); }</div> -<div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>  RAPIDJSON_FORCEINLINE GenericValue* GetElementsPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(GenericValue, data_.a.elements); }</div> -<div class="line"><a name="l02118"></a><span class="lineno"> 2118</span>  RAPIDJSON_FORCEINLINE GenericValue* SetElementsPointer(GenericValue* elements) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(GenericValue, data_.a.elements, elements); }</div> -<div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>  RAPIDJSON_FORCEINLINE Member* GetMembersPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(Member, data_.o.members); }</div> -<div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>  RAPIDJSON_FORCEINLINE Member* SetMembersPointer(Member* members) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(Member, data_.o.members, members); }</div> +<div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>  <span class="comment">// By using proper binary layout, retrieval of different integer types do not need conversions.</span></div> +<div class="line"><a name="l02035"></a><span class="lineno"><a class="line" href="unionrapidjson_1_1_generic_value_1_1_number.html"> 2035</a></span>  <span class="keyword">union </span><a class="code" href="unionrapidjson_1_1_generic_value_1_1_number.html">Number</a> {</div> +<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span> <span class="preprocessor">#if RAPIDJSON_ENDIAN == RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">I</a> {</div> +<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>  <span class="keywordtype">int</span> i;</div> +<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>  <span class="keywordtype">char</span> padding[4];</div> +<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>  }i;</div> +<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">U</a> {</div> +<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>  <span class="keywordtype">unsigned</span> u;</div> +<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>  <span class="keywordtype">char</span> padding2[4];</div> +<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>  }u;</div> +<div class="line"><a name="l02045"></a><span class="lineno"> 2045</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l02046"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html"> 2046</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">I</a> {</div> +<div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>  <span class="keywordtype">char</span> padding[4];</div> +<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>  <span class="keywordtype">int</span> i;</div> +<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>  }i;</div> +<div class="line"><a name="l02050"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html"> 2050</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">U</a> {</div> +<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>  <span class="keywordtype">char</span> padding2[4];</div> +<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>  <span class="keywordtype">unsigned</span> u;</div> +<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>  }u;</div> +<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>  int64_t i64;</div> +<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>  uint64_t u64;</div> +<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>  <span class="keywordtype">double</span> d;</div> +<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>  }; <span class="comment">// 8 bytes</span></div> +<div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>  </div> +<div class="line"><a name="l02060"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_object_data.html"> 2060</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_object_data.html">ObjectData</a> {</div> +<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> size;</div> +<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity;</div> +<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* members;</div> +<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> +<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>  </div> +<div class="line"><a name="l02066"></a><span class="lineno"><a class="line" href="structrapidjson_1_1_generic_value_1_1_array_data.html"> 2066</a></span>  <span class="keyword">struct </span><a class="code" href="structrapidjson_1_1_generic_value_1_1_array_data.html">ArrayData</a> {</div> +<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> size;</div> +<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity;</div> +<div class="line"><a name="l02069"></a><span class="lineno"> 2069</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>* elements;</div> +<div class="line"><a name="l02070"></a><span class="lineno"> 2070</span>  }; <span class="comment">// 12 bytes in 32-bit mode, 16 bytes in 64-bit mode</span></div> +<div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>  </div> +<div class="line"><a name="l02072"></a><span class="lineno"><a class="line" href="unionrapidjson_1_1_generic_value_1_1_data.html"> 2072</a></span>  <span class="keyword">union </span><a class="code" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a> {</div> +<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_string.html">String</a> s;</div> +<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_short_string.html">ShortString</a> ss;</div> +<div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>  <a class="code" href="unionrapidjson_1_1_generic_value_1_1_number.html">Number</a> n;</div> +<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_object_data.html">ObjectData</a> o;</div> +<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_array_data.html">ArrayData</a> a;</div> +<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>  <a class="code" href="structrapidjson_1_1_generic_value_1_1_flag.html">Flag</a> f;</div> +<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span>  }; <span class="comment">// 16 bytes in 32-bit mode, 24 bytes in 64-bit mode, 16 bytes in 64-bit with RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l02080"></a><span class="lineno"> 2080</span>  </div> +<div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE <span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* DataString(<span class="keyword">const</span> <a class="code" href="unionrapidjson_1_1_generic_value_1_1_data.html">Data</a>& data) {</div> +<div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>  <span class="keywordflow">return</span> (data.f.flags & kInlineStrFlag) ? data.ss.str : RAPIDJSON_GETPOINTER(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>, data.s.str);</div> +<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>  }</div> +<div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> DataStringLength(<span class="keyword">const</span> Data& data) {</div> +<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>  <span class="keywordflow">return</span> (data.f.flags & kInlineStrFlag) ? data.ss.GetLength() : data.s.length;</div> +<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>  }</div> +<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>  </div> +<div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>  RAPIDJSON_FORCEINLINE <span class="keyword">const</span> Ch* GetStringPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(Ch, data_.s.str); }</div> +<div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>  RAPIDJSON_FORCEINLINE <span class="keyword">const</span> Ch* SetStringPointer(<span class="keyword">const</span> Ch* str) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(Ch, data_.s.str, str); }</div> +<div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>  RAPIDJSON_FORCEINLINE GenericValue* GetElementsPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(GenericValue, data_.a.elements); }</div> +<div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>  RAPIDJSON_FORCEINLINE GenericValue* SetElementsPointer(GenericValue* elements) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(GenericValue, data_.a.elements, elements); }</div> +<div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>  RAPIDJSON_FORCEINLINE Member* GetMembersPointer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> RAPIDJSON_GETPOINTER(Member, data_.o.members); }</div> +<div class="line"><a name="l02093"></a><span class="lineno"> 2093</span>  RAPIDJSON_FORCEINLINE Member* SetMembersPointer(Member* members) { <span class="keywordflow">return</span> RAPIDJSON_SETPOINTER(Member, data_.o.members, members); }</div> +<div class="line"><a name="l02094"></a><span class="lineno"> 2094</span>  </div> +<div class="line"><a name="l02095"></a><span class="lineno"> 2095</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02096"></a><span class="lineno"> 2096</span>  </div> +<div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>  <span class="keyword">struct </span>MapTraits {</div> +<div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>  <span class="keyword">struct </span>Less {</div> +<div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>  <span class="keywordtype">bool</span> operator()(<span class="keyword">const</span> Data& s1, <span class="keyword">const</span> Data& s2)<span class="keyword"> const </span>{</div> +<div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> n1 = DataStringLength(s1), n2 = DataStringLength(s2);</div> +<div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>  <span class="keywordtype">int</span> cmp = std::memcmp(DataString(s1), DataString(s2), <span class="keyword">sizeof</span>(Ch) * (n1 < n2 ? n1 : n2));</div> +<div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>  <span class="keywordflow">return</span> cmp < 0 || (cmp == 0 && n1 < n2);</div> +<div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>  }</div> +<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>  };</div> +<div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>  <span class="keyword">typedef</span> std::pair<const Data, SizeType> Pair;</div> +<div class="line"><a name="l02106"></a><span class="lineno"> 2106</span>  <span class="keyword">typedef</span> std::multimap<Data, SizeType, Less, StdAllocator<Pair, Allocator> > Map;</div> +<div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> Map::iterator Iterator;</div> +<div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>  };</div> +<div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> MapTraits::Map Map;</div> +<div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> MapTraits::Less MapLess;</div> +<div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> MapTraits::Pair MapPair;</div> +<div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> MapTraits::Iterator MapIterator;</div> +<div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>  </div> +<div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>  <span class="comment">//</span></div> +<div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>  <span class="comment">// Layout of the members' map/array, re(al)located according to the needed capacity:</span></div> +<div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>  <span class="comment">//</span></div> +<div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>  <span class="comment">// {Map*}<>{capacity}<>{Member[capacity]}<>{MapIterator[capacity]}</span></div> +<div class="line"><a name="l02118"></a><span class="lineno"> 2118</span>  <span class="comment">//</span></div> +<div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>  <span class="comment">// (where <> stands for the RAPIDJSON_ALIGN-ment, if needed)</span></div> +<div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>  <span class="comment">//</span></div> <div class="line"><a name="l02121"></a><span class="lineno"> 2121</span>  </div> -<div class="line"><a name="l02122"></a><span class="lineno"> 2122</span>  <span class="comment">// Initialize this value as array with initial data, without calling destructor.</span></div> -<div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>  <span class="keywordtype">void</span> SetArrayRaw(GenericValue* values, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>  data_.f.flags = kArrayFlag;</div> -<div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>  <span class="keywordflow">if</span> (count) {</div> -<div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>  GenericValue* e = static_cast<GenericValue*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(GenericValue)));</div> -<div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>  SetElementsPointer(e);</div> -<div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>  std::memcpy(static_cast<void*>(e), values, count * <span class="keyword">sizeof</span>(GenericValue));</div> -<div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>  }</div> -<div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>  SetElementsPointer(0);</div> -<div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>  data_.a.size = data_.a.capacity = count;</div> -<div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>  }</div> -<div class="line"><a name="l02134"></a><span class="lineno"> 2134</span> <span class="comment"></span> </div> -<div class="line"><a name="l02135"></a><span class="lineno"> 2135</span> <span class="comment"> //! Initialize this value as object with initial data, without calling destructor.</span></div> -<div class="line"><a name="l02136"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac"> 2136</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* members, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>  data_.f.flags = kObjectFlag;</div> -<div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>  <span class="keywordflow">if</span> (count) {</div> -<div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* m = static_cast<Member*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>)));</div> -<div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>  SetMembersPointer(m);</div> -<div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>  std::memcpy(static_cast<void*>(m), members, count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>));</div> -<div class="line"><a name="l02142"></a><span class="lineno"> 2142</span>  }</div> -<div class="line"><a name="l02143"></a><span class="lineno"> 2143</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>  SetMembersPointer(0);</div> -<div class="line"><a name="l02145"></a><span class="lineno"> 2145</span>  data_.o.size = data_.o.capacity = count;</div> -<div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>  }</div> -<div class="line"><a name="l02147"></a><span class="lineno"> 2147</span> <span class="comment"></span> </div> -<div class="line"><a name="l02148"></a><span class="lineno"> 2148</span> <span class="comment"> //! Initialize this value as constant string, without calling destructor.</span></div> -<div class="line"><a name="l02149"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835"> 2149</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>  data_.f.flags = kConstStringFlag;</div> -<div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>  SetStringPointer(s);</div> -<div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>  data_.s.length = s.length;</div> -<div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>  }</div> -<div class="line"><a name="l02154"></a><span class="lineno"> 2154</span> <span class="comment"></span> </div> -<div class="line"><a name="l02155"></a><span class="lineno"> 2155</span> <span class="comment"> //! Initialize this value as copy string with initial data, without calling destructor.</span></div> -<div class="line"><a name="l02156"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c"> 2156</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> -<div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str = 0;</div> -<div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>  <span class="keywordflow">if</span> (ShortString::Usable(s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>)) {</div> -<div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>  data_.f.flags = kShortStringFlag;</div> -<div class="line"><a name="l02160"></a><span class="lineno"> 2160</span>  data_.ss.SetLength(s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>);</div> -<div class="line"><a name="l02161"></a><span class="lineno"> 2161</span>  str = data_.ss.str;</div> -<div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>  } <span class="keywordflow">else</span> {</div> -<div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>  data_.f.flags = kCopyStringFlag;</div> -<div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>  data_.s.length = s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>;</div> -<div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>  str = static_cast<Ch *>(allocator.Malloc((s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a> + 1) * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>)));</div> -<div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>  SetStringPointer(str);</div> -<div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>  }</div> -<div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>  std::memcpy(str, s, s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a> * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>));</div> -<div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>  str[s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>] = <span class="charliteral">'\0'</span>;</div> -<div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>  }</div> -<div class="line"><a name="l02171"></a><span class="lineno"> 2171</span> <span class="comment"></span> </div> -<div class="line"><a name="l02172"></a><span class="lineno"> 2172</span> <span class="comment"> //! Assignment without calling destructor</span></div> -<div class="line"><a name="l02173"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e"> 2173</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& rhs) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>  data_ = rhs.data_;</div> -<div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>  <span class="comment">// data_.f.flags = rhs.data_.f.flags;</span></div> -<div class="line"><a name="l02176"></a><span class="lineno"> 2176</span>  rhs.data_.f.flags = kNullFlag;</div> -<div class="line"><a name="l02177"></a><span class="lineno"> 2177</span>  }</div> -<div class="line"><a name="l02178"></a><span class="lineno"> 2178</span>  </div> -<div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> -<div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>  <span class="keywordtype">bool</span> StringEqual(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding, SourceAllocator></a>& rhs)<span class="keyword"> const </span>{</div> -<div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString());</div> -<div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(rhs.IsString());</div> -<div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>  </div> -<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>  <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len1 = GetStringLength();</div> -<div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>  <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len2 = rhs.GetStringLength();</div> -<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>  <span class="keywordflow">if</span>(len1 != len2) { <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div> -<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>  </div> -<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>  <span class="keyword">const</span> Ch* <span class="keyword">const</span> str1 = GetString();</div> -<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>  <span class="keyword">const</span> Ch* <span class="keyword">const</span> str2 = rhs.GetString();</div> -<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>  <span class="keywordflow">if</span>(str1 == str2) { <span class="keywordflow">return</span> <span class="keyword">true</span>; } <span class="comment">// fast path for constant string</span></div> -<div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>  </div> -<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>  <span class="keywordflow">return</span> (std::memcmp(str1, str2, <span class="keyword">sizeof</span>(Ch) * len1) == 0);</div> -<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>  }</div> -<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>  </div> -<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>  Data data_;</div> -<div class="line"><a name="l02196"></a><span class="lineno"> 2196</span> };</div> -<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span> <span class="comment"></span> </div> -<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span> <span class="comment">//! GenericValue with UTF8 encoding</span></div> -<div class="line"><a name="l02199"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505"> 2199</a></span> <span class="comment"></span><span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<UTF8<></a> > <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a>;</div> -<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span> <span class="comment"></span> </div> -<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l02202"></a><span class="lineno"> 2202</span> <span class="comment"></span><span class="comment">// GenericDocument </span></div> -<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span> <span class="comment"></span> </div> -<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span> <span class="comment">//! A document for parsing JSON text as DOM.</span></div> -<div class="line"><a name="l02205"></a><span class="lineno"> 2205</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l02206"></a><span class="lineno"> 2206</span> <span class="comment"> \note implements Handler concept</span></div> -<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span> <span class="comment"> \tparam Encoding Encoding for both parsing and string storage.</span></div> -<div class="line"><a name="l02208"></a><span class="lineno"> 2208</span> <span class="comment"> \tparam Allocator Allocator for allocating memory for the DOM</span></div> -<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span> <span class="comment"> \tparam StackAllocator Allocator for allocating memory for stack during parsing.</span></div> -<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span> <span class="comment"> \warning Although GenericDocument inherits from GenericValue, the API does \b not provide any virtual functions, especially no virtual destructor. To avoid memory leaks, do not \c delete a GenericDocument object via a pointer to a GenericValue.</span></div> -<div class="line"><a name="l02211"></a><span class="lineno"> 2211</span> <span class="comment">*/</span></div> -<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Encoding, <span class="keyword">typename</span> Allocator = RAPIDJSON_DEFAULT_ALLOCATOR, <span class="keyword">typename</span> StackAllocator = RAPIDJSON_DEFAULT_STACK_ALLOCATOR ></div> -<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a> : <span class="keyword">public</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a><Encoding, Allocator> {</div> -<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l02215"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5"> 2215</a></span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> Encoding::Ch <a class="code" href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5">Ch</a>; <span class="comment">//!< Character type derived from Encoding.</span></div> -<div class="line"><a name="l02216"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc"> 2216</a></span> <span class="comment"></span> <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding, Allocator></a> <a class="code" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">ValueType</a>; <span class="comment">//!< Value type of the document.</span></div> -<div class="line"><a name="l02217"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773"> 2217</a></span> <span class="comment"></span> <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> <a class="code" href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773">AllocatorType</a>; <span class="comment">//!< Allocator type from template parameter.</span></div> -<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span> <span class="comment"> //! Constructor</span></div> -<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span> <span class="comment"></span><span class="comment"> /*! Creates an empty document of specified type.</span></div> -<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span> <span class="comment"> \param type Mandatory type of object to create.</span></div> -<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span> <span class="comment"> \param allocator Optional allocator for allocating memory.</span></div> -<div class="line"><a name="l02223"></a><span class="lineno"> 2223</span> <span class="comment"> \param stackCapacity Optional initial capacity of stack in bytes.</span></div> -<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span> <span class="comment"> \param stackAllocator Optional allocator for allocating memory for stack.</span></div> -<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02226"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5"> 2226</a></span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">GenericDocument</a>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> type, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator = 0, <span class="keywordtype">size_t</span> stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) :</div> -<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a><<a class="code" href="classrapidjson_1_1_encoding.html">Encoding</a>, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>>(type), allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_()</div> -<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>  {</div> -<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>  <span class="keywordflow">if</span> (!allocator_)</div> -<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>  ownAllocator_ = allocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>)();</div> -<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>  }</div> -<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span> <span class="comment"></span> </div> -<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span> <span class="comment"> //! Constructor</span></div> -<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span> <span class="comment"></span><span class="comment"> /*! Creates an empty document which type is Null. </span></div> -<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span> <span class="comment"> \param allocator Optional allocator for allocating memory.</span></div> -<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span> <span class="comment"> \param stackCapacity Optional initial capacity of stack in bytes.</span></div> -<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span> <span class="comment"> \param stackAllocator Optional allocator for allocating memory for stack.</span></div> -<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02239"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb"> 2239</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">GenericDocument</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator = 0, <span class="keywordtype">size_t</span> stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) : </div> -<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span>  allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_()</div> -<div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>  {</div> -<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>  <span class="keywordflow">if</span> (!allocator_)</div> -<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>  ownAllocator_ = allocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>)();</div> +<div class="line"><a name="l02122"></a><span class="lineno"> 2122</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE <span class="keywordtype">size_t</span> GetMapLayoutSize(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity) {</div> +<div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>  <span class="keywordflow">return</span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)) +</div> +<div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>)) +</div> +<div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(capacity * <span class="keyword">sizeof</span>(Member)) +</div> +<div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>  capacity * <span class="keyword">sizeof</span>(MapIterator);</div> +<div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>  }</div> +<div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>  </div> +<div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> &GetMapCapacity(Map* &map) {</div> +<div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>  <span class="keywordflow">return</span> *reinterpret_cast<SizeType*>(reinterpret_cast<uintptr_t>(&map) +</div> +<div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)));</div> +<div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>  }</div> +<div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>  </div> +<div class="line"><a name="l02134"></a><span class="lineno"> 2134</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE Member* GetMapMembers(Map* &map) {</div> +<div class="line"><a name="l02135"></a><span class="lineno"> 2135</span>  <span class="keywordflow">return</span> reinterpret_cast<Member*>(reinterpret_cast<uintptr_t>(&map) +</div> +<div class="line"><a name="l02136"></a><span class="lineno"> 2136</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)) +</div> +<div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>)));</div> +<div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>  }</div> +<div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>  </div> +<div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE MapIterator* GetMapIterators(Map* &map) {</div> +<div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>  <span class="keywordflow">return</span> reinterpret_cast<MapIterator*>(reinterpret_cast<uintptr_t>(&map) +</div> +<div class="line"><a name="l02142"></a><span class="lineno"> 2142</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)) +</div> +<div class="line"><a name="l02143"></a><span class="lineno"> 2143</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>)) +</div> +<div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(GetMapCapacity(map) * <span class="keyword">sizeof</span>(Member)));</div> +<div class="line"><a name="l02145"></a><span class="lineno"> 2145</span>  }</div> +<div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>  </div> +<div class="line"><a name="l02147"></a><span class="lineno"> 2147</span>  <span class="keyword">static</span> RAPIDJSON_FORCEINLINE Map* &GetMap(Member* members) {</div> +<div class="line"><a name="l02148"></a><span class="lineno"> 2148</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(members != 0);</div> +<div class="line"><a name="l02149"></a><span class="lineno"> 2149</span>  <span class="keywordflow">return</span> *reinterpret_cast<Map**>(reinterpret_cast<uintptr_t>(members) -</div> +<div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>)) -</div> +<div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a>(<span class="keyword">sizeof</span>(Map*)));</div> +<div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>  }</div> +<div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>  </div> +<div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>  <span class="comment">// Some compilers' debug mechanisms want all iterators to be destroyed, for their accounting..</span></div> +<div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>  RAPIDJSON_FORCEINLINE MapIterator DropMapIterator(MapIterator& rhs) {</div> +<div class="line"><a name="l02156"></a><span class="lineno"> 2156</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>  MapIterator ret = std::move(rhs);</div> +<div class="line"><a name="l02158"></a><span class="lineno"> 2158</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>  MapIterator ret = rhs;</div> +<div class="line"><a name="l02160"></a><span class="lineno"> 2160</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02161"></a><span class="lineno"> 2161</span>  rhs.~MapIterator();</div> +<div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>  <span class="keywordflow">return</span> ret;</div> +<div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>  }</div> +<div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>  </div> +<div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>  Map* &DoReallocMap(Map** oldMap, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>  Map **newMap = static_cast<Map**>(allocator.Malloc(GetMapLayoutSize(newCapacity)));</div> +<div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>  GetMapCapacity(*newMap) = newCapacity;</div> +<div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>  <span class="keywordflow">if</span> (!oldMap) {</div> +<div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>  *newMap = <span class="keyword">new</span> (allocator.Malloc(<span class="keyword">sizeof</span>(Map))) Map(MapLess(), allocator);</div> +<div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>  }</div> +<div class="line"><a name="l02171"></a><span class="lineno"> 2171</span>  <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l02172"></a><span class="lineno"> 2172</span>  *newMap = *oldMap;</div> +<div class="line"><a name="l02173"></a><span class="lineno"> 2173</span>  <span class="keywordtype">size_t</span> count = (*oldMap)->size();</div> +<div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>  std::memcpy(static_cast<void*>(GetMapMembers(*newMap)),</div> +<div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>  static_cast<void*>(GetMapMembers(*oldMap)),</div> +<div class="line"><a name="l02176"></a><span class="lineno"> 2176</span>  count * <span class="keyword">sizeof</span>(Member));</div> +<div class="line"><a name="l02177"></a><span class="lineno"> 2177</span>  MapIterator *oldIt = GetMapIterators(*oldMap),</div> +<div class="line"><a name="l02178"></a><span class="lineno"> 2178</span>  *newIt = GetMapIterators(*newMap);</div> +<div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>  <span class="keywordflow">while</span> (count--) {</div> +<div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>  <span class="keyword">new</span> (&newIt[count]) MapIterator(DropMapIterator(oldIt[count]));</div> +<div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>  }</div> +<div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>  Allocator::Free(oldMap);</div> +<div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>  }</div> +<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>  <span class="keywordflow">return</span> *newMap;</div> +<div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>  }</div> +<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>  </div> +<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>  RAPIDJSON_FORCEINLINE Member* DoAllocMembers(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>  <span class="keywordflow">return</span> GetMapMembers(DoReallocMap(0, capacity, allocator));</div> +<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>  }</div> +<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>  </div> +<div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>  <span class="keywordtype">void</span> DoReserveMembers(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>  <span class="keywordflow">if</span> (newCapacity > o.capacity) {</div> +<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>  Member* oldMembers = GetMembersPointer();</div> +<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>  Map **oldMap = oldMembers ? &GetMap(oldMembers) : 0,</div> +<div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>  *&newMap = DoReallocMap(oldMap, newCapacity, allocator);</div> +<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>  RAPIDJSON_SETPOINTER(Member, o.members, GetMapMembers(newMap));</div> +<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>  o.capacity = newCapacity;</div> +<div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>  }</div> +<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span>  }</div> +<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span>  </div> +<div class="line"><a name="l02202"></a><span class="lineno"> 2202</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span>  MemberIterator DoFindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>  <span class="keywordflow">if</span> (Member* members = GetMembersPointer()) {</div> +<div class="line"><a name="l02205"></a><span class="lineno"> 2205</span>  Map* &map = GetMap(members);</div> +<div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>  MapIterator mit = map->find(reinterpret_cast<const Data&>(name.data_));</div> +<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>  <span class="keywordflow">if</span> (mit != map->end()) {</div> +<div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>  <span class="keywordflow">return</span> MemberIterator(&members[mit->second]);</div> +<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>  }</div> +<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>  }</div> +<div class="line"><a name="l02211"></a><span class="lineno"> 2211</span>  <span class="keywordflow">return</span> MemberEnd();</div> +<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>  }</div> +<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>  </div> +<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>  <span class="keywordtype">void</span> DoClearMembers() {</div> +<div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>  <span class="keywordflow">if</span> (Member* members = GetMembersPointer()) {</div> +<div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>  Map* &map = GetMap(members);</div> +<div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < data_.o.size; i++) {</div> +<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>  map->erase(DropMapIterator(mit[i]));</div> +<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span>  members[i].~Member();</div> +<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span>  }</div> +<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span>  data_.o.size = 0;</div> +<div class="line"><a name="l02223"></a><span class="lineno"> 2223</span>  }</div> +<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>  }</div> +<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>  </div> +<div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>  <span class="keywordtype">void</span> DoFreeMembers() {</div> +<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>  <span class="keywordflow">if</span> (Member* members = GetMembersPointer()) {</div> +<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>  GetMap(members)->~Map();</div> +<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < data_.o.size; i++) {</div> +<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>  members[i].~Member();</div> +<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>  }</div> +<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree) { <span class="comment">// Shortcut by Allocator's trait</span></div> +<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span>  Map** map = &GetMap(members);</div> +<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span>  Allocator::Free(*map);</div> +<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span>  Allocator::Free(map);</div> +<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>  }</div> +<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span>  }</div> +<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>  }</div> +<div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>  </div> +<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span> <span class="preprocessor">#else // !RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>  </div> +<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>  RAPIDJSON_FORCEINLINE Member* DoAllocMembers(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> capacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>  <span class="keywordflow">return</span> Malloc<Member>(allocator, capacity);</div> <div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>  }</div> <div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>  </div> -<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span> <span class="comment"> //! Move constructor in C++11</span></div> -<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>&& rhs) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>  : ValueType(std::forward<ValueType>(rhs)), <span class="comment">// explicit cast to avoid prohibited move from Document</span></div> -<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>  allocator_(rhs.allocator_),</div> -<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>  ownAllocator_(rhs.ownAllocator_),</div> -<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>  stack_(std::move(rhs.stack_)),</div> -<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>  parseResult_(rhs.parseResult_)</div> -<div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>  {</div> -<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>  rhs.allocator_ = 0;</div> -<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>  rhs.ownAllocator_ = 0;</div> -<div class="line"><a name="l02257"></a><span class="lineno"> 2257</span>  rhs.parseResult_ = <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">ParseResult</a>();</div> -<div class="line"><a name="l02258"></a><span class="lineno"> 2258</span>  }</div> -<div class="line"><a name="l02259"></a><span class="lineno"> 2259</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>  </div> -<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>  ~GenericDocument() {</div> -<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>  Destroy();</div> -<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>  }</div> -<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>  </div> -<div class="line"><a name="l02265"></a><span class="lineno"> 2265</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span> <span class="comment"> //! Move assignment in C++11</span></div> -<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span> <span class="comment"></span> GenericDocument& operator=(GenericDocument&& rhs) RAPIDJSON_NOEXCEPT</div> -<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>  {</div> -<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>  <span class="comment">// The cast to ValueType is necessary here, because otherwise it would</span></div> -<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>  <span class="comment">// attempt to call GenericValue's templated assignment operator.</span></div> -<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>  ValueType::operator=(std::forward<ValueType>(rhs));</div> -<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>  </div> -<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>  <span class="comment">// Calling the destructor here would prematurely call stack_'s destructor</span></div> -<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>  Destroy();</div> +<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>  <span class="keywordtype">void</span> DoReserveMembers(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>  <span class="keywordflow">if</span> (newCapacity > o.capacity) {</div> +<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>  Member* newMembers = Realloc<Member>(allocator, GetMembersPointer(), o.capacity, newCapacity);</div> +<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>  RAPIDJSON_SETPOINTER(Member, o.members, newMembers);</div> +<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>  o.capacity = newCapacity;</div> +<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>  }</div> +<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>  }</div> +<div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>  </div> +<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>  MemberIterator DoFindMember(<span class="keyword">const</span> GenericValue<Encoding, SourceAllocator>& name) {</div> +<div class="line"><a name="l02257"></a><span class="lineno"> 2257</span>  MemberIterator member = MemberBegin();</div> +<div class="line"><a name="l02258"></a><span class="lineno"> 2258</span>  <span class="keywordflow">for</span> ( ; member != MemberEnd(); ++member)</div> +<div class="line"><a name="l02259"></a><span class="lineno"> 2259</span>  <span class="keywordflow">if</span> (name.StringEqual(member->name))</div> +<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>  <span class="keywordflow">break</span>;</div> +<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>  <span class="keywordflow">return</span> member;</div> +<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>  }</div> +<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>  </div> +<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>  <span class="keywordtype">void</span> DoClearMembers() {</div> +<div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>  <span class="keywordflow">for</span> (MemberIterator m = MemberBegin(); m != MemberEnd(); ++m)</div> +<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>  m->~Member();</div> +<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>  data_.o.size = 0;</div> +<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>  }</div> +<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>  </div> +<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>  <span class="keywordtype">void</span> DoFreeMembers() {</div> +<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>  <span class="keywordflow">for</span> (MemberIterator m = MemberBegin(); m != MemberEnd(); ++m)</div> +<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>  m->~Member();</div> +<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>  Allocator::Free(GetMembersPointer());</div> +<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>  }</div> <div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>  </div> -<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>  allocator_ = rhs.allocator_;</div> -<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>  ownAllocator_ = rhs.ownAllocator_;</div> -<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>  stack_ = std::move(rhs.stack_);</div> -<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>  parseResult_ = rhs.parseResult_;</div> -<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>  </div> -<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>  rhs.allocator_ = 0;</div> -<div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>  rhs.ownAllocator_ = 0;</div> -<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>  rhs.parseResult_ = ParseResult();</div> -<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>  </div> -<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span>  }</div> -<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02288"></a><span class="lineno"> 2288</span> <span class="comment"></span> </div> -<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span> <span class="comment"> //! Exchange the contents of this document with those of another.</span></div> -<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span> <span class="comment"> \param rhs Another document.</span></div> -<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span> <span class="comment"> \note Constant complexity.</span></div> -<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span> <span class="comment"> \see GenericValue::Swap</span></div> -<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02295"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b"> 2295</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">Swap</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& rhs) RAPIDJSON_NOEXCEPT {</div> -<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>  ValueType::Swap(rhs);</div> -<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span>  stack_.Swap(rhs.stack_);</div> -<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>  internal::Swap(allocator_, rhs.allocator_);</div> -<div class="line"><a name="l02299"></a><span class="lineno"> 2299</span>  internal::Swap(ownAllocator_, rhs.ownAllocator_);</div> -<div class="line"><a name="l02300"></a><span class="lineno"> 2300</span>  internal::Swap(parseResult_, rhs.parseResult_);</div> -<div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>  }</div> -<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>  </div> -<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>  <span class="comment">// Allow Swap with ValueType.</span></div> -<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>  <span class="comment">// Refer to Effective C++ 3rd Edition/Item 33: Avoid hiding inherited names.</span></div> -<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>  <span class="keyword">using</span> ValueType::Swap;</div> -<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span> <span class="comment"></span> </div> -<div class="line"><a name="l02308"></a><span class="lineno"> 2308</span> <span class="comment"> //! free-standing swap function helper</span></div> -<div class="line"><a name="l02309"></a><span class="lineno"> 2309</span> <span class="comment"></span><span class="comment"> /*!</span></div> -<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span> <span class="comment"> Helper function to enable support for common swap implementation pattern based on \c std::swap:</span></div> -<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span> <span class="comment"> void swap(MyClass& a, MyClass& b) {</span></div> -<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span> <span class="comment"> using std::swap;</span></div> -<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span> <span class="comment"> swap(a.doc, b.doc);</span></div> -<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span> <span class="comment"> // ...</span></div> -<div class="line"><a name="l02316"></a><span class="lineno"> 2316</span> <span class="comment"> }</span></div> -<div class="line"><a name="l02317"></a><span class="lineno"> 2317</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span> <span class="comment"> \see Swap()</span></div> -<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02320"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d"> 2320</a></span>  <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">swap</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& a, <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& b) RAPIDJSON_NOEXCEPT { a.Swap(b); }</div> -<div class="line"><a name="l02321"></a><span class="lineno"> 2321</span> <span class="comment"></span> </div> -<div class="line"><a name="l02322"></a><span class="lineno"> 2322</span> <span class="comment"> //! Populate this document by a generator which produces SAX events.</span></div> -<div class="line"><a name="l02323"></a><span class="lineno"> 2323</span> <span class="comment"></span><span class="comment"> /*! \tparam Generator A functor with <tt>bool f(Handler)</tt> prototype.</span></div> -<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span> <span class="comment"> \param g Generator functor which sends SAX events to the parameter.</span></div> -<div class="line"><a name="l02325"></a><span class="lineno"> 2325</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02326"></a><span class="lineno"> 2326</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> Generator></div> -<div class="line"><a name="l02328"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64"> 2328</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">Populate</a>(Generator& g) {</div> -<div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>  ClearStackOnExit scope(*<span class="keyword">this</span>);</div> -<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span>  <span class="keywordflow">if</span> (g(*<span class="keyword">this</span>)) {</div> -<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(stack_.GetSize() == <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">ValueType</a>)); <span class="comment">// Got one and only one root object</span></div> -<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>  ValueType::operator=(*stack_.template Pop<ValueType>(1));<span class="comment">// Move value from stack to document</span></div> -<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span>  }</div> -<div class="line"><a name="l02334"></a><span class="lineno"> 2334</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>  }</div> -<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span> <span class="comment"></span> </div> -<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span> <span class="comment"> //!@name Parse from stream</span></div> -<div class="line"><a name="l02338"></a><span class="lineno"> 2338</span> <span class="comment"> //!@{</span></div> -<div class="line"><a name="l02339"></a><span class="lineno"> 2339</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span> <span class="comment"> //! Parse JSON text from an input stream (with Encoding conversion)</span></div> -<div class="line"><a name="l02341"></a><span class="lineno"> 2341</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> -<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span> <span class="comment"> \tparam SourceEncoding Encoding of input stream</span></div> -<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span> <span class="comment"> \tparam InputStream Type of input stream, implementing Stream concept</span></div> -<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span> <span class="comment"> \param is Input stream to be parsed.</span></div> -<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding, <span class="keyword">typename</span> InputStream></div> -<div class="line"><a name="l02348"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85"> 2348</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">ParseStream</a>(InputStream& is) {</div> -<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>  <a class="code" href="classrapidjson_1_1_generic_reader.html">GenericReader<SourceEncoding, Encoding, StackAllocator></a> reader(</div> -<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>  stack_.HasAllocator() ? &stack_.GetAllocator() : 0);</div> -<div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>  ClearStackOnExit scope(*<span class="keyword">this</span>);</div> -<div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>  parseResult_ = reader.template Parse<parseFlags>(is, *<span class="keyword">this</span>);</div> -<div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>  <span class="keywordflow">if</span> (parseResult_) {</div> -<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(stack_.GetSize() == <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">ValueType</a>)); <span class="comment">// Got one and only one root object</span></div> -<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>  ValueType::operator=(*stack_.template Pop<ValueType>(1));<span class="comment">// Move value from stack to document</span></div> -<div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>  }</div> -<div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>  }</div> -<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span> <span class="comment"></span> </div> -<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span> <span class="comment"> //! Parse JSON text from an input stream</span></div> -<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> -<div class="line"><a name="l02362"></a><span class="lineno"> 2362</span> <span class="comment"> \tparam InputStream Type of input stream, implementing Stream concept</span></div> -<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span> <span class="comment"> \param is Input stream to be parsed.</span></div> -<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> InputStream></div> -<div class="line"><a name="l02367"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a"> 2367</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">ParseStream</a>(InputStream& is) {</div> -<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>  <span class="keywordflow">return</span> ParseStream<parseFlags, Encoding, InputStream>(is);</div> -<div class="line"><a name="l02369"></a><span class="lineno"> 2369</span>  }</div> -<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span> <span class="comment"></span> </div> -<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span> <span class="comment"> //! Parse JSON text from an input stream (with \ref kParseDefaultFlags)</span></div> -<div class="line"><a name="l02372"></a><span class="lineno"> 2372</span> <span class="comment"></span><span class="comment"> /*! \tparam InputStream Type of input stream, implementing Stream concept</span></div> -<div class="line"><a name="l02373"></a><span class="lineno"> 2373</span> <span class="comment"> \param is Input stream to be parsed.</span></div> -<div class="line"><a name="l02374"></a><span class="lineno"> 2374</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> InputStream></div> -<div class="line"><a name="l02377"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414"> 2377</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">ParseStream</a>(InputStream& is) {</div> -<div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>  <span class="keywordflow">return</span> ParseStream<kParseDefaultFlags, Encoding, InputStream>(is);</div> -<div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>  }<span class="comment"></span></div> -<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span> <span class="comment"> //!@}</span></div> -<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02382"></a><span class="lineno"> 2382</span> <span class="comment"> //!@name Parse in-place from mutable string</span></div> -<div class="line"><a name="l02383"></a><span class="lineno"> 2383</span> <span class="comment"> //!@{</span></div> -<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span> <span class="comment"> //! Parse JSON text from a mutable string</span></div> -<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> -<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span> <span class="comment"> \param str Mutable zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02388"></a><span class="lineno"> 2388</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02389"></a><span class="lineno"> 2389</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> -<div class="line"><a name="l02391"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f"> 2391</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">ParseInsitu</a>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> -<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>  <a class="code" href="structrapidjson_1_1_generic_insitu_string_stream.html">GenericInsituStringStream<Encoding></a> s(str);</div> -<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>  <span class="keywordflow">return</span> ParseStream<parseFlags | kParseInsituFlag>(s);</div> -<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>  }</div> -<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span> <span class="comment"></span> </div> -<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span> <span class="comment"> //! Parse JSON text from a mutable string (with \ref kParseDefaultFlags)</span></div> -<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span> <span class="comment"></span><span class="comment"> /*! \param str Mutable zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span> <span class="comment"> \return The document itself for fluent API.</span></div> -<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02400"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367"> 2400</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">ParseInsitu</a>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> -<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span>  <span class="keywordflow">return</span> ParseInsitu<kParseDefaultFlags>(str);</div> -<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>  }<span class="comment"></span></div> -<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span> <span class="comment"> //!@}</span></div> -<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span> <span class="comment"> //!@name Parse from read-only string</span></div> -<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span> <span class="comment"> //!@{</span></div> -<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span> <span class="comment"> //! Parse JSON text from a read-only string (with Encoding conversion)</span></div> -<div class="line"><a name="l02409"></a><span class="lineno"> 2409</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag (must not contain \ref kParseInsituFlag).</span></div> -<div class="line"><a name="l02410"></a><span class="lineno"> 2410</span> <span class="comment"> \tparam SourceEncoding Transcoding from input Encoding</span></div> -<div class="line"><a name="l02411"></a><span class="lineno"> 2411</span> <span class="comment"> \param str Read-only zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02412"></a><span class="lineno"> 2412</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> -<div class="line"><a name="l02414"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c"> 2414</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">Parse</a>(<span class="keyword">const</span> <span class="keyword">typename</span> SourceEncoding::Ch* str) {</div> -<div class="line"><a name="l02415"></a><span class="lineno"> 2415</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!(parseFlags & <a class="code" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">kParseInsituFlag</a>));</div> -<div class="line"><a name="l02416"></a><span class="lineno"> 2416</span>  <a class="code" href="structrapidjson_1_1_generic_string_stream.html">GenericStringStream<SourceEncoding></a> s(str);</div> -<div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>  <span class="keywordflow">return</span> ParseStream<parseFlags, SourceEncoding>(s);</div> -<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>  }</div> -<div class="line"><a name="l02419"></a><span class="lineno"> 2419</span> <span class="comment"></span> </div> -<div class="line"><a name="l02420"></a><span class="lineno"> 2420</span> <span class="comment"> //! Parse JSON text from a read-only string</span></div> -<div class="line"><a name="l02421"></a><span class="lineno"> 2421</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag (must not contain \ref kParseInsituFlag).</span></div> -<div class="line"><a name="l02422"></a><span class="lineno"> 2422</span> <span class="comment"> \param str Read-only zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02423"></a><span class="lineno"> 2423</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> -<div class="line"><a name="l02425"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8"> 2425</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">Parse</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> -<div class="line"><a name="l02426"></a><span class="lineno"> 2426</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str);</div> -<div class="line"><a name="l02427"></a><span class="lineno"> 2427</span>  }</div> -<div class="line"><a name="l02428"></a><span class="lineno"> 2428</span> <span class="comment"></span> </div> -<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span> <span class="comment"> //! Parse JSON text from a read-only string (with \ref kParseDefaultFlags)</span></div> -<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span> <span class="comment"></span><span class="comment"> /*! \param str Read-only zero-terminated string to be parsed.</span></div> -<div class="line"><a name="l02431"></a><span class="lineno"> 2431</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02432"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de"> 2432</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">Parse</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> -<div class="line"><a name="l02433"></a><span class="lineno"> 2433</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str);</div> -<div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>  }</div> -<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>  </div> -<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> -<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& Parse(<span class="keyword">const</span> <span class="keyword">typename</span> SourceEncoding::Ch* str, <span class="keywordtype">size_t</span> length) {</div> -<div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!(parseFlags & <a class="code" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">kParseInsituFlag</a>));</div> -<div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>  <a class="code" href="structrapidjson_1_1_memory_stream.html">MemoryStream</a> ms(reinterpret_cast<const char*>(str), length * <span class="keyword">sizeof</span>(<span class="keyword">typename</span> SourceEncoding::Ch));</div> -<div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>  <a class="code" href="classrapidjson_1_1_encoded_input_stream.html">EncodedInputStream<SourceEncoding, MemoryStream></a> is(ms);</div> -<div class="line"><a name="l02441"></a><span class="lineno"> 2441</span>  ParseStream<parseFlags, SourceEncoding>(is);</div> -<div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> -<div class="line"><a name="l02443"></a><span class="lineno"> 2443</span>  }</div> -<div class="line"><a name="l02444"></a><span class="lineno"> 2444</span>  </div> -<div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> -<div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>  GenericDocument& Parse(<span class="keyword">const</span> Ch* str, <span class="keywordtype">size_t</span> length) {</div> -<div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str, length);</div> -<div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>  }</div> -<div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>  </div> -<div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>  GenericDocument& Parse(<span class="keyword">const</span> Ch* str, <span class="keywordtype">size_t</span> length) {</div> -<div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str, length);</div> -<div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>  }</div> -<div class="line"><a name="l02453"></a><span class="lineno"> 2453</span>  </div> -<div class="line"><a name="l02454"></a><span class="lineno"> 2454</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> -<div class="line"><a name="l02456"></a><span class="lineno"> 2456</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<typename SourceEncoding::Ch>& str) {</div> -<div class="line"><a name="l02457"></a><span class="lineno"> 2457</span>  <span class="comment">// c_str() is constant complexity according to standard. Should be faster than Parse(const char*, size_t)</span></div> -<div class="line"><a name="l02458"></a><span class="lineno"> 2458</span>  <span class="keywordflow">return</span> Parse<parseFlags, SourceEncoding>(str.c_str());</div> -<div class="line"><a name="l02459"></a><span class="lineno"> 2459</span>  }</div> -<div class="line"><a name="l02460"></a><span class="lineno"> 2460</span>  </div> -<div class="line"><a name="l02461"></a><span class="lineno"> 2461</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> -<div class="line"><a name="l02462"></a><span class="lineno"> 2462</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<Ch>& str) {</div> -<div class="line"><a name="l02463"></a><span class="lineno"> 2463</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str.c_str());</div> -<div class="line"><a name="l02464"></a><span class="lineno"> 2464</span>  }</div> -<div class="line"><a name="l02465"></a><span class="lineno"> 2465</span>  </div> -<div class="line"><a name="l02466"></a><span class="lineno"> 2466</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<Ch>& str) {</div> -<div class="line"><a name="l02467"></a><span class="lineno"> 2467</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str);</div> -<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span>  }</div> -<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_STDSTRING </span></div> -<div class="line"><a name="l02470"></a><span class="lineno"> 2470</span> <span class="comment"></span> </div> -<div class="line"><a name="l02471"></a><span class="lineno"> 2471</span> <span class="comment"> //!@}</span></div> -<div class="line"><a name="l02472"></a><span class="lineno"> 2472</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02473"></a><span class="lineno"> 2473</span> <span class="comment"> //!@name Handling parse errors</span></div> -<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span> <span class="comment"> //!@{</span></div> -<div class="line"><a name="l02475"></a><span class="lineno"> 2475</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02476"></a><span class="lineno"> 2476</span> <span class="comment"> //! Whether a parse error has occurred in the last parsing.</span></div> -<div class="line"><a name="l02477"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e"> 2477</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">HasParseError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.IsError(); }</div> -<div class="line"><a name="l02478"></a><span class="lineno"> 2478</span> <span class="comment"></span> </div> -<div class="line"><a name="l02479"></a><span class="lineno"> 2479</span> <span class="comment"> //! Get the \ref ParseErrorCode of last parsing.</span></div> -<div class="line"><a name="l02480"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b"> 2480</a></span> <span class="comment"></span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">ParseErrorCode</a> <a class="code" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">GetParseError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.Code(); }</div> -<div class="line"><a name="l02481"></a><span class="lineno"> 2481</span> <span class="comment"></span> </div> -<div class="line"><a name="l02482"></a><span class="lineno"> 2482</span> <span class="comment"> //! Get the position of last parsing error in input, 0 otherwise.</span></div> -<div class="line"><a name="l02483"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f"> 2483</a></span> <span class="comment"></span> <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">GetErrorOffset</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.Offset(); }</div> -<div class="line"><a name="l02484"></a><span class="lineno"> 2484</span> <span class="comment"></span> </div> -<div class="line"><a name="l02485"></a><span class="lineno"> 2485</span> <span class="comment"> //! Implicit conversion to get the last parse result</span></div> -<div class="line"><a name="l02486"></a><span class="lineno"> 2486</span> <span class="comment"></span><span class="preprocessor">#ifndef __clang // -Wdocumentation</span></div> -<div class="line"><a name="l02487"></a><span class="lineno"> 2487</span> <span class="comment"> /*! \return \ref ParseResult of the last parse operation</span></div> -<div class="line"><a name="l02488"></a><span class="lineno"> 2488</span> <span class="comment"></span> </div> -<div class="line"><a name="l02489"></a><span class="lineno"> 2489</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l02490"></a><span class="lineno"> 2490</span> <span class="comment"> Document doc;</span></div> -<div class="line"><a name="l02491"></a><span class="lineno"> 2491</span> <span class="comment"> ParseResult ok = doc.Parse(json);</span></div> -<div class="line"><a name="l02492"></a><span class="lineno"> 2492</span> <span class="comment"> if (!ok)</span></div> -<div class="line"><a name="l02493"></a><span class="lineno"> 2493</span> <span class="comment"> printf( "JSON parse error: %s (%u)\n", GetParseError_En(ok.Code()), ok.Offset());</span></div> -<div class="line"><a name="l02494"></a><span class="lineno"> 2494</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l02495"></a><span class="lineno"> 2495</span> <span class="comment"> */</span></div> -<div class="line"><a name="l02496"></a><span class="lineno"> 2496</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02497"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974"> 2497</a></span>  <span class="keyword">operator</span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">ParseResult</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_; }<span class="comment"></span></div> -<div class="line"><a name="l02498"></a><span class="lineno"> 2498</span> <span class="comment"> //!@}</span></div> -<div class="line"><a name="l02499"></a><span class="lineno"> 2499</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l02500"></a><span class="lineno"> 2500</span> <span class="comment"> //! Get the allocator of this document.</span></div> -<div class="line"><a name="l02501"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f"> 2501</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">GetAllocator</a>() {</div> -<div class="line"><a name="l02502"></a><span class="lineno"> 2502</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(allocator_);</div> -<div class="line"><a name="l02503"></a><span class="lineno"> 2503</span>  <span class="keywordflow">return</span> *allocator_;</div> +<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span> <span class="preprocessor">#endif // !RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>  </div> +<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>  <span class="keywordtype">void</span> DoAddMember(GenericValue& name, GenericValue& value, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>  <span class="keywordflow">if</span> (o.size >= o.capacity)</div> +<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>  DoReserveMembers(o.capacity ? (o.capacity + (o.capacity + 1) / 2) : kDefaultObjectCapacity, allocator);</div> +<div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>  Member* members = GetMembersPointer();</div> +<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>  Member* m = members + o.size;</div> +<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>  m->name.RawAssign(name);</div> +<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>  m->value.RawAssign(value);</div> +<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span>  Map* &map = GetMap(members);</div> +<div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>  <span class="keyword">new</span> (&mit[o.size]) MapIterator(map->insert(MapPair(m->name.data_, o.size)));</div> +<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span>  ++o.size;</div> +<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span>  }</div> +<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span>  </div> +<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span>  MemberIterator DoRemoveMember(MemberIterator m) {</div> +<div class="line"><a name="l02295"></a><span class="lineno"> 2295</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>  Member* members = GetMembersPointer();</div> +<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>  Map* &map = GetMap(members);</div> +<div class="line"><a name="l02299"></a><span class="lineno"> 2299</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02300"></a><span class="lineno"> 2300</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> mpos = static_cast<SizeType>(&*m - members);</div> +<div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>  map->erase(DropMapIterator(mit[mpos]));</div> +<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>  MemberIterator last(members + (o.size - 1));</div> +<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>  <span class="keywordflow">if</span> (o.size > 1 && m != last) {</div> +<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>  <span class="keyword">new</span> (&mit[mpos]) MapIterator(DropMapIterator(mit[&*last - members]));</div> +<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>  mit[mpos]->second = mpos;</div> +<div class="line"><a name="l02308"></a><span class="lineno"> 2308</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02309"></a><span class="lineno"> 2309</span>  *m = *last; <span class="comment">// Move the last one to this place</span></div> +<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>  }</div> +<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span>  <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span>  m->~Member(); <span class="comment">// Only one left, just destroy</span></div> +<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>  }</div> +<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>  --o.size;</div> +<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span>  <span class="keywordflow">return</span> m;</div> +<div class="line"><a name="l02316"></a><span class="lineno"> 2316</span>  }</div> +<div class="line"><a name="l02317"></a><span class="lineno"> 2317</span>  </div> +<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span>  MemberIterator DoEraseMembers(ConstMemberIterator first, ConstMemberIterator last) {</div> +<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span>  ObjectData& o = data_.o;</div> +<div class="line"><a name="l02320"></a><span class="lineno"> 2320</span>  MemberIterator beg = MemberBegin(),</div> +<div class="line"><a name="l02321"></a><span class="lineno"> 2321</span>  pos = beg + (first - beg),</div> +<div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>  end = MemberEnd();</div> +<div class="line"><a name="l02323"></a><span class="lineno"> 2323</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>  Map* &map = GetMap(GetMembersPointer());</div> +<div class="line"><a name="l02325"></a><span class="lineno"> 2325</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02326"></a><span class="lineno"> 2326</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>  <span class="keywordflow">for</span> (MemberIterator itr = pos; itr != last; ++itr) {</div> +<div class="line"><a name="l02328"></a><span class="lineno"> 2328</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>  map->erase(DropMapIterator(mit[itr - beg]));</div> +<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>  itr->~Member();</div> +<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>  }</div> +<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02334"></a><span class="lineno"> 2334</span>  <span class="keywordflow">if</span> (first != last) {</div> +<div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>  <span class="comment">// Move remaining members/iterators</span></div> +<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span>  MemberIterator next = pos + (last - first);</div> +<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>  <span class="keywordflow">for</span> (MemberIterator itr = pos; next != end; ++itr, ++next) {</div> +<div class="line"><a name="l02338"></a><span class="lineno"> 2338</span>  std::memcpy(static_cast<void*>(&*itr), &*next, <span class="keyword">sizeof</span>(Member));</div> +<div class="line"><a name="l02339"></a><span class="lineno"> 2339</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> mpos = static_cast<SizeType>(itr - beg);</div> +<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span>  <span class="keyword">new</span> (&mit[mpos]) MapIterator(DropMapIterator(mit[next - beg]));</div> +<div class="line"><a name="l02341"></a><span class="lineno"> 2341</span>  mit[mpos]->second = mpos;</div> +<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>  }</div> +<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>  }</div> +<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span>  std::memmove(static_cast<void*>(&*pos), &*last,</div> +<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>  static_cast<size_t>(end - last) * <span class="keyword">sizeof</span>(Member));</div> +<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>  o.size -= static_cast<SizeType>(last - first);</div> +<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>  <span class="keywordflow">return</span> pos;</div> +<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>  }</div> +<div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>  </div> +<div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>  <span class="keywordtype">void</span> DoCopyMembers(<span class="keyword">const</span> GenericValue<Encoding,SourceAllocator>& rhs, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator, <span class="keywordtype">bool</span> copyConstStrings) {</div> +<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(rhs.GetType() == <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>);</div> +<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>  </div> +<div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>  data_.f.flags = kObjectFlag;</div> +<div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count = rhs.data_.o.size;</div> +<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>  Member* lm = DoAllocMembers(count, allocator);</div> +<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>  <span class="keyword">const</span> <span class="keyword">typename</span> GenericValue<Encoding,SourceAllocator>::Member* rm = rhs.GetMembersPointer();</div> +<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span>  Map* &map = GetMap(lm);</div> +<div class="line"><a name="l02362"></a><span class="lineno"> 2362</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++) {</div> +<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>  <span class="keyword">new</span> (&lm[i].name) GenericValue(rm[i].name, allocator, copyConstStrings);</div> +<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>  <span class="keyword">new</span> (&lm[i].value) GenericValue(rm[i].value, allocator, copyConstStrings);</div> +<div class="line"><a name="l02367"></a><span class="lineno"> 2367</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>  <span class="keyword">new</span> (&mit[i]) MapIterator(map->insert(MapPair(lm[i].name.data_, i)));</div> +<div class="line"><a name="l02369"></a><span class="lineno"> 2369</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span>  }</div> +<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span>  data_.o.size = data_.o.capacity = count;</div> +<div class="line"><a name="l02372"></a><span class="lineno"> 2372</span>  SetMembersPointer(lm);</div> +<div class="line"><a name="l02373"></a><span class="lineno"> 2373</span>  }</div> +<div class="line"><a name="l02374"></a><span class="lineno"> 2374</span>  </div> +<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span>  <span class="comment">// Initialize this value as array with initial data, without calling destructor.</span></div> +<div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>  <span class="keywordtype">void</span> SetArrayRaw(GenericValue* values, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02377"></a><span class="lineno"> 2377</span>  data_.f.flags = kArrayFlag;</div> +<div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>  <span class="keywordflow">if</span> (count) {</div> +<div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>  GenericValue* e = static_cast<GenericValue*>(allocator.Malloc(count * <span class="keyword">sizeof</span>(GenericValue)));</div> +<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>  SetElementsPointer(e);</div> +<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>  std::memcpy(static_cast<void*>(e), values, count * <span class="keyword">sizeof</span>(GenericValue));</div> +<div class="line"><a name="l02382"></a><span class="lineno"> 2382</span>  }</div> +<div class="line"><a name="l02383"></a><span class="lineno"> 2383</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>  SetElementsPointer(0);</div> +<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>  data_.a.size = data_.a.capacity = count;</div> +<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>  }</div> +<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span> <span class="comment"></span> </div> +<div class="line"><a name="l02388"></a><span class="lineno"> 2388</span> <span class="comment"> //! Initialize this value as object with initial data, without calling destructor.</span></div> +<div class="line"><a name="l02389"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac"> 2389</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">SetObjectRaw</a>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* members, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> count, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>  data_.f.flags = kObjectFlag;</div> +<div class="line"><a name="l02391"></a><span class="lineno"> 2391</span>  <span class="keywordflow">if</span> (count) {</div> +<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>  <a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>* m = DoAllocMembers(count, allocator);</div> +<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>  SetMembersPointer(m);</div> +<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>  std::memcpy(static_cast<void*>(m), members, count * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_member.html">Member</a>));</div> +<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span> <span class="preprocessor">#if RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>  Map* &map = GetMap(m);</div> +<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>  MapIterator* mit = GetMapIterators(map);</div> +<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>  <span class="keywordflow">for</span> (<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> i = 0; i < count; i++) {</div> +<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>  <span class="keyword">new</span> (&mit[i]) MapIterator(map->insert(MapPair(m[i].name.data_, i)));</div> +<div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>  }</div> +<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>  }</div> +<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span>  SetMembersPointer(0);</div> +<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span>  data_.o.size = data_.o.capacity = count;</div> +<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>  }</div> +<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span> <span class="comment"></span> </div> +<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span> <span class="comment"> //! Initialize this value as constant string, without calling destructor.</span></div> +<div class="line"><a name="l02409"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835"> 2409</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">SetStringRaw</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l02410"></a><span class="lineno"> 2410</span>  data_.f.flags = kConstStringFlag;</div> +<div class="line"><a name="l02411"></a><span class="lineno"> 2411</span>  SetStringPointer(s);</div> +<div class="line"><a name="l02412"></a><span class="lineno"> 2412</span>  data_.s.length = s.length;</div> +<div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>  }</div> +<div class="line"><a name="l02414"></a><span class="lineno"> 2414</span> <span class="comment"></span> </div> +<div class="line"><a name="l02415"></a><span class="lineno"> 2415</span> <span class="comment"> //! Initialize this value as copy string with initial data, without calling destructor.</span></div> +<div class="line"><a name="l02416"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c"> 2416</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">SetStringRaw</a>(<a class="code" href="structrapidjson_1_1_generic_string_ref.html">StringRefType</a> s, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& allocator) {</div> +<div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>  <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str = 0;</div> +<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>  <span class="keywordflow">if</span> (ShortString::Usable(s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>)) {</div> +<div class="line"><a name="l02419"></a><span class="lineno"> 2419</span>  data_.f.flags = kShortStringFlag;</div> +<div class="line"><a name="l02420"></a><span class="lineno"> 2420</span>  data_.ss.SetLength(s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>);</div> +<div class="line"><a name="l02421"></a><span class="lineno"> 2421</span>  str = data_.ss.str;</div> +<div class="line"><a name="l02422"></a><span class="lineno"> 2422</span>  } <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l02423"></a><span class="lineno"> 2423</span>  data_.f.flags = kCopyStringFlag;</div> +<div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>  data_.s.length = s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>;</div> +<div class="line"><a name="l02425"></a><span class="lineno"> 2425</span>  str = static_cast<Ch *>(allocator.Malloc((s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a> + 1) * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>)));</div> +<div class="line"><a name="l02426"></a><span class="lineno"> 2426</span>  SetStringPointer(str);</div> +<div class="line"><a name="l02427"></a><span class="lineno"> 2427</span>  }</div> +<div class="line"><a name="l02428"></a><span class="lineno"> 2428</span>  std::memcpy(str, s, s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a> * <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>));</div> +<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span>  str[s.<a class="code" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">length</a>] = <span class="charliteral">'\0'</span>;</div> +<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span>  }</div> +<div class="line"><a name="l02431"></a><span class="lineno"> 2431</span> <span class="comment"></span> </div> +<div class="line"><a name="l02432"></a><span class="lineno"> 2432</span> <span class="comment"> //! Assignment without calling destructor</span></div> +<div class="line"><a name="l02433"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e"> 2433</a></span> <span class="comment"></span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">RawAssign</a>(<a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>& rhs) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>  data_ = rhs.data_;</div> +<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>  <span class="comment">// data_.f.flags = rhs.data_.f.flags;</span></div> +<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>  rhs.data_.f.flags = kNullFlag;</div> +<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>  }</div> +<div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>  </div> +<div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator></div> +<div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>  <span class="keywordtype">bool</span> StringEqual(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding, SourceAllocator></a>& rhs)<span class="keyword"> const </span>{</div> +<div class="line"><a name="l02441"></a><span class="lineno"> 2441</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(IsString());</div> +<div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(rhs.IsString());</div> +<div class="line"><a name="l02443"></a><span class="lineno"> 2443</span>  </div> +<div class="line"><a name="l02444"></a><span class="lineno"> 2444</span>  <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len1 = GetStringLength();</div> +<div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>  <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> len2 = rhs.GetStringLength();</div> +<div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>  <span class="keywordflow">if</span>(len1 != len2) { <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div> +<div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>  </div> +<div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>  <span class="keyword">const</span> Ch* <span class="keyword">const</span> str1 = GetString();</div> +<div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>  <span class="keyword">const</span> Ch* <span class="keyword">const</span> str2 = rhs.GetString();</div> +<div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>  <span class="keywordflow">if</span>(str1 == str2) { <span class="keywordflow">return</span> <span class="keyword">true</span>; } <span class="comment">// fast path for constant string</span></div> +<div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>  </div> +<div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>  <span class="keywordflow">return</span> (std::memcmp(str1, str2, <span class="keyword">sizeof</span>(Ch) * len1) == 0);</div> +<div class="line"><a name="l02453"></a><span class="lineno"> 2453</span>  }</div> +<div class="line"><a name="l02454"></a><span class="lineno"> 2454</span>  </div> +<div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>  Data data_;</div> +<div class="line"><a name="l02456"></a><span class="lineno"> 2456</span> };</div> +<div class="line"><a name="l02457"></a><span class="lineno"> 2457</span> <span class="comment"></span> </div> +<div class="line"><a name="l02458"></a><span class="lineno"> 2458</span> <span class="comment">//! GenericValue with UTF8 encoding</span></div> +<div class="line"><a name="l02459"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505"> 2459</a></span> <span class="comment"></span><span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<UTF8<></a> > <a class="code" href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">Value</a>;</div> +<div class="line"><a name="l02460"></a><span class="lineno"> 2460</span> <span class="comment"></span> </div> +<div class="line"><a name="l02461"></a><span class="lineno"> 2461</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l02462"></a><span class="lineno"> 2462</span> <span class="comment"></span><span class="comment">// GenericDocument </span></div> +<div class="line"><a name="l02463"></a><span class="lineno"> 2463</span> <span class="comment"></span> </div> +<div class="line"><a name="l02464"></a><span class="lineno"> 2464</span> <span class="comment">//! A document for parsing JSON text as DOM.</span></div> +<div class="line"><a name="l02465"></a><span class="lineno"> 2465</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l02466"></a><span class="lineno"> 2466</span> <span class="comment"> \note implements Handler concept</span></div> +<div class="line"><a name="l02467"></a><span class="lineno"> 2467</span> <span class="comment"> \tparam Encoding Encoding for both parsing and string storage.</span></div> +<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span> <span class="comment"> \tparam Allocator Allocator for allocating memory for the DOM</span></div> +<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span> <span class="comment"> \tparam StackAllocator Allocator for allocating memory for stack during parsing.</span></div> +<div class="line"><a name="l02470"></a><span class="lineno"> 2470</span> <span class="comment"> \warning Although GenericDocument inherits from GenericValue, the API does \b not provide any virtual functions, especially no virtual destructor. To avoid memory leaks, do not \c delete a GenericDocument object via a pointer to a GenericValue.</span></div> +<div class="line"><a name="l02471"></a><span class="lineno"> 2471</span> <span class="comment">*/</span></div> +<div class="line"><a name="l02472"></a><span class="lineno"> 2472</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Encoding, <span class="keyword">typename</span> Allocator = RAPIDJSON_DEFAULT_ALLOCATOR, <span class="keyword">typename</span> StackAllocator = RAPIDJSON_DEFAULT_STACK_ALLOCATOR ></div> +<div class="line"><a name="l02473"></a><span class="lineno"> 2473</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a> : <span class="keyword">public</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a><Encoding, Allocator> {</div> +<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l02475"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5"> 2475</a></span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> Encoding::Ch <a class="code" href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5">Ch</a>; <span class="comment">//!< Character type derived from Encoding.</span></div> +<div class="line"><a name="l02476"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc"> 2476</a></span> <span class="comment"></span> <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue<Encoding, Allocator></a> <a class="code" href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">ValueType</a>; <span class="comment">//!< Value type of the document.</span></div> +<div class="line"><a name="l02477"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773"> 2477</a></span> <span class="comment"></span> <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a> <a class="code" href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773">AllocatorType</a>; <span class="comment">//!< Allocator type from template parameter.</span></div> +<div class="line"><a name="l02478"></a><span class="lineno"> 2478</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02479"></a><span class="lineno"> 2479</span> <span class="comment"> //! Constructor</span></div> +<div class="line"><a name="l02480"></a><span class="lineno"> 2480</span> <span class="comment"></span><span class="comment"> /*! Creates an empty document of specified type.</span></div> +<div class="line"><a name="l02481"></a><span class="lineno"> 2481</span> <span class="comment"> \param type Mandatory type of object to create.</span></div> +<div class="line"><a name="l02482"></a><span class="lineno"> 2482</span> <span class="comment"> \param allocator Optional allocator for allocating memory.</span></div> +<div class="line"><a name="l02483"></a><span class="lineno"> 2483</span> <span class="comment"> \param stackCapacity Optional initial capacity of stack in bytes.</span></div> +<div class="line"><a name="l02484"></a><span class="lineno"> 2484</span> <span class="comment"> \param stackAllocator Optional allocator for allocating memory for stack.</span></div> +<div class="line"><a name="l02485"></a><span class="lineno"> 2485</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02486"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5"> 2486</a></span>  <span class="keyword">explicit</span> <a class="code" href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">GenericDocument</a>(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> type, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator = 0, <span class="keywordtype">size_t</span> stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) :</div> +<div class="line"><a name="l02487"></a><span class="lineno"> 2487</span>  <a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a><<a class="code" href="classrapidjson_1_1_encoding.html">Encoding</a>, <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>>(type), allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_()</div> +<div class="line"><a name="l02488"></a><span class="lineno"> 2488</span>  {</div> +<div class="line"><a name="l02489"></a><span class="lineno"> 2489</span>  <span class="keywordflow">if</span> (!allocator_)</div> +<div class="line"><a name="l02490"></a><span class="lineno"> 2490</span>  ownAllocator_ = allocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>)();</div> +<div class="line"><a name="l02491"></a><span class="lineno"> 2491</span>  }</div> +<div class="line"><a name="l02492"></a><span class="lineno"> 2492</span> <span class="comment"></span> </div> +<div class="line"><a name="l02493"></a><span class="lineno"> 2493</span> <span class="comment"> //! Constructor</span></div> +<div class="line"><a name="l02494"></a><span class="lineno"> 2494</span> <span class="comment"></span><span class="comment"> /*! Creates an empty document which type is Null. </span></div> +<div class="line"><a name="l02495"></a><span class="lineno"> 2495</span> <span class="comment"> \param allocator Optional allocator for allocating memory.</span></div> +<div class="line"><a name="l02496"></a><span class="lineno"> 2496</span> <span class="comment"> \param stackCapacity Optional initial capacity of stack in bytes.</span></div> +<div class="line"><a name="l02497"></a><span class="lineno"> 2497</span> <span class="comment"> \param stackAllocator Optional allocator for allocating memory for stack.</span></div> +<div class="line"><a name="l02498"></a><span class="lineno"> 2498</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02499"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb"> 2499</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">GenericDocument</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator = 0, <span class="keywordtype">size_t</span> stackCapacity = kDefaultStackCapacity, StackAllocator* stackAllocator = 0) : </div> +<div class="line"><a name="l02500"></a><span class="lineno"> 2500</span>  allocator_(allocator), ownAllocator_(0), stack_(stackAllocator, stackCapacity), parseResult_()</div> +<div class="line"><a name="l02501"></a><span class="lineno"> 2501</span>  {</div> +<div class="line"><a name="l02502"></a><span class="lineno"> 2502</span>  <span class="keywordflow">if</span> (!allocator_)</div> +<div class="line"><a name="l02503"></a><span class="lineno"> 2503</span>  ownAllocator_ = allocator_ = <a class="code" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a>(<a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>)();</div> <div class="line"><a name="l02504"></a><span class="lineno"> 2504</span>  }</div> -<div class="line"><a name="l02505"></a><span class="lineno"> 2505</span> <span class="comment"></span> </div> -<div class="line"><a name="l02506"></a><span class="lineno"> 2506</span> <span class="comment"> //! Get the capacity of stack in bytes.</span></div> -<div class="line"><a name="l02507"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b"> 2507</a></span> <span class="comment"></span> <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">GetStackCapacity</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> stack_.GetCapacity(); }</div> -<div class="line"><a name="l02508"></a><span class="lineno"> 2508</span>  </div> -<div class="line"><a name="l02509"></a><span class="lineno"> 2509</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l02510"></a><span class="lineno"> 2510</span>  <span class="comment">// clear stack on any exit from ParseStream, e.g. due to exception</span></div> -<div class="line"><a name="l02511"></a><span class="lineno"> 2511</span>  <span class="keyword">struct </span>ClearStackOnExit {</div> -<div class="line"><a name="l02512"></a><span class="lineno"> 2512</span>  <span class="keyword">explicit</span> ClearStackOnExit(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& d) : d_(d) {}</div> -<div class="line"><a name="l02513"></a><span class="lineno"> 2513</span>  ~ClearStackOnExit() { d_.ClearStack(); }</div> -<div class="line"><a name="l02514"></a><span class="lineno"> 2514</span>  <span class="keyword">private</span>:</div> -<div class="line"><a name="l02515"></a><span class="lineno"> 2515</span>  ClearStackOnExit(<span class="keyword">const</span> ClearStackOnExit&);</div> -<div class="line"><a name="l02516"></a><span class="lineno"> 2516</span>  ClearStackOnExit& operator=(<span class="keyword">const</span> ClearStackOnExit&);</div> -<div class="line"><a name="l02517"></a><span class="lineno"> 2517</span>  GenericDocument& d_;</div> -<div class="line"><a name="l02518"></a><span class="lineno"> 2518</span>  };</div> -<div class="line"><a name="l02519"></a><span class="lineno"> 2519</span>  </div> -<div class="line"><a name="l02520"></a><span class="lineno"> 2520</span>  <span class="comment">// callers of the following private Handler functions</span></div> -<div class="line"><a name="l02521"></a><span class="lineno"> 2521</span>  <span class="comment">// template <typename,typename,typename> friend class GenericReader; // for parsing</span></div> -<div class="line"><a name="l02522"></a><span class="lineno"> 2522</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue; <span class="comment">// for deep copying</span></div> -<div class="line"><a name="l02523"></a><span class="lineno"> 2523</span>  </div> -<div class="line"><a name="l02524"></a><span class="lineno"> 2524</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>  <span class="comment">// Implementation of Handler</span></div> -<div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>  <span class="keywordtype">bool</span> Null() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>  <span class="keywordtype">bool</span> Bool(<span class="keywordtype">bool</span> b) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(b); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>  <span class="keywordtype">bool</span> Int(<span class="keywordtype">int</span> i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>  <span class="keywordtype">bool</span> Uint(<span class="keywordtype">unsigned</span> i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>  <span class="keywordtype">bool</span> Int64(int64_t i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>  <span class="keywordtype">bool</span> Uint64(uint64_t i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02532"></a><span class="lineno"> 2532</span>  <span class="keywordtype">bool</span> Double(<span class="keywordtype">double</span> d) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(d); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02533"></a><span class="lineno"> 2533</span>  </div> -<div class="line"><a name="l02534"></a><span class="lineno"> 2534</span>  <span class="keywordtype">bool</span> RawNumber(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { </div> -<div class="line"><a name="l02535"></a><span class="lineno"> 2535</span>  <span class="keywordflow">if</span> (copy) </div> -<div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length, GetAllocator());</div> -<div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length);</div> -<div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>  }</div> -<div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>  </div> -<div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>  <span class="keywordtype">bool</span> String(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { </div> -<div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>  <span class="keywordflow">if</span> (copy) </div> -<div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length, GetAllocator());</div> -<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02546"></a><span class="lineno"> 2546</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length);</div> -<div class="line"><a name="l02547"></a><span class="lineno"> 2547</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l02548"></a><span class="lineno"> 2548</span>  }</div> -<div class="line"><a name="l02549"></a><span class="lineno"> 2549</span>  </div> -<div class="line"><a name="l02550"></a><span class="lineno"> 2550</span>  <span class="keywordtype">bool</span> StartObject() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02551"></a><span class="lineno"> 2551</span>  </div> -<div class="line"><a name="l02552"></a><span class="lineno"> 2552</span>  <span class="keywordtype">bool</span> Key(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { <span class="keywordflow">return</span> String(str, length, copy); }</div> -<div class="line"><a name="l02553"></a><span class="lineno"> 2553</span>  </div> -<div class="line"><a name="l02554"></a><span class="lineno"> 2554</span>  <span class="keywordtype">bool</span> EndObject(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> memberCount) {</div> -<div class="line"><a name="l02555"></a><span class="lineno"> 2555</span>  <span class="keyword">typename</span> ValueType::Member* members = stack_.template Pop<typename ValueType::Member>(memberCount);</div> -<div class="line"><a name="l02556"></a><span class="lineno"> 2556</span>  stack_.template Top<ValueType>()->SetObjectRaw(members, memberCount, GetAllocator());</div> -<div class="line"><a name="l02557"></a><span class="lineno"> 2557</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l02558"></a><span class="lineno"> 2558</span>  }</div> -<div class="line"><a name="l02559"></a><span class="lineno"> 2559</span>  </div> -<div class="line"><a name="l02560"></a><span class="lineno"> 2560</span>  <span class="keywordtype">bool</span> StartArray() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> -<div class="line"><a name="l02561"></a><span class="lineno"> 2561</span>  </div> -<div class="line"><a name="l02562"></a><span class="lineno"> 2562</span>  <span class="keywordtype">bool</span> EndArray(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> elementCount) {</div> -<div class="line"><a name="l02563"></a><span class="lineno"> 2563</span>  ValueType* elements = stack_.template Pop<ValueType>(elementCount);</div> -<div class="line"><a name="l02564"></a><span class="lineno"> 2564</span>  stack_.template Top<ValueType>()->SetArrayRaw(elements, elementCount, GetAllocator());</div> -<div class="line"><a name="l02565"></a><span class="lineno"> 2565</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> -<div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>  }</div> -<div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>  </div> -<div class="line"><a name="l02568"></a><span class="lineno"> 2568</span> <span class="keyword">private</span>:<span class="comment"></span></div> -<div class="line"><a name="l02569"></a><span class="lineno"> 2569</span> <span class="comment"> //! Prohibit copying</span></div> -<div class="line"><a name="l02570"></a><span class="lineno"> 2570</span> <span class="comment"></span> GenericDocument(<span class="keyword">const</span> GenericDocument&);<span class="comment"></span></div> -<div class="line"><a name="l02571"></a><span class="lineno"> 2571</span> <span class="comment"> //! Prohibit assignment</span></div> -<div class="line"><a name="l02572"></a><span class="lineno"> 2572</span> <span class="comment"></span> GenericDocument& operator=(<span class="keyword">const</span> GenericDocument&);</div> -<div class="line"><a name="l02573"></a><span class="lineno"> 2573</span>  </div> -<div class="line"><a name="l02574"></a><span class="lineno"> 2574</span>  <span class="keywordtype">void</span> ClearStack() {</div> -<div class="line"><a name="l02575"></a><span class="lineno"> 2575</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree)</div> -<div class="line"><a name="l02576"></a><span class="lineno"> 2576</span>  <span class="keywordflow">while</span> (stack_.GetSize() > 0) <span class="comment">// Here assumes all elements in stack array are GenericValue (Member is actually 2 GenericValue objects)</span></div> -<div class="line"><a name="l02577"></a><span class="lineno"> 2577</span>  (stack_.template Pop<ValueType>(1))->~ValueType();</div> -<div class="line"><a name="l02578"></a><span class="lineno"> 2578</span>  <span class="keywordflow">else</span></div> -<div class="line"><a name="l02579"></a><span class="lineno"> 2579</span>  stack_.Clear();</div> -<div class="line"><a name="l02580"></a><span class="lineno"> 2580</span>  stack_.ShrinkToFit();</div> -<div class="line"><a name="l02581"></a><span class="lineno"> 2581</span>  }</div> -<div class="line"><a name="l02582"></a><span class="lineno"> 2582</span>  </div> -<div class="line"><a name="l02583"></a><span class="lineno"> 2583</span>  <span class="keywordtype">void</span> Destroy() {</div> -<div class="line"><a name="l02584"></a><span class="lineno"> 2584</span>  <a class="code" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a>(ownAllocator_);</div> -<div class="line"><a name="l02585"></a><span class="lineno"> 2585</span>  }</div> -<div class="line"><a name="l02586"></a><span class="lineno"> 2586</span>  </div> -<div class="line"><a name="l02587"></a><span class="lineno"> 2587</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> kDefaultStackCapacity = 1024;</div> -<div class="line"><a name="l02588"></a><span class="lineno"> 2588</span>  <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator_;</div> -<div class="line"><a name="l02589"></a><span class="lineno"> 2589</span>  <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* ownAllocator_;</div> -<div class="line"><a name="l02590"></a><span class="lineno"> 2590</span>  internal::Stack<StackAllocator> stack_;</div> -<div class="line"><a name="l02591"></a><span class="lineno"> 2591</span>  ParseResult parseResult_;</div> -<div class="line"><a name="l02592"></a><span class="lineno"> 2592</span> };</div> -<div class="line"><a name="l02593"></a><span class="lineno"> 2593</span> <span class="comment"></span> </div> -<div class="line"><a name="l02594"></a><span class="lineno"> 2594</span> <span class="comment">//! GenericDocument with UTF8 encoding</span></div> -<div class="line"><a name="l02595"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8"> 2595</a></span> <span class="comment"></span><span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument<UTF8<></a> > <a class="code" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">Document</a>;</div> -<div class="line"><a name="l02596"></a><span class="lineno"> 2596</span>  </div> -<div class="line"><a name="l02597"></a><span class="lineno"> 2597</span> <span class="comment"></span> </div> -<div class="line"><a name="l02598"></a><span class="lineno"> 2598</span> <span class="comment">//! Helper class for accessing Value of array type.</span></div> -<div class="line"><a name="l02599"></a><span class="lineno"> 2599</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l02600"></a><span class="lineno"> 2600</span> <span class="comment"> Instance of this helper class is obtained by \c GenericValue::GetArray().</span></div> -<div class="line"><a name="l02601"></a><span class="lineno"> 2601</span> <span class="comment"> In addition to all APIs for array type, it provides range-based for loop if \c RAPIDJSON_HAS_CXX11_RANGE_FOR=1.</span></div> -<div class="line"><a name="l02602"></a><span class="lineno"> 2602</span> <span class="comment">*/</span></div> -<div class="line"><a name="l02603"></a><span class="lineno"> 2603</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> Const, <span class="keyword">typename</span> ValueT></div> -<div class="line"><a name="l02604"></a><span class="lineno"> 2604</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> {</div> -<div class="line"><a name="l02605"></a><span class="lineno"> 2605</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l02606"></a><span class="lineno"> 2606</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray<true, ValueT></a> ConstArray;</div> -<div class="line"><a name="l02607"></a><span class="lineno"> 2607</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray<false, ValueT></a> Array;</div> -<div class="line"><a name="l02608"></a><span class="lineno"> 2608</span>  <span class="keyword">typedef</span> ValueT PlainType;</div> -<div class="line"><a name="l02609"></a><span class="lineno"> 2609</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::MaybeAddConst<Const,PlainType>::Type</a> ValueType;</div> -<div class="line"><a name="l02610"></a><span class="lineno"> 2610</span>  <span class="keyword">typedef</span> ValueType* ValueIterator; <span class="comment">// This may be const or non-const iterator</span></div> -<div class="line"><a name="l02611"></a><span class="lineno"> 2611</span>  <span class="keyword">typedef</span> <span class="keyword">const</span> ValueT* ConstValueIterator;</div> -<div class="line"><a name="l02612"></a><span class="lineno"> 2612</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::AllocatorType AllocatorType;</div> -<div class="line"><a name="l02613"></a><span class="lineno"> 2613</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::StringRefType StringRefType;</div> -<div class="line"><a name="l02614"></a><span class="lineno"> 2614</span>  </div> -<div class="line"><a name="l02615"></a><span class="lineno"> 2615</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> -<div class="line"><a name="l02616"></a><span class="lineno"> 2616</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>;</div> -<div class="line"><a name="l02617"></a><span class="lineno"> 2617</span>  </div> -<div class="line"><a name="l02618"></a><span class="lineno"> 2618</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& rhs) : value_(rhs.value_) {}</div> -<div class="line"><a name="l02619"></a><span class="lineno"> 2619</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& operator=(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& rhs) { value_ = rhs.value_; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02620"></a><span class="lineno"> 2620</span>  ~<a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>() {}</div> -<div class="line"><a name="l02621"></a><span class="lineno"> 2621</span>  </div> -<div class="line"><a name="l02622"></a><span class="lineno"> 2622</span>  <span class="keyword">operator</span> ValueType&() <span class="keyword">const</span> { <span class="keywordflow">return</span> value_; }</div> -<div class="line"><a name="l02623"></a><span class="lineno"> 2623</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Size()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Size(); }</div> -<div class="line"><a name="l02624"></a><span class="lineno"> 2624</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Capacity()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Capacity(); }</div> -<div class="line"><a name="l02625"></a><span class="lineno"> 2625</span>  <span class="keywordtype">bool</span> Empty()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Empty(); }</div> -<div class="line"><a name="l02626"></a><span class="lineno"> 2626</span>  <span class="keywordtype">void</span> Clear()<span class="keyword"> const </span>{ value_.Clear(); }</div> -<div class="line"><a name="l02627"></a><span class="lineno"> 2627</span>  ValueType& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[index]; }</div> -<div class="line"><a name="l02628"></a><span class="lineno"> 2628</span>  ValueIterator Begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Begin(); }</div> -<div class="line"><a name="l02629"></a><span class="lineno"> 2629</span>  ValueIterator End()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.End(); }</div> -<div class="line"><a name="l02630"></a><span class="lineno"> 2630</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> Reserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, AllocatorType &allocator)<span class="keyword"> const </span>{ value_.Reserve(newCapacity, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02631"></a><span class="lineno"> 2631</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02632"></a><span class="lineno"> 2632</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02633"></a><span class="lineno"> 2633</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02634"></a><span class="lineno"> 2634</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02636"></a><span class="lineno"> 2636</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>&)) PushBack(T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02637"></a><span class="lineno"> 2637</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PopBack()<span class="keyword"> const </span>{ value_.PopBack(); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02638"></a><span class="lineno"> 2638</span>  ValueIterator Erase(ConstValueIterator pos)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Erase(pos); }</div> -<div class="line"><a name="l02639"></a><span class="lineno"> 2639</span>  ValueIterator Erase(ConstValueIterator first, ConstValueIterator last)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Erase(first, last); }</div> -<div class="line"><a name="l02640"></a><span class="lineno"> 2640</span>  </div> -<div class="line"><a name="l02641"></a><span class="lineno"> 2641</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> -<div class="line"><a name="l02642"></a><span class="lineno"> 2642</span>  ValueIterator begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Begin(); }</div> -<div class="line"><a name="l02643"></a><span class="lineno"> 2643</span>  ValueIterator end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.End(); }</div> -<div class="line"><a name="l02644"></a><span class="lineno"> 2644</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02645"></a><span class="lineno"> 2645</span>  </div> -<div class="line"><a name="l02646"></a><span class="lineno"> 2646</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l02647"></a><span class="lineno"> 2647</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>();</div> -<div class="line"><a name="l02648"></a><span class="lineno"> 2648</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>(ValueType& value) : value_(value) {}</div> -<div class="line"><a name="l02649"></a><span class="lineno"> 2649</span>  ValueType& value_;</div> -<div class="line"><a name="l02650"></a><span class="lineno"> 2650</span> };</div> -<div class="line"><a name="l02651"></a><span class="lineno"> 2651</span> <span class="comment"></span> </div> -<div class="line"><a name="l02652"></a><span class="lineno"> 2652</span> <span class="comment">//! Helper class for accessing Value of object type.</span></div> -<div class="line"><a name="l02653"></a><span class="lineno"> 2653</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l02654"></a><span class="lineno"> 2654</span> <span class="comment"> Instance of this helper class is obtained by \c GenericValue::GetObject().</span></div> -<div class="line"><a name="l02655"></a><span class="lineno"> 2655</span> <span class="comment"> In addition to all APIs for array type, it provides range-based for loop if \c RAPIDJSON_HAS_CXX11_RANGE_FOR=1.</span></div> -<div class="line"><a name="l02656"></a><span class="lineno"> 2656</span> <span class="comment">*/</span></div> -<div class="line"><a name="l02657"></a><span class="lineno"> 2657</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> Const, <span class="keyword">typename</span> ValueT></div> -<div class="line"><a name="l02658"></a><span class="lineno"> 2658</span> <span class="keyword">class </span>GenericObject {</div> -<div class="line"><a name="l02659"></a><span class="lineno"> 2659</span> <span class="keyword">public</span>:</div> -<div class="line"><a name="l02660"></a><span class="lineno"> 2660</span>  <span class="keyword">typedef</span> GenericObject<true, ValueT> ConstObject;</div> -<div class="line"><a name="l02661"></a><span class="lineno"> 2661</span>  <span class="keyword">typedef</span> GenericObject<false, ValueT> Object;</div> -<div class="line"><a name="l02662"></a><span class="lineno"> 2662</span>  <span class="keyword">typedef</span> ValueT PlainType;</div> -<div class="line"><a name="l02663"></a><span class="lineno"> 2663</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::MaybeAddConst<Const,PlainType>::Type</a> ValueType;</div> -<div class="line"><a name="l02664"></a><span class="lineno"> 2664</span>  <span class="keyword">typedef</span> GenericMemberIterator<Const, typename ValueT::EncodingType, typename ValueT::AllocatorType> MemberIterator; <span class="comment">// This may be const or non-const iterator</span></div> -<div class="line"><a name="l02665"></a><span class="lineno"> 2665</span>  <span class="keyword">typedef</span> GenericMemberIterator<true, typename ValueT::EncodingType, typename ValueT::AllocatorType> ConstMemberIterator;</div> -<div class="line"><a name="l02666"></a><span class="lineno"> 2666</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::AllocatorType AllocatorType;</div> -<div class="line"><a name="l02667"></a><span class="lineno"> 2667</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::StringRefType StringRefType;</div> -<div class="line"><a name="l02668"></a><span class="lineno"> 2668</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::EncodingType EncodingType;</div> -<div class="line"><a name="l02669"></a><span class="lineno"> 2669</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::Ch Ch;</div> -<div class="line"><a name="l02670"></a><span class="lineno"> 2670</span>  </div> -<div class="line"><a name="l02671"></a><span class="lineno"> 2671</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> -<div class="line"><a name="l02672"></a><span class="lineno"> 2672</span>  <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue;</div> -<div class="line"><a name="l02673"></a><span class="lineno"> 2673</span>  </div> -<div class="line"><a name="l02674"></a><span class="lineno"> 2674</span>  GenericObject(<span class="keyword">const</span> GenericObject& rhs) : value_(rhs.value_) {}</div> -<div class="line"><a name="l02675"></a><span class="lineno"> 2675</span>  GenericObject& operator=(<span class="keyword">const</span> GenericObject& rhs) { value_ = rhs.value_; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02676"></a><span class="lineno"> 2676</span>  ~GenericObject() {}</div> -<div class="line"><a name="l02677"></a><span class="lineno"> 2677</span>  </div> -<div class="line"><a name="l02678"></a><span class="lineno"> 2678</span>  <span class="keyword">operator</span> ValueType&() <span class="keyword">const</span> { <span class="keywordflow">return</span> value_; }</div> -<div class="line"><a name="l02679"></a><span class="lineno"> 2679</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberCount(); }</div> -<div class="line"><a name="l02680"></a><span class="lineno"> 2680</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCapacity()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberCapacity(); }</div> -<div class="line"><a name="l02681"></a><span class="lineno"> 2681</span>  <span class="keywordtype">bool</span> ObjectEmpty()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.ObjectEmpty(); }</div> -<div class="line"><a name="l02682"></a><span class="lineno"> 2682</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> ValueType& operator[](T* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> -<div class="line"><a name="l02683"></a><span class="lineno"> 2683</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> ValueType& operator[](<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> -<div class="line"><a name="l02684"></a><span class="lineno"> 2684</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02685"></a><span class="lineno"> 2685</span>  ValueType& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> -<div class="line"><a name="l02686"></a><span class="lineno"> 2686</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02687"></a><span class="lineno"> 2687</span>  MemberIterator MemberBegin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberBegin(); }</div> -<div class="line"><a name="l02688"></a><span class="lineno"> 2688</span>  MemberIterator MemberEnd()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberEnd(); }</div> -<div class="line"><a name="l02689"></a><span class="lineno"> 2689</span>  GenericObject MemberReserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, AllocatorType &allocator)<span class="keyword"> const </span>{ value_.MemberReserve(newCapacity, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02690"></a><span class="lineno"> 2690</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> -<div class="line"><a name="l02691"></a><span class="lineno"> 2691</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02692"></a><span class="lineno"> 2692</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> -<div class="line"><a name="l02693"></a><span class="lineno"> 2693</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02694"></a><span class="lineno"> 2694</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> -<div class="line"><a name="l02695"></a><span class="lineno"> 2695</span>  MemberIterator FindMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> -<div class="line"><a name="l02696"></a><span class="lineno"> 2696</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> MemberIterator FindMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> -<div class="line"><a name="l02697"></a><span class="lineno"> 2697</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02698"></a><span class="lineno"> 2698</span>  MemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> -<div class="line"><a name="l02699"></a><span class="lineno"> 2699</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02700"></a><span class="lineno"> 2700</span>  GenericObject AddMember(ValueType& name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02701"></a><span class="lineno"> 2701</span>  GenericObject AddMember(ValueType& name, StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02702"></a><span class="lineno"> 2702</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02703"></a><span class="lineno"> 2703</span>  GenericObject AddMember(ValueType& name, std::basic_string<Ch>& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02704"></a><span class="lineno"> 2704</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02705"></a><span class="lineno"> 2705</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (ValueType&)) AddMember(ValueType& name, T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02706"></a><span class="lineno"> 2706</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02707"></a><span class="lineno"> 2707</span>  GenericObject AddMember(ValueType&& name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02708"></a><span class="lineno"> 2708</span>  GenericObject AddMember(ValueType&& name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02709"></a><span class="lineno"> 2709</span>  GenericObject AddMember(ValueType& name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02710"></a><span class="lineno"> 2710</span>  GenericObject AddMember(StringRefType name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02711"></a><span class="lineno"> 2711</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l02712"></a><span class="lineno"> 2712</span>  GenericObject AddMember(StringRefType name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02713"></a><span class="lineno"> 2713</span>  GenericObject AddMember(StringRefType name, StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02714"></a><span class="lineno"> 2714</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericObject)) AddMember(StringRefType name, T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> -<div class="line"><a name="l02715"></a><span class="lineno"> 2715</span>  <span class="keywordtype">void</span> RemoveAllMembers() { value_.RemoveAllMembers(); }</div> -<div class="line"><a name="l02716"></a><span class="lineno"> 2716</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> -<div class="line"><a name="l02717"></a><span class="lineno"> 2717</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02718"></a><span class="lineno"> 2718</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> -<div class="line"><a name="l02719"></a><span class="lineno"> 2719</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02720"></a><span class="lineno"> 2720</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> -<div class="line"><a name="l02721"></a><span class="lineno"> 2721</span>  MemberIterator RemoveMember(MemberIterator m)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(m); }</div> -<div class="line"><a name="l02722"></a><span class="lineno"> 2722</span>  MemberIterator EraseMember(ConstMemberIterator pos)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(pos); }</div> -<div class="line"><a name="l02723"></a><span class="lineno"> 2723</span>  MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterator last)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(first, last); }</div> -<div class="line"><a name="l02724"></a><span class="lineno"> 2724</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(name); }</div> -<div class="line"><a name="l02725"></a><span class="lineno"> 2725</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> -<div class="line"><a name="l02726"></a><span class="lineno"> 2726</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> EraseMember(ValueType(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> -<div class="line"><a name="l02727"></a><span class="lineno"> 2727</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02728"></a><span class="lineno"> 2728</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(name); }</div> -<div class="line"><a name="l02729"></a><span class="lineno"> 2729</span>  </div> -<div class="line"><a name="l02730"></a><span class="lineno"> 2730</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> -<div class="line"><a name="l02731"></a><span class="lineno"> 2731</span>  MemberIterator begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberBegin(); }</div> -<div class="line"><a name="l02732"></a><span class="lineno"> 2732</span>  MemberIterator end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberEnd(); }</div> -<div class="line"><a name="l02733"></a><span class="lineno"> 2733</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l02734"></a><span class="lineno"> 2734</span>  </div> -<div class="line"><a name="l02735"></a><span class="lineno"> 2735</span> <span class="keyword">private</span>:</div> -<div class="line"><a name="l02736"></a><span class="lineno"> 2736</span>  GenericObject();</div> -<div class="line"><a name="l02737"></a><span class="lineno"> 2737</span>  GenericObject(ValueType& value) : value_(value) {}</div> -<div class="line"><a name="l02738"></a><span class="lineno"> 2738</span>  ValueType& value_;</div> -<div class="line"><a name="l02739"></a><span class="lineno"> 2739</span> };</div> -<div class="line"><a name="l02740"></a><span class="lineno"> 2740</span>  </div> -<div class="line"><a name="l02741"></a><span class="lineno"> 2741</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l02742"></a><span class="lineno"> 2742</span> RAPIDJSON_DIAG_POP</div> -<div class="line"><a name="l02743"></a><span class="lineno"> 2743</span>  </div> -<div class="line"><a name="l02744"></a><span class="lineno"> 2744</span> <span class="preprocessor">#endif // RAPIDJSON_DOCUMENT_H_</span></div> +<div class="line"><a name="l02505"></a><span class="lineno"> 2505</span>  </div> +<div class="line"><a name="l02506"></a><span class="lineno"> 2506</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02507"></a><span class="lineno"> 2507</span> <span class="comment"> //! Move constructor in C++11</span></div> +<div class="line"><a name="l02508"></a><span class="lineno"> 2508</span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>&& rhs) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l02509"></a><span class="lineno"> 2509</span>  : ValueType(std::forward<ValueType>(rhs)), <span class="comment">// explicit cast to avoid prohibited move from Document</span></div> +<div class="line"><a name="l02510"></a><span class="lineno"> 2510</span>  allocator_(rhs.allocator_),</div> +<div class="line"><a name="l02511"></a><span class="lineno"> 2511</span>  ownAllocator_(rhs.ownAllocator_),</div> +<div class="line"><a name="l02512"></a><span class="lineno"> 2512</span>  stack_(std::move(rhs.stack_)),</div> +<div class="line"><a name="l02513"></a><span class="lineno"> 2513</span>  parseResult_(rhs.parseResult_)</div> +<div class="line"><a name="l02514"></a><span class="lineno"> 2514</span>  {</div> +<div class="line"><a name="l02515"></a><span class="lineno"> 2515</span>  rhs.allocator_ = 0;</div> +<div class="line"><a name="l02516"></a><span class="lineno"> 2516</span>  rhs.ownAllocator_ = 0;</div> +<div class="line"><a name="l02517"></a><span class="lineno"> 2517</span>  rhs.parseResult_ = <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">ParseResult</a>();</div> +<div class="line"><a name="l02518"></a><span class="lineno"> 2518</span>  }</div> +<div class="line"><a name="l02519"></a><span class="lineno"> 2519</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02520"></a><span class="lineno"> 2520</span>  </div> +<div class="line"><a name="l02521"></a><span class="lineno"> 2521</span>  ~GenericDocument() {</div> +<div class="line"><a name="l02522"></a><span class="lineno"> 2522</span>  <span class="comment">// Clear the ::ValueType before ownAllocator is destroyed, ~ValueType()</span></div> +<div class="line"><a name="l02523"></a><span class="lineno"> 2523</span>  <span class="comment">// runs last and may access its elements or members which would be freed</span></div> +<div class="line"><a name="l02524"></a><span class="lineno"> 2524</span>  <span class="comment">// with an allocator like MemoryPoolAllocator (CrtAllocator does not</span></div> +<div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>  <span class="comment">// free its data when destroyed, but MemoryPoolAllocator does).</span></div> +<div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>  <span class="keywordflow">if</span> (ownAllocator_) {</div> +<div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>  ValueType::SetNull();</div> +<div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>  }</div> +<div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>  Destroy();</div> +<div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>  }</div> +<div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>  </div> +<div class="line"><a name="l02532"></a><span class="lineno"> 2532</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02533"></a><span class="lineno"> 2533</span> <span class="comment"> //! Move assignment in C++11</span></div> +<div class="line"><a name="l02534"></a><span class="lineno"> 2534</span> <span class="comment"></span> GenericDocument& operator=(GenericDocument&& rhs) RAPIDJSON_NOEXCEPT</div> +<div class="line"><a name="l02535"></a><span class="lineno"> 2535</span>  {</div> +<div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>  <span class="comment">// The cast to ValueType is necessary here, because otherwise it would</span></div> +<div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>  <span class="comment">// attempt to call GenericValue's templated assignment operator.</span></div> +<div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>  ValueType::operator=(std::forward<ValueType>(rhs));</div> +<div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>  </div> +<div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>  <span class="comment">// Calling the destructor here would prematurely call stack_'s destructor</span></div> +<div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>  Destroy();</div> +<div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>  </div> +<div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>  allocator_ = rhs.allocator_;</div> +<div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>  ownAllocator_ = rhs.ownAllocator_;</div> +<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>  stack_ = std::move(rhs.stack_);</div> +<div class="line"><a name="l02546"></a><span class="lineno"> 2546</span>  parseResult_ = rhs.parseResult_;</div> +<div class="line"><a name="l02547"></a><span class="lineno"> 2547</span>  </div> +<div class="line"><a name="l02548"></a><span class="lineno"> 2548</span>  rhs.allocator_ = 0;</div> +<div class="line"><a name="l02549"></a><span class="lineno"> 2549</span>  rhs.ownAllocator_ = 0;</div> +<div class="line"><a name="l02550"></a><span class="lineno"> 2550</span>  rhs.parseResult_ = ParseResult();</div> +<div class="line"><a name="l02551"></a><span class="lineno"> 2551</span>  </div> +<div class="line"><a name="l02552"></a><span class="lineno"> 2552</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02553"></a><span class="lineno"> 2553</span>  }</div> +<div class="line"><a name="l02554"></a><span class="lineno"> 2554</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02555"></a><span class="lineno"> 2555</span> <span class="comment"></span> </div> +<div class="line"><a name="l02556"></a><span class="lineno"> 2556</span> <span class="comment"> //! Exchange the contents of this document with those of another.</span></div> +<div class="line"><a name="l02557"></a><span class="lineno"> 2557</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l02558"></a><span class="lineno"> 2558</span> <span class="comment"> \param rhs Another document.</span></div> +<div class="line"><a name="l02559"></a><span class="lineno"> 2559</span> <span class="comment"> \note Constant complexity.</span></div> +<div class="line"><a name="l02560"></a><span class="lineno"> 2560</span> <span class="comment"> \see GenericValue::Swap</span></div> +<div class="line"><a name="l02561"></a><span class="lineno"> 2561</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02562"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b"> 2562</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">Swap</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& rhs) RAPIDJSON_NOEXCEPT {</div> +<div class="line"><a name="l02563"></a><span class="lineno"> 2563</span>  ValueType::Swap(rhs);</div> +<div class="line"><a name="l02564"></a><span class="lineno"> 2564</span>  stack_.Swap(rhs.stack_);</div> +<div class="line"><a name="l02565"></a><span class="lineno"> 2565</span>  internal::Swap(allocator_, rhs.allocator_);</div> +<div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>  internal::Swap(ownAllocator_, rhs.ownAllocator_);</div> +<div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>  internal::Swap(parseResult_, rhs.parseResult_);</div> +<div class="line"><a name="l02568"></a><span class="lineno"> 2568</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02569"></a><span class="lineno"> 2569</span>  }</div> +<div class="line"><a name="l02570"></a><span class="lineno"> 2570</span>  </div> +<div class="line"><a name="l02571"></a><span class="lineno"> 2571</span>  <span class="comment">// Allow Swap with ValueType.</span></div> +<div class="line"><a name="l02572"></a><span class="lineno"> 2572</span>  <span class="comment">// Refer to Effective C++ 3rd Edition/Item 33: Avoid hiding inherited names.</span></div> +<div class="line"><a name="l02573"></a><span class="lineno"> 2573</span>  <span class="keyword">using</span> ValueType::Swap;</div> +<div class="line"><a name="l02574"></a><span class="lineno"> 2574</span> <span class="comment"></span> </div> +<div class="line"><a name="l02575"></a><span class="lineno"> 2575</span> <span class="comment"> //! free-standing swap function helper</span></div> +<div class="line"><a name="l02576"></a><span class="lineno"> 2576</span> <span class="comment"></span><span class="comment"> /*!</span></div> +<div class="line"><a name="l02577"></a><span class="lineno"> 2577</span> <span class="comment"> Helper function to enable support for common swap implementation pattern based on \c std::swap:</span></div> +<div class="line"><a name="l02578"></a><span class="lineno"> 2578</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l02579"></a><span class="lineno"> 2579</span> <span class="comment"> void swap(MyClass& a, MyClass& b) {</span></div> +<div class="line"><a name="l02580"></a><span class="lineno"> 2580</span> <span class="comment"> using std::swap;</span></div> +<div class="line"><a name="l02581"></a><span class="lineno"> 2581</span> <span class="comment"> swap(a.doc, b.doc);</span></div> +<div class="line"><a name="l02582"></a><span class="lineno"> 2582</span> <span class="comment"> // ...</span></div> +<div class="line"><a name="l02583"></a><span class="lineno"> 2583</span> <span class="comment"> }</span></div> +<div class="line"><a name="l02584"></a><span class="lineno"> 2584</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l02585"></a><span class="lineno"> 2585</span> <span class="comment"> \see Swap()</span></div> +<div class="line"><a name="l02586"></a><span class="lineno"> 2586</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02587"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d"> 2587</a></span>  <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">swap</a>(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& a, <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& b) RAPIDJSON_NOEXCEPT { a.Swap(b); }</div> +<div class="line"><a name="l02588"></a><span class="lineno"> 2588</span> <span class="comment"></span> </div> +<div class="line"><a name="l02589"></a><span class="lineno"> 2589</span> <span class="comment"> //! Populate this document by a generator which produces SAX events.</span></div> +<div class="line"><a name="l02590"></a><span class="lineno"> 2590</span> <span class="comment"></span><span class="comment"> /*! \tparam Generator A functor with <tt>bool f(Handler)</tt> prototype.</span></div> +<div class="line"><a name="l02591"></a><span class="lineno"> 2591</span> <span class="comment"> \param g Generator functor which sends SAX events to the parameter.</span></div> +<div class="line"><a name="l02592"></a><span class="lineno"> 2592</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02593"></a><span class="lineno"> 2593</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02594"></a><span class="lineno"> 2594</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> Generator></div> +<div class="line"><a name="l02595"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64"> 2595</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">Populate</a>(Generator& g) {</div> +<div class="line"><a name="l02596"></a><span class="lineno"> 2596</span>  ClearStackOnExit scope(*<span class="keyword">this</span>);</div> +<div class="line"><a name="l02597"></a><span class="lineno"> 2597</span>  <span class="keywordflow">if</span> (g(*<span class="keyword">this</span>)) {</div> +<div class="line"><a name="l02598"></a><span class="lineno"> 2598</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(stack_.GetSize() == <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">ValueType</a>)); <span class="comment">// Got one and only one root object</span></div> +<div class="line"><a name="l02599"></a><span class="lineno"> 2599</span>  ValueType::operator=(*stack_.template Pop<ValueType>(1));<span class="comment">// Move value from stack to document</span></div> +<div class="line"><a name="l02600"></a><span class="lineno"> 2600</span>  }</div> +<div class="line"><a name="l02601"></a><span class="lineno"> 2601</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02602"></a><span class="lineno"> 2602</span>  }</div> +<div class="line"><a name="l02603"></a><span class="lineno"> 2603</span> <span class="comment"></span> </div> +<div class="line"><a name="l02604"></a><span class="lineno"> 2604</span> <span class="comment"> //!@name Parse from stream</span></div> +<div class="line"><a name="l02605"></a><span class="lineno"> 2605</span> <span class="comment"> //!@{</span></div> +<div class="line"><a name="l02606"></a><span class="lineno"> 2606</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02607"></a><span class="lineno"> 2607</span> <span class="comment"> //! Parse JSON text from an input stream (with Encoding conversion)</span></div> +<div class="line"><a name="l02608"></a><span class="lineno"> 2608</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> +<div class="line"><a name="l02609"></a><span class="lineno"> 2609</span> <span class="comment"> \tparam SourceEncoding Encoding of input stream</span></div> +<div class="line"><a name="l02610"></a><span class="lineno"> 2610</span> <span class="comment"> \tparam InputStream Type of input stream, implementing Stream concept</span></div> +<div class="line"><a name="l02611"></a><span class="lineno"> 2611</span> <span class="comment"> \param is Input stream to be parsed.</span></div> +<div class="line"><a name="l02612"></a><span class="lineno"> 2612</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02613"></a><span class="lineno"> 2613</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02614"></a><span class="lineno"> 2614</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding, <span class="keyword">typename</span> InputStream></div> +<div class="line"><a name="l02615"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85"> 2615</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">ParseStream</a>(InputStream& is) {</div> +<div class="line"><a name="l02616"></a><span class="lineno"> 2616</span>  <a class="code" href="classrapidjson_1_1_generic_reader.html">GenericReader<SourceEncoding, Encoding, StackAllocator></a> reader(</div> +<div class="line"><a name="l02617"></a><span class="lineno"> 2617</span>  stack_.HasAllocator() ? &stack_.GetAllocator() : 0);</div> +<div class="line"><a name="l02618"></a><span class="lineno"> 2618</span>  ClearStackOnExit scope(*<span class="keyword">this</span>);</div> +<div class="line"><a name="l02619"></a><span class="lineno"> 2619</span>  parseResult_ = reader.template Parse<parseFlags>(is, *<span class="keyword">this</span>);</div> +<div class="line"><a name="l02620"></a><span class="lineno"> 2620</span>  <span class="keywordflow">if</span> (parseResult_) {</div> +<div class="line"><a name="l02621"></a><span class="lineno"> 2621</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(stack_.GetSize() == <span class="keyword">sizeof</span>(<a class="code" href="classrapidjson_1_1_generic_value.html">ValueType</a>)); <span class="comment">// Got one and only one root object</span></div> +<div class="line"><a name="l02622"></a><span class="lineno"> 2622</span>  ValueType::operator=(*stack_.template Pop<ValueType>(1));<span class="comment">// Move value from stack to document</span></div> +<div class="line"><a name="l02623"></a><span class="lineno"> 2623</span>  }</div> +<div class="line"><a name="l02624"></a><span class="lineno"> 2624</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02625"></a><span class="lineno"> 2625</span>  }</div> +<div class="line"><a name="l02626"></a><span class="lineno"> 2626</span> <span class="comment"></span> </div> +<div class="line"><a name="l02627"></a><span class="lineno"> 2627</span> <span class="comment"> //! Parse JSON text from an input stream</span></div> +<div class="line"><a name="l02628"></a><span class="lineno"> 2628</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> +<div class="line"><a name="l02629"></a><span class="lineno"> 2629</span> <span class="comment"> \tparam InputStream Type of input stream, implementing Stream concept</span></div> +<div class="line"><a name="l02630"></a><span class="lineno"> 2630</span> <span class="comment"> \param is Input stream to be parsed.</span></div> +<div class="line"><a name="l02631"></a><span class="lineno"> 2631</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02632"></a><span class="lineno"> 2632</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02633"></a><span class="lineno"> 2633</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> InputStream></div> +<div class="line"><a name="l02634"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a"> 2634</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">ParseStream</a>(InputStream& is) {</div> +<div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>  <span class="keywordflow">return</span> ParseStream<parseFlags, Encoding, InputStream>(is);</div> +<div class="line"><a name="l02636"></a><span class="lineno"> 2636</span>  }</div> +<div class="line"><a name="l02637"></a><span class="lineno"> 2637</span> <span class="comment"></span> </div> +<div class="line"><a name="l02638"></a><span class="lineno"> 2638</span> <span class="comment"> //! Parse JSON text from an input stream (with \ref kParseDefaultFlags)</span></div> +<div class="line"><a name="l02639"></a><span class="lineno"> 2639</span> <span class="comment"></span><span class="comment"> /*! \tparam InputStream Type of input stream, implementing Stream concept</span></div> +<div class="line"><a name="l02640"></a><span class="lineno"> 2640</span> <span class="comment"> \param is Input stream to be parsed.</span></div> +<div class="line"><a name="l02641"></a><span class="lineno"> 2641</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02642"></a><span class="lineno"> 2642</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02643"></a><span class="lineno"> 2643</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> InputStream></div> +<div class="line"><a name="l02644"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414"> 2644</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">ParseStream</a>(InputStream& is) {</div> +<div class="line"><a name="l02645"></a><span class="lineno"> 2645</span>  <span class="keywordflow">return</span> ParseStream<kParseDefaultFlags, Encoding, InputStream>(is);</div> +<div class="line"><a name="l02646"></a><span class="lineno"> 2646</span>  }<span class="comment"></span></div> +<div class="line"><a name="l02647"></a><span class="lineno"> 2647</span> <span class="comment"> //!@}</span></div> +<div class="line"><a name="l02648"></a><span class="lineno"> 2648</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02649"></a><span class="lineno"> 2649</span> <span class="comment"> //!@name Parse in-place from mutable string</span></div> +<div class="line"><a name="l02650"></a><span class="lineno"> 2650</span> <span class="comment"> //!@{</span></div> +<div class="line"><a name="l02651"></a><span class="lineno"> 2651</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02652"></a><span class="lineno"> 2652</span> <span class="comment"> //! Parse JSON text from a mutable string</span></div> +<div class="line"><a name="l02653"></a><span class="lineno"> 2653</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag.</span></div> +<div class="line"><a name="l02654"></a><span class="lineno"> 2654</span> <span class="comment"> \param str Mutable zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02655"></a><span class="lineno"> 2655</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02656"></a><span class="lineno"> 2656</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02657"></a><span class="lineno"> 2657</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> +<div class="line"><a name="l02658"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f"> 2658</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">ParseInsitu</a>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> +<div class="line"><a name="l02659"></a><span class="lineno"> 2659</span>  <a class="code" href="structrapidjson_1_1_generic_insitu_string_stream.html">GenericInsituStringStream<Encoding></a> s(str);</div> +<div class="line"><a name="l02660"></a><span class="lineno"> 2660</span>  <span class="keywordflow">return</span> ParseStream<parseFlags | kParseInsituFlag>(s);</div> +<div class="line"><a name="l02661"></a><span class="lineno"> 2661</span>  }</div> +<div class="line"><a name="l02662"></a><span class="lineno"> 2662</span> <span class="comment"></span> </div> +<div class="line"><a name="l02663"></a><span class="lineno"> 2663</span> <span class="comment"> //! Parse JSON text from a mutable string (with \ref kParseDefaultFlags)</span></div> +<div class="line"><a name="l02664"></a><span class="lineno"> 2664</span> <span class="comment"></span><span class="comment"> /*! \param str Mutable zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02665"></a><span class="lineno"> 2665</span> <span class="comment"> \return The document itself for fluent API.</span></div> +<div class="line"><a name="l02666"></a><span class="lineno"> 2666</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02667"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367"> 2667</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">ParseInsitu</a>(<a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> +<div class="line"><a name="l02668"></a><span class="lineno"> 2668</span>  <span class="keywordflow">return</span> ParseInsitu<kParseDefaultFlags>(str);</div> +<div class="line"><a name="l02669"></a><span class="lineno"> 2669</span>  }<span class="comment"></span></div> +<div class="line"><a name="l02670"></a><span class="lineno"> 2670</span> <span class="comment"> //!@}</span></div> +<div class="line"><a name="l02671"></a><span class="lineno"> 2671</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02672"></a><span class="lineno"> 2672</span> <span class="comment"> //!@name Parse from read-only string</span></div> +<div class="line"><a name="l02673"></a><span class="lineno"> 2673</span> <span class="comment"> //!@{</span></div> +<div class="line"><a name="l02674"></a><span class="lineno"> 2674</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02675"></a><span class="lineno"> 2675</span> <span class="comment"> //! Parse JSON text from a read-only string (with Encoding conversion)</span></div> +<div class="line"><a name="l02676"></a><span class="lineno"> 2676</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag (must not contain \ref kParseInsituFlag).</span></div> +<div class="line"><a name="l02677"></a><span class="lineno"> 2677</span> <span class="comment"> \tparam SourceEncoding Transcoding from input Encoding</span></div> +<div class="line"><a name="l02678"></a><span class="lineno"> 2678</span> <span class="comment"> \param str Read-only zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02679"></a><span class="lineno"> 2679</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02680"></a><span class="lineno"> 2680</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> +<div class="line"><a name="l02681"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c"> 2681</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">Parse</a>(<span class="keyword">const</span> <span class="keyword">typename</span> SourceEncoding::Ch* str) {</div> +<div class="line"><a name="l02682"></a><span class="lineno"> 2682</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!(parseFlags & <a class="code" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">kParseInsituFlag</a>));</div> +<div class="line"><a name="l02683"></a><span class="lineno"> 2683</span>  <a class="code" href="structrapidjson_1_1_generic_string_stream.html">GenericStringStream<SourceEncoding></a> s(str);</div> +<div class="line"><a name="l02684"></a><span class="lineno"> 2684</span>  <span class="keywordflow">return</span> ParseStream<parseFlags, SourceEncoding>(s);</div> +<div class="line"><a name="l02685"></a><span class="lineno"> 2685</span>  }</div> +<div class="line"><a name="l02686"></a><span class="lineno"> 2686</span> <span class="comment"></span> </div> +<div class="line"><a name="l02687"></a><span class="lineno"> 2687</span> <span class="comment"> //! Parse JSON text from a read-only string</span></div> +<div class="line"><a name="l02688"></a><span class="lineno"> 2688</span> <span class="comment"></span><span class="comment"> /*! \tparam parseFlags Combination of \ref ParseFlag (must not contain \ref kParseInsituFlag).</span></div> +<div class="line"><a name="l02689"></a><span class="lineno"> 2689</span> <span class="comment"> \param str Read-only zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02690"></a><span class="lineno"> 2690</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02691"></a><span class="lineno"> 2691</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> +<div class="line"><a name="l02692"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8"> 2692</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">Parse</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> +<div class="line"><a name="l02693"></a><span class="lineno"> 2693</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str);</div> +<div class="line"><a name="l02694"></a><span class="lineno"> 2694</span>  }</div> +<div class="line"><a name="l02695"></a><span class="lineno"> 2695</span> <span class="comment"></span> </div> +<div class="line"><a name="l02696"></a><span class="lineno"> 2696</span> <span class="comment"> //! Parse JSON text from a read-only string (with \ref kParseDefaultFlags)</span></div> +<div class="line"><a name="l02697"></a><span class="lineno"> 2697</span> <span class="comment"></span><span class="comment"> /*! \param str Read-only zero-terminated string to be parsed.</span></div> +<div class="line"><a name="l02698"></a><span class="lineno"> 2698</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02699"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de"> 2699</a></span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">Parse</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">Ch</a>* str) {</div> +<div class="line"><a name="l02700"></a><span class="lineno"> 2700</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str);</div> +<div class="line"><a name="l02701"></a><span class="lineno"> 2701</span>  }</div> +<div class="line"><a name="l02702"></a><span class="lineno"> 2702</span>  </div> +<div class="line"><a name="l02703"></a><span class="lineno"> 2703</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> +<div class="line"><a name="l02704"></a><span class="lineno"> 2704</span>  <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& Parse(<span class="keyword">const</span> <span class="keyword">typename</span> SourceEncoding::Ch* str, <span class="keywordtype">size_t</span> length) {</div> +<div class="line"><a name="l02705"></a><span class="lineno"> 2705</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(!(parseFlags & <a class="code" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">kParseInsituFlag</a>));</div> +<div class="line"><a name="l02706"></a><span class="lineno"> 2706</span>  <a class="code" href="structrapidjson_1_1_memory_stream.html">MemoryStream</a> ms(reinterpret_cast<const char*>(str), length * <span class="keyword">sizeof</span>(<span class="keyword">typename</span> SourceEncoding::Ch));</div> +<div class="line"><a name="l02707"></a><span class="lineno"> 2707</span>  <a class="code" href="classrapidjson_1_1_encoded_input_stream.html">EncodedInputStream<SourceEncoding, MemoryStream></a> is(ms);</div> +<div class="line"><a name="l02708"></a><span class="lineno"> 2708</span>  ParseStream<parseFlags, SourceEncoding>(is);</div> +<div class="line"><a name="l02709"></a><span class="lineno"> 2709</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div> +<div class="line"><a name="l02710"></a><span class="lineno"> 2710</span>  }</div> +<div class="line"><a name="l02711"></a><span class="lineno"> 2711</span>  </div> +<div class="line"><a name="l02712"></a><span class="lineno"> 2712</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> +<div class="line"><a name="l02713"></a><span class="lineno"> 2713</span>  GenericDocument& Parse(<span class="keyword">const</span> Ch* str, <span class="keywordtype">size_t</span> length) {</div> +<div class="line"><a name="l02714"></a><span class="lineno"> 2714</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str, length);</div> +<div class="line"><a name="l02715"></a><span class="lineno"> 2715</span>  }</div> +<div class="line"><a name="l02716"></a><span class="lineno"> 2716</span>  </div> +<div class="line"><a name="l02717"></a><span class="lineno"> 2717</span>  GenericDocument& Parse(<span class="keyword">const</span> Ch* str, <span class="keywordtype">size_t</span> length) {</div> +<div class="line"><a name="l02718"></a><span class="lineno"> 2718</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str, length);</div> +<div class="line"><a name="l02719"></a><span class="lineno"> 2719</span>  }</div> +<div class="line"><a name="l02720"></a><span class="lineno"> 2720</span>  </div> +<div class="line"><a name="l02721"></a><span class="lineno"> 2721</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02722"></a><span class="lineno"> 2722</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags, <span class="keyword">typename</span> SourceEncoding></div> +<div class="line"><a name="l02723"></a><span class="lineno"> 2723</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<typename SourceEncoding::Ch>& str) {</div> +<div class="line"><a name="l02724"></a><span class="lineno"> 2724</span>  <span class="comment">// c_str() is constant complexity according to standard. Should be faster than Parse(const char*, size_t)</span></div> +<div class="line"><a name="l02725"></a><span class="lineno"> 2725</span>  <span class="keywordflow">return</span> Parse<parseFlags, SourceEncoding>(str.c_str());</div> +<div class="line"><a name="l02726"></a><span class="lineno"> 2726</span>  }</div> +<div class="line"><a name="l02727"></a><span class="lineno"> 2727</span>  </div> +<div class="line"><a name="l02728"></a><span class="lineno"> 2728</span>  <span class="keyword">template</span> <<span class="keywordtype">unsigned</span> parseFlags></div> +<div class="line"><a name="l02729"></a><span class="lineno"> 2729</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<Ch>& str) {</div> +<div class="line"><a name="l02730"></a><span class="lineno"> 2730</span>  <span class="keywordflow">return</span> Parse<parseFlags, Encoding>(str.c_str());</div> +<div class="line"><a name="l02731"></a><span class="lineno"> 2731</span>  }</div> +<div class="line"><a name="l02732"></a><span class="lineno"> 2732</span>  </div> +<div class="line"><a name="l02733"></a><span class="lineno"> 2733</span>  GenericDocument& Parse(<span class="keyword">const</span> std::basic_string<Ch>& str) {</div> +<div class="line"><a name="l02734"></a><span class="lineno"> 2734</span>  <span class="keywordflow">return</span> Parse<kParseDefaultFlags>(str);</div> +<div class="line"><a name="l02735"></a><span class="lineno"> 2735</span>  }</div> +<div class="line"><a name="l02736"></a><span class="lineno"> 2736</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_STDSTRING </span></div> +<div class="line"><a name="l02737"></a><span class="lineno"> 2737</span> <span class="comment"></span> </div> +<div class="line"><a name="l02738"></a><span class="lineno"> 2738</span> <span class="comment"> //!@}</span></div> +<div class="line"><a name="l02739"></a><span class="lineno"> 2739</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02740"></a><span class="lineno"> 2740</span> <span class="comment"> //!@name Handling parse errors</span></div> +<div class="line"><a name="l02741"></a><span class="lineno"> 2741</span> <span class="comment"> //!@{</span></div> +<div class="line"><a name="l02742"></a><span class="lineno"> 2742</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02743"></a><span class="lineno"> 2743</span> <span class="comment"> //! Whether a parse error has occurred in the last parsing.</span></div> +<div class="line"><a name="l02744"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e"> 2744</a></span> <span class="comment"></span> <span class="keywordtype">bool</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">HasParseError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.IsError(); }</div> +<div class="line"><a name="l02745"></a><span class="lineno"> 2745</span> <span class="comment"></span> </div> +<div class="line"><a name="l02746"></a><span class="lineno"> 2746</span> <span class="comment"> //! Get the \ref ParseErrorCode of last parsing.</span></div> +<div class="line"><a name="l02747"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b"> 2747</a></span> <span class="comment"></span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">ParseErrorCode</a> <a class="code" href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">GetParseError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.Code(); }</div> +<div class="line"><a name="l02748"></a><span class="lineno"> 2748</span> <span class="comment"></span> </div> +<div class="line"><a name="l02749"></a><span class="lineno"> 2749</span> <span class="comment"> //! Get the position of last parsing error in input, 0 otherwise.</span></div> +<div class="line"><a name="l02750"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f"> 2750</a></span> <span class="comment"></span> <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">GetErrorOffset</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_.Offset(); }</div> +<div class="line"><a name="l02751"></a><span class="lineno"> 2751</span> <span class="comment"></span> </div> +<div class="line"><a name="l02752"></a><span class="lineno"> 2752</span> <span class="comment"> //! Implicit conversion to get the last parse result</span></div> +<div class="line"><a name="l02753"></a><span class="lineno"> 2753</span> <span class="comment"></span><span class="preprocessor">#ifndef __clang // -Wdocumentation</span></div> +<div class="line"><a name="l02754"></a><span class="lineno"> 2754</span> <span class="comment"> /*! \return \ref ParseResult of the last parse operation</span></div> +<div class="line"><a name="l02755"></a><span class="lineno"> 2755</span> <span class="comment"></span> </div> +<div class="line"><a name="l02756"></a><span class="lineno"> 2756</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l02757"></a><span class="lineno"> 2757</span> <span class="comment"> Document doc;</span></div> +<div class="line"><a name="l02758"></a><span class="lineno"> 2758</span> <span class="comment"> ParseResult ok = doc.Parse(json);</span></div> +<div class="line"><a name="l02759"></a><span class="lineno"> 2759</span> <span class="comment"> if (!ok)</span></div> +<div class="line"><a name="l02760"></a><span class="lineno"> 2760</span> <span class="comment"> printf( "JSON parse error: %s (%u)\n", GetParseError_En(ok.Code()), ok.Offset());</span></div> +<div class="line"><a name="l02761"></a><span class="lineno"> 2761</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l02762"></a><span class="lineno"> 2762</span> <span class="comment"> */</span></div> +<div class="line"><a name="l02763"></a><span class="lineno"> 2763</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02764"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974"> 2764</a></span>  <span class="keyword">operator</span> <a class="code" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">ParseResult</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> parseResult_; }<span class="comment"></span></div> +<div class="line"><a name="l02765"></a><span class="lineno"> 2765</span> <span class="comment"> //!@}</span></div> +<div class="line"><a name="l02766"></a><span class="lineno"> 2766</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l02767"></a><span class="lineno"> 2767</span> <span class="comment"> //! Get the allocator of this document.</span></div> +<div class="line"><a name="l02768"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f"> 2768</a></span> <span class="comment"></span> <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>& <a class="code" href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">GetAllocator</a>() {</div> +<div class="line"><a name="l02769"></a><span class="lineno"> 2769</span>  <a class="code" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a>(allocator_);</div> +<div class="line"><a name="l02770"></a><span class="lineno"> 2770</span>  <span class="keywordflow">return</span> *allocator_;</div> +<div class="line"><a name="l02771"></a><span class="lineno"> 2771</span>  }</div> +<div class="line"><a name="l02772"></a><span class="lineno"> 2772</span> <span class="comment"></span> </div> +<div class="line"><a name="l02773"></a><span class="lineno"> 2773</span> <span class="comment"> //! Get the capacity of stack in bytes.</span></div> +<div class="line"><a name="l02774"></a><span class="lineno"><a class="line" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b"> 2774</a></span> <span class="comment"></span> <span class="keywordtype">size_t</span> <a class="code" href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">GetStackCapacity</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> stack_.GetCapacity(); }</div> +<div class="line"><a name="l02775"></a><span class="lineno"> 2775</span>  </div> +<div class="line"><a name="l02776"></a><span class="lineno"> 2776</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l02777"></a><span class="lineno"> 2777</span>  <span class="comment">// clear stack on any exit from ParseStream, e.g. due to exception</span></div> +<div class="line"><a name="l02778"></a><span class="lineno"> 2778</span>  <span class="keyword">struct </span>ClearStackOnExit {</div> +<div class="line"><a name="l02779"></a><span class="lineno"> 2779</span>  <span class="keyword">explicit</span> ClearStackOnExit(<a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument</a>& d) : d_(d) {}</div> +<div class="line"><a name="l02780"></a><span class="lineno"> 2780</span>  ~ClearStackOnExit() { d_.ClearStack(); }</div> +<div class="line"><a name="l02781"></a><span class="lineno"> 2781</span>  <span class="keyword">private</span>:</div> +<div class="line"><a name="l02782"></a><span class="lineno"> 2782</span>  ClearStackOnExit(<span class="keyword">const</span> ClearStackOnExit&);</div> +<div class="line"><a name="l02783"></a><span class="lineno"> 2783</span>  ClearStackOnExit& operator=(<span class="keyword">const</span> ClearStackOnExit&);</div> +<div class="line"><a name="l02784"></a><span class="lineno"> 2784</span>  GenericDocument& d_;</div> +<div class="line"><a name="l02785"></a><span class="lineno"> 2785</span>  };</div> +<div class="line"><a name="l02786"></a><span class="lineno"> 2786</span>  </div> +<div class="line"><a name="l02787"></a><span class="lineno"> 2787</span>  <span class="comment">// callers of the following private Handler functions</span></div> +<div class="line"><a name="l02788"></a><span class="lineno"> 2788</span>  <span class="comment">// template <typename,typename,typename> friend class GenericReader; // for parsing</span></div> +<div class="line"><a name="l02789"></a><span class="lineno"> 2789</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>> <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue; <span class="comment">// for deep copying</span></div> +<div class="line"><a name="l02790"></a><span class="lineno"> 2790</span>  </div> +<div class="line"><a name="l02791"></a><span class="lineno"> 2791</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l02792"></a><span class="lineno"> 2792</span>  <span class="comment">// Implementation of Handler</span></div> +<div class="line"><a name="l02793"></a><span class="lineno"> 2793</span>  <span class="keywordtype">bool</span> Null() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02794"></a><span class="lineno"> 2794</span>  <span class="keywordtype">bool</span> Bool(<span class="keywordtype">bool</span> b) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(b); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02795"></a><span class="lineno"> 2795</span>  <span class="keywordtype">bool</span> Int(<span class="keywordtype">int</span> i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02796"></a><span class="lineno"> 2796</span>  <span class="keywordtype">bool</span> Uint(<span class="keywordtype">unsigned</span> i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02797"></a><span class="lineno"> 2797</span>  <span class="keywordtype">bool</span> Int64(int64_t i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02798"></a><span class="lineno"> 2798</span>  <span class="keywordtype">bool</span> Uint64(uint64_t i) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02799"></a><span class="lineno"> 2799</span>  <span class="keywordtype">bool</span> Double(<span class="keywordtype">double</span> d) { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(d); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02800"></a><span class="lineno"> 2800</span>  </div> +<div class="line"><a name="l02801"></a><span class="lineno"> 2801</span>  <span class="keywordtype">bool</span> RawNumber(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { </div> +<div class="line"><a name="l02802"></a><span class="lineno"> 2802</span>  <span class="keywordflow">if</span> (copy) </div> +<div class="line"><a name="l02803"></a><span class="lineno"> 2803</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length, GetAllocator());</div> +<div class="line"><a name="l02804"></a><span class="lineno"> 2804</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02805"></a><span class="lineno"> 2805</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length);</div> +<div class="line"><a name="l02806"></a><span class="lineno"> 2806</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l02807"></a><span class="lineno"> 2807</span>  }</div> +<div class="line"><a name="l02808"></a><span class="lineno"> 2808</span>  </div> +<div class="line"><a name="l02809"></a><span class="lineno"> 2809</span>  <span class="keywordtype">bool</span> String(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { </div> +<div class="line"><a name="l02810"></a><span class="lineno"> 2810</span>  <span class="keywordflow">if</span> (copy) </div> +<div class="line"><a name="l02811"></a><span class="lineno"> 2811</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length, GetAllocator());</div> +<div class="line"><a name="l02812"></a><span class="lineno"> 2812</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02813"></a><span class="lineno"> 2813</span>  <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(str, length);</div> +<div class="line"><a name="l02814"></a><span class="lineno"> 2814</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l02815"></a><span class="lineno"> 2815</span>  }</div> +<div class="line"><a name="l02816"></a><span class="lineno"> 2816</span>  </div> +<div class="line"><a name="l02817"></a><span class="lineno"> 2817</span>  <span class="keywordtype">bool</span> StartObject() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a>); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02818"></a><span class="lineno"> 2818</span>  </div> +<div class="line"><a name="l02819"></a><span class="lineno"> 2819</span>  <span class="keywordtype">bool</span> Key(<span class="keyword">const</span> Ch* str, <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <span class="keywordtype">bool</span> copy) { <span class="keywordflow">return</span> String(str, length, copy); }</div> +<div class="line"><a name="l02820"></a><span class="lineno"> 2820</span>  </div> +<div class="line"><a name="l02821"></a><span class="lineno"> 2821</span>  <span class="keywordtype">bool</span> EndObject(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> memberCount) {</div> +<div class="line"><a name="l02822"></a><span class="lineno"> 2822</span>  <span class="keyword">typename</span> ValueType::Member* members = stack_.template Pop<typename ValueType::Member>(memberCount);</div> +<div class="line"><a name="l02823"></a><span class="lineno"> 2823</span>  stack_.template Top<ValueType>()->SetObjectRaw(members, memberCount, GetAllocator());</div> +<div class="line"><a name="l02824"></a><span class="lineno"> 2824</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l02825"></a><span class="lineno"> 2825</span>  }</div> +<div class="line"><a name="l02826"></a><span class="lineno"> 2826</span>  </div> +<div class="line"><a name="l02827"></a><span class="lineno"> 2827</span>  <span class="keywordtype">bool</span> StartArray() { <span class="keyword">new</span> (stack_.template Push<ValueType>()) ValueType(<a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a>); <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div> +<div class="line"><a name="l02828"></a><span class="lineno"> 2828</span>  </div> +<div class="line"><a name="l02829"></a><span class="lineno"> 2829</span>  <span class="keywordtype">bool</span> EndArray(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> elementCount) {</div> +<div class="line"><a name="l02830"></a><span class="lineno"> 2830</span>  ValueType* elements = stack_.template Pop<ValueType>(elementCount);</div> +<div class="line"><a name="l02831"></a><span class="lineno"> 2831</span>  stack_.template Top<ValueType>()->SetArrayRaw(elements, elementCount, GetAllocator());</div> +<div class="line"><a name="l02832"></a><span class="lineno"> 2832</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div> +<div class="line"><a name="l02833"></a><span class="lineno"> 2833</span>  }</div> +<div class="line"><a name="l02834"></a><span class="lineno"> 2834</span>  </div> +<div class="line"><a name="l02835"></a><span class="lineno"> 2835</span> <span class="keyword">private</span>:<span class="comment"></span></div> +<div class="line"><a name="l02836"></a><span class="lineno"> 2836</span> <span class="comment"> //! Prohibit copying</span></div> +<div class="line"><a name="l02837"></a><span class="lineno"> 2837</span> <span class="comment"></span> GenericDocument(<span class="keyword">const</span> GenericDocument&);<span class="comment"></span></div> +<div class="line"><a name="l02838"></a><span class="lineno"> 2838</span> <span class="comment"> //! Prohibit assignment</span></div> +<div class="line"><a name="l02839"></a><span class="lineno"> 2839</span> <span class="comment"></span> GenericDocument& operator=(<span class="keyword">const</span> GenericDocument&);</div> +<div class="line"><a name="l02840"></a><span class="lineno"> 2840</span>  </div> +<div class="line"><a name="l02841"></a><span class="lineno"> 2841</span>  <span class="keywordtype">void</span> ClearStack() {</div> +<div class="line"><a name="l02842"></a><span class="lineno"> 2842</span>  <span class="keywordflow">if</span> (Allocator::kNeedFree)</div> +<div class="line"><a name="l02843"></a><span class="lineno"> 2843</span>  <span class="keywordflow">while</span> (stack_.GetSize() > 0) <span class="comment">// Here assumes all elements in stack array are GenericValue (Member is actually 2 GenericValue objects)</span></div> +<div class="line"><a name="l02844"></a><span class="lineno"> 2844</span>  (stack_.template Pop<ValueType>(1))->~ValueType();</div> +<div class="line"><a name="l02845"></a><span class="lineno"> 2845</span>  <span class="keywordflow">else</span></div> +<div class="line"><a name="l02846"></a><span class="lineno"> 2846</span>  stack_.Clear();</div> +<div class="line"><a name="l02847"></a><span class="lineno"> 2847</span>  stack_.ShrinkToFit();</div> +<div class="line"><a name="l02848"></a><span class="lineno"> 2848</span>  }</div> +<div class="line"><a name="l02849"></a><span class="lineno"> 2849</span>  </div> +<div class="line"><a name="l02850"></a><span class="lineno"> 2850</span>  <span class="keywordtype">void</span> Destroy() {</div> +<div class="line"><a name="l02851"></a><span class="lineno"> 2851</span>  <a class="code" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a>(ownAllocator_);</div> +<div class="line"><a name="l02852"></a><span class="lineno"> 2852</span>  }</div> +<div class="line"><a name="l02853"></a><span class="lineno"> 2853</span>  </div> +<div class="line"><a name="l02854"></a><span class="lineno"> 2854</span>  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> kDefaultStackCapacity = 1024;</div> +<div class="line"><a name="l02855"></a><span class="lineno"> 2855</span>  <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* allocator_;</div> +<div class="line"><a name="l02856"></a><span class="lineno"> 2856</span>  <a class="code" href="classrapidjson_1_1_allocator.html">Allocator</a>* ownAllocator_;</div> +<div class="line"><a name="l02857"></a><span class="lineno"> 2857</span>  internal::Stack<StackAllocator> stack_;</div> +<div class="line"><a name="l02858"></a><span class="lineno"> 2858</span>  ParseResult parseResult_;</div> +<div class="line"><a name="l02859"></a><span class="lineno"> 2859</span> };</div> +<div class="line"><a name="l02860"></a><span class="lineno"> 2860</span> <span class="comment"></span> </div> +<div class="line"><a name="l02861"></a><span class="lineno"> 2861</span> <span class="comment">//! GenericDocument with UTF8 encoding</span></div> +<div class="line"><a name="l02862"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8"> 2862</a></span> <span class="comment"></span><span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_document.html">GenericDocument<UTF8<></a> > <a class="code" href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">Document</a>;</div> +<div class="line"><a name="l02863"></a><span class="lineno"> 2863</span>  </div> +<div class="line"><a name="l02864"></a><span class="lineno"> 2864</span> <span class="comment"></span> </div> +<div class="line"><a name="l02865"></a><span class="lineno"> 2865</span> <span class="comment">//! Helper class for accessing Value of array type.</span></div> +<div class="line"><a name="l02866"></a><span class="lineno"> 2866</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l02867"></a><span class="lineno"> 2867</span> <span class="comment"> Instance of this helper class is obtained by \c GenericValue::GetArray().</span></div> +<div class="line"><a name="l02868"></a><span class="lineno"> 2868</span> <span class="comment"> In addition to all APIs for array type, it provides range-based for loop if \c RAPIDJSON_HAS_CXX11_RANGE_FOR=1.</span></div> +<div class="line"><a name="l02869"></a><span class="lineno"> 2869</span> <span class="comment">*/</span></div> +<div class="line"><a name="l02870"></a><span class="lineno"> 2870</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> Const, <span class="keyword">typename</span> ValueT></div> +<div class="line"><a name="l02871"></a><span class="lineno"> 2871</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> {</div> +<div class="line"><a name="l02872"></a><span class="lineno"> 2872</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l02873"></a><span class="lineno"> 2873</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray<true, ValueT></a> ConstArray;</div> +<div class="line"><a name="l02874"></a><span class="lineno"> 2874</span>  <span class="keyword">typedef</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray<false, ValueT></a> Array;</div> +<div class="line"><a name="l02875"></a><span class="lineno"> 2875</span>  <span class="keyword">typedef</span> ValueT PlainType;</div> +<div class="line"><a name="l02876"></a><span class="lineno"> 2876</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::MaybeAddConst<Const,PlainType>::Type</a> ValueType;</div> +<div class="line"><a name="l02877"></a><span class="lineno"> 2877</span>  <span class="keyword">typedef</span> ValueType* ValueIterator; <span class="comment">// This may be const or non-const iterator</span></div> +<div class="line"><a name="l02878"></a><span class="lineno"> 2878</span>  <span class="keyword">typedef</span> <span class="keyword">const</span> ValueT* ConstValueIterator;</div> +<div class="line"><a name="l02879"></a><span class="lineno"> 2879</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::AllocatorType AllocatorType;</div> +<div class="line"><a name="l02880"></a><span class="lineno"> 2880</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::StringRefType StringRefType;</div> +<div class="line"><a name="l02881"></a><span class="lineno"> 2881</span>  </div> +<div class="line"><a name="l02882"></a><span class="lineno"> 2882</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> +<div class="line"><a name="l02883"></a><span class="lineno"> 2883</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classrapidjson_1_1_generic_value.html">GenericValue</a>;</div> +<div class="line"><a name="l02884"></a><span class="lineno"> 2884</span>  </div> +<div class="line"><a name="l02885"></a><span class="lineno"> 2885</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& rhs) : value_(rhs.value_) {}</div> +<div class="line"><a name="l02886"></a><span class="lineno"> 2886</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& operator=(<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>& rhs) { value_ = rhs.value_; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02887"></a><span class="lineno"> 2887</span>  ~<a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>() {}</div> +<div class="line"><a name="l02888"></a><span class="lineno"> 2888</span>  </div> +<div class="line"><a name="l02889"></a><span class="lineno"> 2889</span>  <span class="keyword">operator</span> ValueType&() <span class="keyword">const</span> { <span class="keywordflow">return</span> value_; }</div> +<div class="line"><a name="l02890"></a><span class="lineno"> 2890</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Size()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Size(); }</div> +<div class="line"><a name="l02891"></a><span class="lineno"> 2891</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> Capacity()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Capacity(); }</div> +<div class="line"><a name="l02892"></a><span class="lineno"> 2892</span>  <span class="keywordtype">bool</span> Empty()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Empty(); }</div> +<div class="line"><a name="l02893"></a><span class="lineno"> 2893</span>  <span class="keywordtype">void</span> Clear()<span class="keyword"> const </span>{ value_.Clear(); }</div> +<div class="line"><a name="l02894"></a><span class="lineno"> 2894</span>  ValueType& operator[](<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> index)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[index]; }</div> +<div class="line"><a name="l02895"></a><span class="lineno"> 2895</span>  ValueIterator Begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Begin(); }</div> +<div class="line"><a name="l02896"></a><span class="lineno"> 2896</span>  ValueIterator End()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.End(); }</div> +<div class="line"><a name="l02897"></a><span class="lineno"> 2897</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> Reserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, AllocatorType &allocator)<span class="keyword"> const </span>{ value_.Reserve(newCapacity, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02898"></a><span class="lineno"> 2898</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02899"></a><span class="lineno"> 2899</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02900"></a><span class="lineno"> 2900</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02901"></a><span class="lineno"> 2901</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02902"></a><span class="lineno"> 2902</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PushBack(StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02903"></a><span class="lineno"> 2903</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (<span class="keyword">const</span> <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>&)) PushBack(T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.PushBack(value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02904"></a><span class="lineno"> 2904</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a> PopBack()<span class="keyword"> const </span>{ value_.PopBack(); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02905"></a><span class="lineno"> 2905</span>  ValueIterator Erase(ConstValueIterator pos)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Erase(pos); }</div> +<div class="line"><a name="l02906"></a><span class="lineno"> 2906</span>  ValueIterator Erase(ConstValueIterator first, ConstValueIterator last)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Erase(first, last); }</div> +<div class="line"><a name="l02907"></a><span class="lineno"> 2907</span>  </div> +<div class="line"><a name="l02908"></a><span class="lineno"> 2908</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> +<div class="line"><a name="l02909"></a><span class="lineno"> 2909</span>  ValueIterator begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.Begin(); }</div> +<div class="line"><a name="l02910"></a><span class="lineno"> 2910</span>  ValueIterator end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.End(); }</div> +<div class="line"><a name="l02911"></a><span class="lineno"> 2911</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02912"></a><span class="lineno"> 2912</span>  </div> +<div class="line"><a name="l02913"></a><span class="lineno"> 2913</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l02914"></a><span class="lineno"> 2914</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>();</div> +<div class="line"><a name="l02915"></a><span class="lineno"> 2915</span>  <a class="code" href="classrapidjson_1_1_generic_array.html">GenericArray</a>(ValueType& value) : value_(value) {}</div> +<div class="line"><a name="l02916"></a><span class="lineno"> 2916</span>  ValueType& value_;</div> +<div class="line"><a name="l02917"></a><span class="lineno"> 2917</span> };</div> +<div class="line"><a name="l02918"></a><span class="lineno"> 2918</span> <span class="comment"></span> </div> +<div class="line"><a name="l02919"></a><span class="lineno"> 2919</span> <span class="comment">//! Helper class for accessing Value of object type.</span></div> +<div class="line"><a name="l02920"></a><span class="lineno"> 2920</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l02921"></a><span class="lineno"> 2921</span> <span class="comment"> Instance of this helper class is obtained by \c GenericValue::GetObject().</span></div> +<div class="line"><a name="l02922"></a><span class="lineno"> 2922</span> <span class="comment"> In addition to all APIs for array type, it provides range-based for loop if \c RAPIDJSON_HAS_CXX11_RANGE_FOR=1.</span></div> +<div class="line"><a name="l02923"></a><span class="lineno"> 2923</span> <span class="comment">*/</span></div> +<div class="line"><a name="l02924"></a><span class="lineno"> 2924</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> Const, <span class="keyword">typename</span> ValueT></div> +<div class="line"><a name="l02925"></a><span class="lineno"> 2925</span> <span class="keyword">class </span>GenericObject {</div> +<div class="line"><a name="l02926"></a><span class="lineno"> 2926</span> <span class="keyword">public</span>:</div> +<div class="line"><a name="l02927"></a><span class="lineno"> 2927</span>  <span class="keyword">typedef</span> GenericObject<true, ValueT> ConstObject;</div> +<div class="line"><a name="l02928"></a><span class="lineno"> 2928</span>  <span class="keyword">typedef</span> GenericObject<false, ValueT> Object;</div> +<div class="line"><a name="l02929"></a><span class="lineno"> 2929</span>  <span class="keyword">typedef</span> ValueT PlainType;</div> +<div class="line"><a name="l02930"></a><span class="lineno"> 2930</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">internal::MaybeAddConst<Const,PlainType>::Type</a> ValueType;</div> +<div class="line"><a name="l02931"></a><span class="lineno"> 2931</span>  <span class="keyword">typedef</span> GenericMemberIterator<Const, typename ValueT::EncodingType, typename ValueT::AllocatorType> MemberIterator; <span class="comment">// This may be const or non-const iterator</span></div> +<div class="line"><a name="l02932"></a><span class="lineno"> 2932</span>  <span class="keyword">typedef</span> GenericMemberIterator<true, typename ValueT::EncodingType, typename ValueT::AllocatorType> ConstMemberIterator;</div> +<div class="line"><a name="l02933"></a><span class="lineno"> 2933</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::AllocatorType AllocatorType;</div> +<div class="line"><a name="l02934"></a><span class="lineno"> 2934</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::StringRefType StringRefType;</div> +<div class="line"><a name="l02935"></a><span class="lineno"> 2935</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::EncodingType EncodingType;</div> +<div class="line"><a name="l02936"></a><span class="lineno"> 2936</span>  <span class="keyword">typedef</span> <span class="keyword">typename</span> ValueType::Ch Ch;</div> +<div class="line"><a name="l02937"></a><span class="lineno"> 2937</span>  </div> +<div class="line"><a name="l02938"></a><span class="lineno"> 2938</span>  <span class="keyword">template</span> <<span class="keyword">typename</span>, <span class="keyword">typename</span>></div> +<div class="line"><a name="l02939"></a><span class="lineno"> 2939</span>  <span class="keyword">friend</span> <span class="keyword">class </span>GenericValue;</div> +<div class="line"><a name="l02940"></a><span class="lineno"> 2940</span>  </div> +<div class="line"><a name="l02941"></a><span class="lineno"> 2941</span>  GenericObject(<span class="keyword">const</span> GenericObject& rhs) : value_(rhs.value_) {}</div> +<div class="line"><a name="l02942"></a><span class="lineno"> 2942</span>  GenericObject& operator=(<span class="keyword">const</span> GenericObject& rhs) { value_ = rhs.value_; <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02943"></a><span class="lineno"> 2943</span>  ~GenericObject() {}</div> +<div class="line"><a name="l02944"></a><span class="lineno"> 2944</span>  </div> +<div class="line"><a name="l02945"></a><span class="lineno"> 2945</span>  <span class="keyword">operator</span> ValueType&() <span class="keyword">const</span> { <span class="keywordflow">return</span> value_; }</div> +<div class="line"><a name="l02946"></a><span class="lineno"> 2946</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberCount(); }</div> +<div class="line"><a name="l02947"></a><span class="lineno"> 2947</span>  <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> MemberCapacity()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberCapacity(); }</div> +<div class="line"><a name="l02948"></a><span class="lineno"> 2948</span>  <span class="keywordtype">bool</span> ObjectEmpty()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.ObjectEmpty(); }</div> +<div class="line"><a name="l02949"></a><span class="lineno"> 2949</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> ValueType& operator[](T* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> +<div class="line"><a name="l02950"></a><span class="lineno"> 2950</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> ValueType& operator[](<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> +<div class="line"><a name="l02951"></a><span class="lineno"> 2951</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02952"></a><span class="lineno"> 2952</span>  ValueType& operator[](<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_[name]; }</div> +<div class="line"><a name="l02953"></a><span class="lineno"> 2953</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02954"></a><span class="lineno"> 2954</span>  MemberIterator MemberBegin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberBegin(); }</div> +<div class="line"><a name="l02955"></a><span class="lineno"> 2955</span>  MemberIterator MemberEnd()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberEnd(); }</div> +<div class="line"><a name="l02956"></a><span class="lineno"> 2956</span>  GenericObject MemberReserve(<a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> newCapacity, AllocatorType &allocator)<span class="keyword"> const </span>{ value_.MemberReserve(newCapacity, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02957"></a><span class="lineno"> 2957</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> +<div class="line"><a name="l02958"></a><span class="lineno"> 2958</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02959"></a><span class="lineno"> 2959</span>  <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> +<div class="line"><a name="l02960"></a><span class="lineno"> 2960</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02961"></a><span class="lineno"> 2961</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> HasMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.HasMember(name); }</div> +<div class="line"><a name="l02962"></a><span class="lineno"> 2962</span>  MemberIterator FindMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> +<div class="line"><a name="l02963"></a><span class="lineno"> 2963</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> MemberIterator FindMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> +<div class="line"><a name="l02964"></a><span class="lineno"> 2964</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02965"></a><span class="lineno"> 2965</span>  MemberIterator FindMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.FindMember(name); }</div> +<div class="line"><a name="l02966"></a><span class="lineno"> 2966</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02967"></a><span class="lineno"> 2967</span>  GenericObject AddMember(ValueType& name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02968"></a><span class="lineno"> 2968</span>  GenericObject AddMember(ValueType& name, StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02969"></a><span class="lineno"> 2969</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02970"></a><span class="lineno"> 2970</span>  GenericObject AddMember(ValueType& name, std::basic_string<Ch>& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02971"></a><span class="lineno"> 2971</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02972"></a><span class="lineno"> 2972</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (ValueType&)) AddMember(ValueType& name, T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02973"></a><span class="lineno"> 2973</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02974"></a><span class="lineno"> 2974</span>  GenericObject AddMember(ValueType&& name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02975"></a><span class="lineno"> 2975</span>  GenericObject AddMember(ValueType&& name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02976"></a><span class="lineno"> 2976</span>  GenericObject AddMember(ValueType& name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02977"></a><span class="lineno"> 2977</span>  GenericObject AddMember(StringRefType name, ValueType&& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02978"></a><span class="lineno"> 2978</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l02979"></a><span class="lineno"> 2979</span>  GenericObject AddMember(StringRefType name, ValueType& value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02980"></a><span class="lineno"> 2980</span>  GenericObject AddMember(StringRefType name, StringRefType value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02981"></a><span class="lineno"> 2981</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> T> RAPIDJSON_DISABLEIF_RETURN((internal::OrExpr<internal::IsPointer<T>, internal::IsGenericValue<T> >), (GenericObject)) AddMember(StringRefType name, T value, AllocatorType& allocator)<span class="keyword"> const </span>{ value_.AddMember(name, value, allocator); <span class="keywordflow">return</span> *<span class="keyword">this</span>; }</div> +<div class="line"><a name="l02982"></a><span class="lineno"> 2982</span>  <span class="keywordtype">void</span> RemoveAllMembers() { value_.RemoveAllMembers(); }</div> +<div class="line"><a name="l02983"></a><span class="lineno"> 2983</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> +<div class="line"><a name="l02984"></a><span class="lineno"> 2984</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02985"></a><span class="lineno"> 2985</span>  <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> +<div class="line"><a name="l02986"></a><span class="lineno"> 2986</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02987"></a><span class="lineno"> 2987</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> RemoveMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(name); }</div> +<div class="line"><a name="l02988"></a><span class="lineno"> 2988</span>  MemberIterator RemoveMember(MemberIterator m)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.RemoveMember(m); }</div> +<div class="line"><a name="l02989"></a><span class="lineno"> 2989</span>  MemberIterator EraseMember(ConstMemberIterator pos)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(pos); }</div> +<div class="line"><a name="l02990"></a><span class="lineno"> 2990</span>  MemberIterator EraseMember(ConstMemberIterator first, ConstMemberIterator last)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(first, last); }</div> +<div class="line"><a name="l02991"></a><span class="lineno"> 2991</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> Ch* name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(name); }</div> +<div class="line"><a name="l02992"></a><span class="lineno"> 2992</span> <span class="preprocessor">#if RAPIDJSON_HAS_STDSTRING</span></div> +<div class="line"><a name="l02993"></a><span class="lineno"> 2993</span>  <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> std::basic_string<Ch>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> EraseMember(ValueType(<a class="code" href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">StringRef</a>(name))); }</div> +<div class="line"><a name="l02994"></a><span class="lineno"> 2994</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l02995"></a><span class="lineno"> 2995</span>  <span class="keyword">template</span> <<span class="keyword">typename</span> SourceAllocator> <span class="keywordtype">bool</span> EraseMember(<span class="keyword">const</span> GenericValue<EncodingType, SourceAllocator>& name)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.EraseMember(name); }</div> +<div class="line"><a name="l02996"></a><span class="lineno"> 2996</span>  </div> +<div class="line"><a name="l02997"></a><span class="lineno"> 2997</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> +<div class="line"><a name="l02998"></a><span class="lineno"> 2998</span>  MemberIterator begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberBegin(); }</div> +<div class="line"><a name="l02999"></a><span class="lineno"> 2999</span>  MemberIterator end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.MemberEnd(); }</div> +<div class="line"><a name="l03000"></a><span class="lineno"> 3000</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l03001"></a><span class="lineno"> 3001</span>  </div> +<div class="line"><a name="l03002"></a><span class="lineno"> 3002</span> <span class="keyword">private</span>:</div> +<div class="line"><a name="l03003"></a><span class="lineno"> 3003</span>  GenericObject();</div> +<div class="line"><a name="l03004"></a><span class="lineno"> 3004</span>  GenericObject(ValueType& value) : value_(value) {}</div> +<div class="line"><a name="l03005"></a><span class="lineno"> 3005</span>  ValueType& value_;</div> +<div class="line"><a name="l03006"></a><span class="lineno"> 3006</span> };</div> +<div class="line"><a name="l03007"></a><span class="lineno"> 3007</span>  </div> +<div class="line"><a name="l03008"></a><span class="lineno"> 3008</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l03009"></a><span class="lineno"> 3009</span> RAPIDJSON_DIAG_POP</div> +<div class="line"><a name="l03010"></a><span class="lineno"> 3010</span>  </div> +<div class="line"><a name="l03011"></a><span class="lineno"> 3011</span> <span class="preprocessor">#endif // RAPIDJSON_DOCUMENT_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_afe94e5e86a5b1a3fb605a9f8422f048b"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(float f) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for float value.</div><div class="ttdef"><b>Definition:</b> document.h:835</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_afe94e5e86a5b1a3fb605a9f8422f048b"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(float f) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for float value.</div><div class="ttdef"><b>Definition:</b> document.h:825</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_structrapidjson_1_1_parse_result"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result">rapidjson::ParseResult</a></div><div class="ttdoc">Result of parsing (wraps ParseErrorCode)</div><div class="ttdef"><b>Definition:</b> error.h:106</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue</a></div><div class="ttdoc">Represents a JSON value. Use Value for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> document.h:57</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_abfad2c34a97f82178cbf9464e958e2c2"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2">rapidjson::GenericMemberIterator::operator-</a></div><div class="ttdeci">DifferenceType operator-(ConstIterator that) const</div><div class="ttdoc">Distance</div><div class="ttdef"><b>Definition:</b> document.h:273</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_string_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_string.html">rapidjson::GenericValue::String</a></div><div class="ttdef"><b>Definition:</b> document.h:2045</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_string_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_string.html">rapidjson::GenericValue::String</a></div><div class="ttdef"><b>Definition:</b> document.h:2011</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_array_html"><div class="ttname"><a href="classrapidjson_1_1_generic_array.html">rapidjson::GenericArray</a></div><div class="ttdoc">Helper class for accessing Value of array type.</div><div class="ttdef"><b>Definition:</b> document.h:642</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_ac920af483c9e31a6746c22acf0dffc50"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#ac920af483c9e31a6746c22acf0dffc50">rapidjson::GenericMemberIterator::GenericMemberIterator</a></div><div class="ttdeci">GenericMemberIterator()</div><div class="ttdoc">Default constructor (singular value)</div><div class="ttdef"><b>Definition:</b> document.h:213</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a559eb9cea54364a35518b02f6d74f379"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">rapidjson::GenericValue::StringRefType</a></div><div class="ttdeci">GenericStringRef< Ch > StringRefType</div><div class="ttdoc">Reference to a constant string</div><div class="ttdef"><b>Definition:</b> document.h:666</div></div> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ae8bcedd951f50b69786aaaa1828e9fac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">rapidjson::GenericValue::operator=</a></div><div class="ttdeci">GenericValue & operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment with move semantics.</div><div class="ttdef"><b>Definition:</b> document.h:917</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ae8bcedd951f50b69786aaaa1828e9fac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac">rapidjson::GenericValue::operator=</a></div><div class="ttdeci">GenericValue & operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment with move semantics.</div><div class="ttdef"><b>Definition:</b> document.h:912</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a06ce0e14ec83b53c83e1b1699b53a25e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e">rapidjson::GenericValue::ValueIterator</a></div><div class="ttdeci">GenericValue * ValueIterator</div><div class="ttdoc">Value iterator for iterating in array.</div><div class="ttdef"><b>Definition:</b> document.h:669</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_a37091c3dd8470486ef5188f3c1108653"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#a37091c3dd8470486ef5188f3c1108653">rapidjson::GenericMemberIterator::Iterator</a></div><div class="ttdeci">GenericMemberIterator Iterator</div><div class="ttdoc">Iterator type itself</div><div class="ttdef"><b>Definition:</b> document.h:187</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_insitu_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_insitu_string_stream.html">rapidjson::GenericInsituStringStream</a></div><div class="ttdoc">A read-write string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:52</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_acf96a3c7fd61486d049c701b1fe5d414"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2377</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a4c85243a28c9dcf2d1357da00fcaa773"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773">rapidjson::GenericDocument::AllocatorType</a></div><div class="ttdeci">Allocator AllocatorType</div><div class="ttdoc">Allocator type from template parameter.</div><div class="ttdef"><b>Definition:</b> document.h:2217</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_acf96a3c7fd61486d049c701b1fe5d414"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2644</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a4c85243a28c9dcf2d1357da00fcaa773"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773">rapidjson::GenericDocument::AllocatorType</a></div><div class="ttdeci">Allocator AllocatorType</div><div class="ttdoc">Allocator type from template parameter.</div><div class="ttdef"><b>Definition:</b> document.h:2477</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_abe27838f8dc71fdb38028ef27ae0b4f2"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2">rapidjson::GenericMemberIterator::Reference</a></div><div class="ttdeci">reference Reference</div><div class="ttdoc">Reference to (const) GenericMember</div><div class="ttdef"><b>Definition:</b> document.h:205</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a1f125e735577aae64c0306345de45563"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for uint64_t value.</div><div class="ttdef"><b>Definition:</b> document.h:820</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a893da1069660536fd3943a0149206a6e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Object o) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for Object.</div><div class="ttdef"><b>Definition:</b> document.h:873</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_af061c039a990c2970dc31e5626149367"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2400</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a1f125e735577aae64c0306345de45563"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for uint64_t value.</div><div class="ttdef"><b>Definition:</b> document.h:810</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a893da1069660536fd3943a0149206a6e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Object o) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for Object.</div><div class="ttdef"><b>Definition:</b> document.h:863</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_af061c039a990c2970dc31e5626149367"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2667</div></div> <div class="ttc" id="aclassrapidjson_1_1_encoded_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_encoded_input_stream.html">rapidjson::EncodedInputStream</a></div><div class="ttdoc">Input byte stream wrapper with a statically bound encoding.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:39</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_aa6b9fd9f6aa49405a574c362ba9af6b5"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5">rapidjson::GenericStringRef::StringRef</a></div><div class="ttdeci">GenericStringRef< CharType > StringRef(const CharType *str)</div><div class="ttdoc">Mark a character pointer as constant string</div><div class="ttdef"><b>Definition:</b> document.h:445</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ad9553bb9ccbfd19547c473a95405a8b2"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, SizeType length, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:844</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a852788b35257762cd8d6c4bf5c5d77bc"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const std::basic_string< Ch > &s, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string from a string object (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:853</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ad9553bb9ccbfd19547c473a95405a8b2"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, SizeType length, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:834</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a852788b35257762cd8d6c4bf5c5d77bc"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const std::basic_string< Ch > &s, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string from a string object (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:843</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_html_ae820eaa74b415a9073f3f3855f6c6607"><div class="ttname"><a href="classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607">rapidjson::GenericMember::name</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > name</div><div class="ttdoc">name of member (must be a string)</div><div class="ttdef"><b>Definition:</b> document.h:113</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a82b27e7b228eb46a23f99720063ab4fb"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">rapidjson::GenericDocument::GenericDocument</a></div><div class="ttdeci">GenericDocument(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</div><div class="ttdoc">Constructor</div><div class="ttdef"><b>Definition:</b> document.h:2239</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a41bbec044c421e870a9d355075d741bc"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">rapidjson::GenericDocument::ValueType</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > ValueType</div><div class="ttdoc">Value type of the document.</div><div class="ttdef"><b>Definition:</b> document.h:2216</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a65bfc3073fa80ee5eba8e985abe2f941"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for constant string (i.e. do not make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:841</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a82b27e7b228eb46a23f99720063ab4fb"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb">rapidjson::GenericDocument::GenericDocument</a></div><div class="ttdeci">GenericDocument(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</div><div class="ttdoc">Constructor</div><div class="ttdef"><b>Definition:</b> document.h:2499</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a41bbec044c421e870a9d355075d741bc"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc">rapidjson::GenericDocument::ValueType</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > ValueType</div><div class="ttdoc">Value type of the document.</div><div class="ttdef"><b>Definition:</b> document.h:2476</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a65bfc3073fa80ee5eba8e985abe2f941"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for constant string (i.e. do not make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:831</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html">rapidjson::GenericMemberIterator</a></div><div class="ttdoc">(Constant) member iterator for a JSON object value</div><div class="ttdef"><b>Definition:</b> document.h:177</div></div> <div class="ttc" id="anamespacerapidjson_html_af94951529a5d51e8c4e6e770bb707c1f"><div class="ttname"><a href="namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f">rapidjson::StringRef</a></div><div class="ttdeci">GenericStringRef< CharType > StringRef(const std::basic_string< CharType > &str)</div><div class="ttdoc">Mark a string object as constant string</div><div class="ttdef"><b>Definition:</b> document.h:483</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ab94c280c079a6837a24951cb4d8f337b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">rapidjson::GenericDocument::GetParseError</a></div><div class="ttdeci">ParseErrorCode GetParseError() const</div><div class="ttdoc">Get the ParseErrorCode of last parsing.</div><div class="ttdef"><b>Definition:</b> document.h:2480</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ab031375318d133f83a114314b75703de"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2432</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ab94c280c079a6837a24951cb4d8f337b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b">rapidjson::GenericDocument::GetParseError</a></div><div class="ttdeci">ParseErrorCode GetParseError() const</div><div class="ttdoc">Get the ParseErrorCode of last parsing.</div><div class="ttdef"><b>Definition:</b> document.h:2747</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ab031375318d133f83a114314b75703de"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> document.h:2699</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html">rapidjson::MemoryStream</a></div><div class="ttdoc">Represents an in-memory input byte stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:40</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_adca019775f68f012643781cd2c2515ac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)</div><div class="ttdoc">Explicit copy constructor (with allocator)</div><div class="ttdef"><b>Definition:</b> document.h:733</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a42c35e2f64c288f14b74fec2792500c8"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string</div><div class="ttdef"><b>Definition:</b> document.h:2425</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_array_data_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_array_data.html">rapidjson::GenericValue::ArrayData</a></div><div class="ttdef"><b>Definition:</b> document.h:2100</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a42c35e2f64c288f14b74fec2792500c8"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string</div><div class="ttdef"><b>Definition:</b> document.h:2692</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_array_data_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_array_data.html">rapidjson::GenericValue::ArrayData</a></div><div class="ttdef"><b>Definition:</b> document.h:2066</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_aa9d53504374c7c6bdf46775482c5b107"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107">rapidjson::GenericMemberIterator::Pointer</a></div><div class="ttdeci">pointer Pointer</div><div class="ttdoc">Pointer to (const) GenericMember</div><div class="ttdef"><b>Definition:</b> document.h:203</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_object_data_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_object_data.html">rapidjson::GenericValue::ObjectData</a></div><div class="ttdef"><b>Definition:</b> document.h:2094</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a51e93a4fb57f77a39767acb076bf43c1"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for constant string (i.e. do not make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:838</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_object_data_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_object_data.html">rapidjson::GenericValue::ObjectData</a></div><div class="ttdef"><b>Definition:</b> document.h:2060</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a51e93a4fb57f77a39767acb076bf43c1"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for constant string (i.e. do not make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:828</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html">rapidjson::GenericStringStream</a></div><div class="ttdoc">Read-only string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:47</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a77b0f41557b3c34b57a180698312c4a8"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Array a) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for Array.</div><div class="ttdef"><b>Definition:</b> document.h:862</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a153e5a065ca9660673974f9df203be4b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">rapidjson::GenericDocument::GetStackCapacity</a></div><div class="ttdeci">size_t GetStackCapacity() const</div><div class="ttdoc">Get the capacity of stack in bytes.</div><div class="ttdef"><b>Definition:</b> document.h:2507</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a77b0f41557b3c34b57a180698312c4a8"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Array a) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for Array.</div><div class="ttdef"><b>Definition:</b> document.h:852</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a153e5a065ca9660673974f9df203be4b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b">rapidjson::GenericDocument::GetStackCapacity</a></div><div class="ttdeci">size_t GetStackCapacity() const</div><div class="ttdoc">Get the capacity of stack in bytes.</div><div class="ttdef"><b>Definition:</b> document.h:2774</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_aa30ffef74b3f4978b403024d81b484e4"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#aa30ffef74b3f4978b403024d81b484e4">rapidjson::GenericMemberIterator::GenericMemberIterator</a></div><div class="ttdeci">GenericMemberIterator(const NonConstIterator &it)</div><div class="ttdoc">Iterator conversions to more const</div><div class="ttdef"><b>Definition:</b> document.h:231</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2348</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2615</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7d3acf640886b1f2552dc8c4cd6dea60"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">rapidjson::ParseErrorCode</a></div><div class="ttdeci">ParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> error.h:64</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a00efe429e27f95dca17b19519b3cea9e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">rapidjson::GenericValue::RawAssign</a></div><div class="ttdeci">void RawAssign(GenericValue &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment without calling destructor</div><div class="ttdef"><b>Definition:</b> document.h:2173</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_abf1cbab989b856f9d260787b2575750b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">rapidjson::GenericDocument::Swap</a></div><div class="ttdeci">GenericDocument & Swap(GenericDocument &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Exchange the contents of this document with those of another.</div><div class="ttdef"><b>Definition:</b> document.h:2295</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a00efe429e27f95dca17b19519b3cea9e"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e">rapidjson::GenericValue::RawAssign</a></div><div class="ttdeci">void RawAssign(GenericValue &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment without calling destructor</div><div class="ttdef"><b>Definition:</b> document.h:2433</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_abf1cbab989b856f9d260787b2575750b"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">rapidjson::GenericDocument::Swap</a></div><div class="ttdeci">GenericDocument & Swap(GenericDocument &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Exchange the contents of this document with those of another.</div><div class="ttdef"><b>Definition:</b> document.h:2562</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_html"><div class="ttname"><a href="classrapidjson_1_1_generic_member.html">rapidjson::GenericMember</a></div><div class="ttdoc">Name-value pair in a JSON object value.</div><div class="ttdef"><b>Definition:</b> document.h:111</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aa52c3016961f25ecd989d82839bce4e5"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">rapidjson::GenericDocument::GenericDocument</a></div><div class="ttdeci">GenericDocument(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</div><div class="ttdoc">Constructor</div><div class="ttdef"><b>Definition:</b> document.h:2226</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aa52c3016961f25ecd989d82839bce4e5"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5">rapidjson::GenericDocument::GenericDocument</a></div><div class="ttdeci">GenericDocument(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)</div><div class="ttdoc">Constructor</div><div class="ttdef"><b>Definition:</b> document.h:2486</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_aca5596987335016c1a7c2a9467baf80b"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b">rapidjson::GenericValue::MemberIterator</a></div><div class="ttdeci">GenericMemberIterator< false, Encoding, Allocator >::Iterator MemberIterator</div><div class="ttdoc">Member iterator for iterating in object.</div><div class="ttdef"><b>Definition:</b> document.h:667</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a83ba61e8a5170c2e172fd60ebc11016f"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:847</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a83ba61e8a5170c2e172fd60ebc11016f"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(const Ch *s, Allocator &allocator)</div><div class="ttdoc">Constructor for copy-string (i.e. do make a copy of string)</div><div class="ttdef"><b>Definition:</b> document.h:837</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_html_a1e6d0170562775c54613e7825955c1e4"><div class="ttname"><a href="classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4">rapidjson::GenericMember::operator=</a></div><div class="ttdeci">GenericMember & operator=(GenericMember &rhs) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment with move semantics.</div><div class="ttdef"><b>Definition:</b> document.h:133</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_abbca9846370d4749cdbb6bab9e44096c"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">rapidjson::GenericValue::SetStringRaw</a></div><div class="ttdeci">void SetStringRaw(StringRefType s, Allocator &allocator)</div><div class="ttdoc">Initialize this value as copy string with initial data, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2156</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_abbca9846370d4749cdbb6bab9e44096c"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c">rapidjson::GenericValue::SetStringRaw</a></div><div class="ttdeci">void SetStringRaw(StringRefType s, Allocator &allocator)</div><div class="ttdoc">Initialize this value as copy string with initial data, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2416</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a6cd2b09795c48d2892bebc0ae350d51f"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f">rapidjson::GenericValue::ConstMemberIterator</a></div><div class="ttdeci">GenericMemberIterator< true, Encoding, Allocator >::Iterator ConstMemberIterator</div><div class="ttdoc">Constant member iterator for iterating in object.</div><div class="ttdef"><b>Definition:</b> document.h:668</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_object_html"><div class="ttname"><a href="classrapidjson_1_1_generic_object.html">rapidjson::GenericObject</a></div><div class="ttdoc">Helper class for accessing Value of object type.</div><div class="ttdef"><b>Definition:</b> document.h:643</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_ae223535ec20edf0c1db44a40b7735111"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">rapidjson::GenericStringRef::length</a></div><div class="ttdeci">const SizeType length</div><div class="ttdoc">length of the string (excluding the trailing NULL terminator)</div><div class="ttdef"><b>Definition:</b> document.h:411</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_short_string_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_short_string.html">rapidjson::GenericValue::ShortString</a></div><div class="ttdef"><b>Definition:</b> document.h:2059</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_short_string_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_short_string.html">rapidjson::GenericValue::ShortString</a></div><div class="ttdef"><b>Definition:</b> document.h:2025</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a0220ddebe2f023fa75b643a50e90e559"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559">rapidjson::GenericValue::Member</a></div><div class="ttdeci">GenericMember< Encoding, Allocator > Member</div><div class="ttdoc">Name-value pair in an object.</div><div class="ttdef"><b>Definition:</b> document.h:662</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a433a64b466c80cadf7d1acaa6f065437"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">rapidjson::GenericValue::~GenericValue</a></div><div class="ttdeci">~GenericValue()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> document.h:881</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_acd4ae9a8dba4498d1d7cce6667529bb8"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for int64_t value.</div><div class="ttdef"><b>Definition:</b> document.h:805</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_number_1_1_u_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">rapidjson::GenericValue::Number::U</a></div><div class="ttdef"><b>Definition:</b> document.h:2084</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a0d63efcc43758ac3aed77e868233369d"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument::swap</a></div><div class="ttdeci">friend void swap(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> document.h:2320</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ad92c6cd025d411258d1f2ad890e2ee3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">rapidjson::GenericDocument::GetAllocator</a></div><div class="ttdeci">Allocator & GetAllocator()</div><div class="ttdoc">Get the allocator of this document.</div><div class="ttdef"><b>Definition:</b> document.h:2501</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a433a64b466c80cadf7d1acaa6f065437"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437">rapidjson::GenericValue::~GenericValue</a></div><div class="ttdeci">~GenericValue()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> document.h:871</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_acd4ae9a8dba4498d1d7cce6667529bb8"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for int64_t value.</div><div class="ttdef"><b>Definition:</b> document.h:795</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_number_1_1_u_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_number_1_1_u.html">rapidjson::GenericValue::Number::U</a></div><div class="ttdef"><b>Definition:</b> document.h:2050</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a0d63efcc43758ac3aed77e868233369d"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument::swap</a></div><div class="ttdeci">friend void swap(GenericDocument &a, GenericDocument &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> document.h:2587</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ad92c6cd025d411258d1f2ad890e2ee3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">rapidjson::GenericDocument::GetAllocator</a></div><div class="ttdeci">Allocator & GetAllocator()</div><div class="ttdoc">Get the allocator of this document.</div><div class="ttdef"><b>Definition:</b> document.h:2768</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> <div class="ttc" id="anamespacerapidjson_html_a080910f74d2f5046e6724280159cf374"><div class="ttname"><a href="namespacerapidjson.html#a080910f74d2f5046e6724280159cf374">rapidjson::Pointer</a></div><div class="ttdeci">GenericPointer< Value, CrtAllocator > Pointer</div><div class="ttdoc">GenericPointer for Value (UTF-8, default allocator).</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader</a></div><div class="ttdoc">SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ad1f8199e65662e0d52a13a1577d4e4a5"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue() RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Default constructor creates a null value.</div><div class="ttdef"><b>Definition:</b> document.h:681</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_a61b9a9ba8a5917d90406532f104605cc"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#a61b9a9ba8a5917d90406532f104605cc">rapidjson::GenericMemberIterator::ConstIterator</a></div><div class="ttdeci">GenericMemberIterator< true, Encoding, Allocator > ConstIterator</div><div class="ttdoc">Constant iterator type</div><div class="ttdef"><b>Definition:</b> document.h:189</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_aecc9d0a6aafe31f4fdf9f6e75e5f089c"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">rapidjson::GenericValue::operator=</a></div><div class="ttdeci">GenericValue & operator=(StringRefType str) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment of constant string reference (no copy)</div><div class="ttdef"><b>Definition:</b> document.h:942</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a1efc6f69fe809557ae00dd322b7f79ac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">rapidjson::GenericValue::SetObjectRaw</a></div><div class="ttdeci">void SetObjectRaw(Member *members, SizeType count, Allocator &allocator)</div><div class="ttdoc">Initialize this value as object with initial data, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2136</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_aecc9d0a6aafe31f4fdf9f6e75e5f089c"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c">rapidjson::GenericValue::operator=</a></div><div class="ttdeci">GenericValue & operator=(StringRefType str) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Assignment of constant string reference (no copy)</div><div class="ttdef"><b>Definition:</b> document.h:937</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a1efc6f69fe809557ae00dd322b7f79ac"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac">rapidjson::GenericValue::SetObjectRaw</a></div><div class="ttdeci">void SetObjectRaw(Member *members, SizeType count, Allocator &allocator)</div><div class="ttdoc">Initialize this value as object with initial data, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2389</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_html_a8ffff2076e62d988a070a136da6ffca6"><div class="ttname"><a href="classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6">rapidjson::GenericMember::value</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > value</div><div class="ttdoc">value of member.</div><div class="ttdef"><b>Definition:</b> document.h:114</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_a1a91868fa388664bb301061e3e24badb"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb">rapidjson::GenericMemberIterator::NonConstIterator</a></div><div class="ttdeci">GenericMemberIterator< false, Encoding, Allocator > NonConstIterator</div><div class="ttdoc">Non-constant iterator type</div><div class="ttdef"><b>Definition:</b> document.h:191</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> <div class="ttc" id="areader_8h_html"><div class="ttname"><a href="reader_8h.html">reader.h</a></div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a8367a827588dd91d02e21ef945bec9f5"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5">rapidjson::GenericDocument::Ch</a></div><div class="ttdeci">Encoding::Ch Ch</div><div class="ttdoc">Character type derived from Encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2215</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_abba0c9ccfd90726f916c36013a2e9e19"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(int i) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for int value.</div><div class="ttdef"><b>Definition:</b> document.h:793</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ab933ad7ff8c9d08f73cebaecb700dbe9"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(bool b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for boolean value.</div><div class="ttdef"><b>Definition:</b> document.h:784</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a8367a827588dd91d02e21ef945bec9f5"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5">rapidjson::GenericDocument::Ch</a></div><div class="ttdeci">Encoding::Ch Ch</div><div class="ttdoc">Character type derived from Encoding.</div><div class="ttdef"><b>Definition:</b> document.h:2475</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_abba0c9ccfd90726f916c36013a2e9e19"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(int i) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for int value.</div><div class="ttdef"><b>Definition:</b> document.h:783</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ab933ad7ff8c9d08f73cebaecb700dbe9"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(bool b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for boolean value.</div><div class="ttdef"><b>Definition:</b> document.h:774</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_adcdbc7fa85a9a41b78966d7e0dcc2ac4"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4">rapidjson::GenericValue::Ch</a></div><div class="ttdeci">Encoding::Ch Ch</div><div class="ttdoc">Character type derived from Encoding.</div><div class="ttdef"><b>Definition:</b> document.h:665</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a63e18887979da500ece6f0bd10d29b64"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">rapidjson::GenericDocument::Populate</a></div><div class="ttdeci">GenericDocument & Populate(Generator &g)</div><div class="ttdoc">Populate this document by a generator which produces SAX events.</div><div class="ttdef"><b>Definition:</b> document.h:2328</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a63e18887979da500ece6f0bd10d29b64"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64">rapidjson::GenericDocument::Populate</a></div><div class="ttdeci">GenericDocument & Populate(Generator &g)</div><div class="ttdoc">Populate this document by a generator which produces SAX events.</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_acd4d5ebac2b610ce647356aa52998002"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#acd4d5ebac2b610ce647356aa52998002">rapidjson::GenericStringRef::GenericStringRef</a></div><div class="ttdeci">GenericStringRef(const CharType(&str)[N]) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Create string reference from const character array</div><div class="ttdef"><b>Definition:</b> document.h:366</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7ba626bf84eb45a9bca0b7723bf47f3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string</div><div class="ttdef"><b>Definition:</b> document.h:2391</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7ba626bf84eb45a9bca0b7723bf47f3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string</div><div class="ttdef"><b>Definition:</b> document.h:2658</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga10ba0ee06d0ac2803d0f2290d46b19f7"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY</a></div><div class="ttdeci">#define RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY</div><div class="ttdoc">User defined kDefaultArrayCapacity value.</div><div class="ttdef"><b>Definition:</b> document.h:101</div></div> -<div class="ttc" id="aunionrapidjson_1_1_generic_value_1_1_number_html"><div class="ttname"><a href="unionrapidjson_1_1_generic_value_1_1_number.html">rapidjson::GenericValue::Number</a></div><div class="ttdef"><b>Definition:</b> document.h:2069</div></div> +<div class="ttc" id="aunionrapidjson_1_1_generic_value_1_1_number_html"><div class="ttname"><a href="unionrapidjson_1_1_generic_value_1_1_number.html">rapidjson::GenericValue::Number</a></div><div class="ttdef"><b>Definition:</b> document.h:2035</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a05906384808645a2e798d29a9b2d441d"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d">rapidjson::GenericValue::EncodingType</a></div><div class="ttdeci">Encoding EncodingType</div><div class="ttdoc">Encoding type from template parameter.</div><div class="ttdef"><b>Definition:</b> document.h:663</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html">rapidjson::GenericStringRef</a></div><div class="ttdoc">Reference to a constant string (not taking a copy)</div><div class="ttdef"><b>Definition:</b> document.h:337</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a5d47340c96346c5028fee4c9068d783d"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a5d47340c96346c5028fee4c9068d783d">rapidjson::GenericValue::AllocatorType</a></div><div class="ttdeci">Allocator AllocatorType</div><div class="ttdoc">Allocator type from template parameter.</div><div class="ttdef"><b>Definition:</b> document.h:664</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">rapidjson::kParseInsituFlag</a></div><div class="ttdoc">In-situ(destructive) parsing.</div><div class="ttdef"><b>Definition:</b> reader.h:148</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a></div><div class="ttdoc">Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_a001276ee57cbcbd3c14449045c71e994"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994">rapidjson::GenericStringRef::s</a></div><div class="ttdeci">const Ch *const s</div><div class="ttdoc">plain CharType pointer</div><div class="ttdef"><b>Definition:</b> document.h:410</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ae4ee7d86b8c906c83dbe15e57eb6ac6a"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream</div><div class="ttdef"><b>Definition:</b> document.h:2367</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga2b2a0d9143aa4fb31205a85b34c43952"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_NOEXCEPT_ASSERT(x)</div><div class="ttdoc">Assertion (in non-throwing contexts).</div><div class="ttdef"><b>Definition:</b> rapidjson.h:665</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a248bab30562a4197cea0474d7f0ce835"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">rapidjson::GenericValue::SetStringRaw</a></div><div class="ttdeci">void SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Initialize this value as constant string, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2149</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_af532179ca5ad5434a5e8af63f5da4c5f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">rapidjson::GenericDocument::GetErrorOffset</a></div><div class="ttdeci">size_t GetErrorOffset() const</div><div class="ttdoc">Get the position of last parsing error in input, 0 otherwise.</div><div class="ttdef"><b>Definition:</b> document.h:2483</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ae4ee7d86b8c906c83dbe15e57eb6ac6a"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream</div><div class="ttdef"><b>Definition:</b> document.h:2634</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga2b2a0d9143aa4fb31205a85b34c43952"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952">RAPIDJSON_NOEXCEPT_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_NOEXCEPT_ASSERT(x)</div><div class="ttdoc">Assertion (in non-throwing contexts).</div><div class="ttdef"><b>Definition:</b> rapidjson.h:687</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a248bab30562a4197cea0474d7f0ce835"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835">rapidjson::GenericValue::SetStringRaw</a></div><div class="ttdeci">void SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Initialize this value as constant string, without calling destructor.</div><div class="ttdef"><b>Definition:</b> document.h:2409</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga583915242504c7fdb36e826f02f76242"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242">RAPIDJSON_ALIGN</a></div><div class="ttdeci">#define RAPIDJSON_ALIGN(x)</div><div class="ttdoc">Data alignment of the machine.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:307</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_af532179ca5ad5434a5e8af63f5da4c5f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f">rapidjson::GenericDocument::GetErrorOffset</a></div><div class="ttdeci">size_t GetErrorOffset() const</div><div class="ttdoc">Get the position of last parsing error in input, 0 otherwise.</div><div class="ttdef"><b>Definition:</b> document.h:2750</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_ad9eb120a58cee500ff3bd5706779c4e4"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#ad9eb120a58cee500ff3bd5706779c4e4">rapidjson::GenericStringRef::GenericStringRef</a></div><div class="ttdeci">GenericStringRef(const CharType *str, SizeType len)</div><div class="ttdoc">Create constant string reference from pointer and length</div><div class="ttdef"><b>Definition:</b> document.h:402</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:494</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_a29cf407c6aa2313f13dff78d6ce02687"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#a29cf407c6aa2313f13dff78d6ce02687">rapidjson::GenericStringRef::GenericStringRef</a></div><div class="ttdeci">GenericStringRef(const CharType *str)</div><div class="ttdoc">Explicitly create string reference from const character pointer</div><div class="ttdef"><b>Definition:</b> document.h:390</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_ad2935191ab28c2c2e472b739a9d58202"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202">rapidjson::GenericValue::ValueType</a></div><div class="ttdeci">GenericValue< Encoding, Allocator > ValueType</div><div class="ttdoc">Value type of itself.</div><div class="ttdef"><b>Definition:</b> document.h:671</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_number_1_1_i_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">rapidjson::GenericValue::Number::I</a></div><div class="ttdef"><b>Definition:</b> document.h:2080</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7607bb42b51547e44bfd4cab35d8f20e"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">rapidjson::GenericDocument::HasParseError</a></div><div class="ttdeci">bool HasParseError() const</div><div class="ttdoc">Whether a parse error has occurred in the last parsing.</div><div class="ttdef"><b>Definition:</b> document.h:2477</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a4a8060a42b7953a2981ad892180ca5a6"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(unsigned u) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for unsigned value.</div><div class="ttdef"><b>Definition:</b> document.h:799</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_number_1_1_i_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_number_1_1_i.html">rapidjson::GenericValue::Number::I</a></div><div class="ttdef"><b>Definition:</b> document.h:2046</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga87dc65109882910388121e1dba15038b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">RAPIDJSON_USE_MEMBERSMAP</a></div><div class="ttdeci">#define RAPIDJSON_USE_MEMBERSMAP</div><div class="ttdoc">Enable RapidJSON support for object members handling in a std::multimap</div><div class="ttdef"><b>Definition:</b> rapidjson.h:180</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7607bb42b51547e44bfd4cab35d8f20e"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e">rapidjson::GenericDocument::HasParseError</a></div><div class="ttdeci">bool HasParseError() const</div><div class="ttdoc">Whether a parse error has occurred in the last parsing.</div><div class="ttdef"><b>Definition:</b> document.h:2744</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a4a8060a42b7953a2981ad892180ca5a6"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(unsigned u) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for unsigned value.</div><div class="ttdef"><b>Definition:</b> document.h:789</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a45b0ddd23742e045ffe286f9ead712b7"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7">rapidjson::GenericValue::ConstValueIterator</a></div><div class="ttdeci">const typedef GenericValue * ConstValueIterator</div><div class="ttdoc">Constant value iterator for iterating in array.</div><div class="ttdef"><b>Definition:</b> document.h:670</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_aa2a8eccae3d7eb14c30bc21afb7d6fba"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#aa2a8eccae3d7eb14c30bc21afb7d6fba">rapidjson::GenericStringRef::Ch</a></div><div class="ttdeci">CharType Ch</div><div class="ttdoc">character type of the string</div><div class="ttdef"><b>Definition:</b> document.h:338</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a646b6d4d3d98799a0926d96ffa127a58"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(Type type) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor with JSON value type.</div><div class="ttdef"><b>Definition:</b> document.h:711</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html_aff2739a9265639a7a4be8c3e6216b31a"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html#aff2739a9265639a7a4be8c3e6216b31a">rapidjson::GenericMemberIterator::DifferenceType</a></div><div class="ttdeci">difference_type DifferenceType</div><div class="ttdoc">Signed integer type (e.g. ptrdiff_t)</div><div class="ttdef"><b>Definition:</b> document.h:207</div></div> <div class="ttc" id="aclassrapidjson_1_1_encoding_html"><div class="ttname"><a href="classrapidjson_1_1_encoding.html">Encoding</a></div><div class="ttdoc">Concept for encoding of Unicode characters.</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_string_html_ad152cf5021ffbcaa8dcafea401ac5260"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260">rapidjson::GenericValue::String::hashcode</a></div><div class="ttdeci">SizeType hashcode</div><div class="ttdoc">reserved</div><div class="ttdef"><b>Definition:</b> document.h:2047</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a71b9e2ec1f7bf9e2f034126ca7b4945a"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(double d) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for double value.</div><div class="ttdef"><b>Definition:</b> document.h:832</div></div> -<div class="ttc" id="aunionrapidjson_1_1_generic_value_1_1_data_html"><div class="ttname"><a href="unionrapidjson_1_1_generic_value_1_1_data.html">rapidjson::GenericValue::Data</a></div><div class="ttdef"><b>Definition:</b> document.h:2106</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> -<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_flag_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_flag.html">rapidjson::GenericValue::Flag</a></div><div class="ttdef"><b>Definition:</b> document.h:2034</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_string_html_ad152cf5021ffbcaa8dcafea401ac5260"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260">rapidjson::GenericValue::String::hashcode</a></div><div class="ttdeci">SizeType hashcode</div><div class="ttdoc">reserved</div><div class="ttdef"><b>Definition:</b> document.h:2013</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_value_html_a71b9e2ec1f7bf9e2f034126ca7b4945a"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a">rapidjson::GenericValue::GenericValue</a></div><div class="ttdeci">GenericValue(double d) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">Constructor for double value.</div><div class="ttdef"><b>Definition:</b> document.h:822</div></div> +<div class="ttc" id="aunionrapidjson_1_1_generic_value_1_1_data_html"><div class="ttname"><a href="unionrapidjson_1_1_generic_value_1_1_data.html">rapidjson::GenericValue::Data</a></div><div class="ttdef"><b>Definition:</b> document.h:2072</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> +<div class="ttc" id="astructrapidjson_1_1_generic_value_1_1_flag_html"><div class="ttname"><a href="structrapidjson_1_1_generic_value_1_1_flag.html">rapidjson::GenericValue::Flag</a></div><div class="ttdef"><b>Definition:</b> document.h:2000</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5c88aa612939b592d15d3fc4bdf54272"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272">RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY</a></div><div class="ttdeci">#define RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY</div><div class="ttdoc">User defined kDefaultObjectCapacity value.</div><div class="ttdef"><b>Definition:</b> document.h:90</div></div> <div class="ttc" id="aclassrapidjson_1_1_handler_html"><div class="ttname"><a href="classrapidjson_1_1_handler.html">Handler</a></div><div class="ttdoc">Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...</div></div> -<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:458</div></div> +<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/dtoa_8h_source.html b/zh-cn/dtoa_8h_source.html index 6e60982c..2a3b2429 100644 --- a/zh-cn/dtoa_8h_source.html +++ b/zh-cn/dtoa_8h_source.html @@ -335,7 +335,7 @@ $(document).ready(function(){initNavTree('dtoa_8h_source.html','');}); <div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor">#endif // RAPIDJSON_DTOA_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/encodedstream_8h_source.html b/zh-cn/encodedstream_8h_source.html index 5d16da5b..d3120037 100644 --- a/zh-cn/encodedstream_8h_source.html +++ b/zh-cn/encodedstream_8h_source.html @@ -393,7 +393,7 @@ $(document).ready(function(){initNavTree('encodedstream_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_encoded_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_encoded_input_stream.html">rapidjson::EncodedInputStream</a></div><div class="ttdoc">Input byte stream wrapper with a statically bound encoding.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:39</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html">rapidjson::MemoryStream</a></div><div class="ttdoc">Represents an in-memory input byte stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:40</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4">rapidjson::kUTF32LE</a></div><div class="ttdoc">UTF-32 little endian.</div><div class="ttdef"><b>Definition:</b> encodings.h:607</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_input_stream_html_a5c9f041a3b32bf15bc9be888a8731d35"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_input_stream.html#a5c9f041a3b32bf15bc9be888a8731d35">rapidjson::AutoUTFInputStream::AutoUTFInputStream</a></div><div class="ttdeci">AutoUTFInputStream(InputByteStream &is, UTFType type=kUTF8)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:145</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d">rapidjson::kUTF16BE</a></div><div class="ttdoc">UTF-16 big endian.</div><div class="ttdef"><b>Definition:</b> encodings.h:606</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_output_stream_html_a39c828ee4c5b052df7338ec7fda1a17d"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_output_stream.html#a39c828ee4c5b052df7338ec7fda1a17d">rapidjson::AutoUTFOutputStream::AutoUTFOutputStream</a></div><div class="ttdeci">AutoUTFOutputStream(OutputByteStream &os, UTFType type, bool putBOM)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:244</div></div> @@ -404,7 +404,7 @@ $(document).ready(function(){initNavTree('encodedstream_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_output_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_output_stream.html">rapidjson::AutoUTFOutputStream</a></div><div class="ttdoc">Output stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:233</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_input_stream.html">rapidjson::AutoUTFInputStream</a></div><div class="ttdoc">Input stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:135</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f">rapidjson::kUTF32BE</a></div><div class="ttdoc">UTF-32 big endian.</div><div class="ttdef"><b>Definition:</b> encodings.h:608</div></div> -<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:458</div></div> +<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/encodings_8h_source.html b/zh-cn/encodings_8h_source.html index 20043b20..3f7ba309 100644 --- a/zh-cn/encodings_8h_source.html +++ b/zh-cn/encodings_8h_source.html @@ -813,7 +813,7 @@ $(document).ready(function(){initNavTree('encodings_8h_source.html','');}); <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4">rapidjson::kUTF32LE</a></div><div class="ttdoc">UTF-32 little endian.</div><div class="ttdef"><b>Definition:</b> encodings.h:607</div></div> <div class="ttc" id="astructrapidjson_1_1_a_s_c_i_i_html"><div class="ttname"><a href="structrapidjson_1_1_a_s_c_i_i.html">rapidjson::ASCII</a></div><div class="ttdoc">ASCII encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:542</div></div> <div class="ttc" id="astructrapidjson_1_1_transcoder_html"><div class="ttname"><a href="structrapidjson_1_1_transcoder.html">rapidjson::Transcoder</a></div><div class="ttdoc">Encoding conversion.</div><div class="ttdef"><b>Definition:</b> encodings.h:658</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="astructrapidjson_1_1_transcoder_html_a3a1de7069d3cf7f1d4f4e2f96ceb7664"><div class="ttname"><a href="structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664">rapidjson::Transcoder::Transcode</a></div><div class="ttdeci">static RAPIDJSON_FORCEINLINE bool Transcode(InputStream &is, OutputStream &os)</div><div class="ttdoc">Take one Unicode codepoint from source encoding, convert it to target encoding and put it to the outp...</div><div class="ttdef"><b>Definition:</b> encodings.h:661</div></div> <div class="ttc" id="astructrapidjson_1_1_auto_u_t_f_html"><div class="ttname"><a href="structrapidjson_1_1_auto_u_t_f.html">rapidjson::AutoUTF</a></div><div class="ttdoc">Dynamically select encoding according to stream's runtime-specified UTF encoding type.</div><div class="ttdef"><b>Definition:</b> encodings.h:615</div></div> <div class="ttc" id="anamespacerapidjson_html_a0a774dcffe8ae07686f459ae017d2f20"><div class="ttname"><a href="namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20">rapidjson::PutUnsafe</a></div><div class="ttdeci">void PutUnsafe(Stream &stream, typename Stream::Ch c)</div><div class="ttdoc">Write character to a stream, presuming buffer is reserved.</div><div class="ttdef"><b>Definition:</b> stream.h:91</div></div> @@ -829,7 +829,7 @@ $(document).ready(function(){initNavTree('encodings_8h_source.html','');}); <div class="ttc" id="astructrapidjson_1_1_u_t_f16_l_e_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f16_l_e.html">rapidjson::UTF16LE</a></div><div class="ttdoc">UTF-16 little endian encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:342</div></div> <div class="ttc" id="aclassrapidjson_1_1_encoding_html"><div class="ttname"><a href="classrapidjson_1_1_encoding.html">Encoding</a></div><div class="ttdoc">Concept for encoding of Unicode characters.</div></div> <div class="ttc" id="astructrapidjson_1_1_u_t_f16_b_e_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f16_b_e.html">rapidjson::UTF16BE</a></div><div class="ttdoc">UTF-16 big endian encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:375</div></div> -<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:458</div></div> +<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/filereadstream_8h_source.html b/zh-cn/filereadstream_8h_source.html index 13f4cb22..0abe590f 100644 --- a/zh-cn/filereadstream_8h_source.html +++ b/zh-cn/filereadstream_8h_source.html @@ -192,7 +192,7 @@ $(document).ready(function(){initNavTree('filereadstream_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html_a4a5f34875b40d22def206c9a09ecd929"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html#a4a5f34875b40d22def206c9a09ecd929">rapidjson::FileReadStream::Ch</a></div><div class="ttdeci">char Ch</div><div class="ttdoc">Character type (byte).</div><div class="ttdef"><b>Definition:</b> filereadstream.h:36</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html_a72b610ada5d86e8977a2bc1f2f4c0808"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html#a72b610ada5d86e8977a2bc1f2f4c0808">rapidjson::FileReadStream::FileReadStream</a></div><div class="ttdeci">FileReadStream(std::FILE *fp, char *buffer, size_t bufferSize)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> filereadstream.h:44</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/filewritestream_8h_source.html b/zh-cn/filewritestream_8h_source.html index d4ba4e71..4baca7da 100644 --- a/zh-cn/filewritestream_8h_source.html +++ b/zh-cn/filewritestream_8h_source.html @@ -195,7 +195,7 @@ $(document).ready(function(){initNavTree('filewritestream_8h_source.html','');}) </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_file_write_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_write_stream.html">rapidjson::FileWriteStream</a></div><div class="ttdoc">Wrapper of C file stream for output using fwrite().</div><div class="ttdef"><b>Definition:</b> filewritestream.h:32</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_write_stream_html_afc606cc81f6c3709d81bf99b30566330"><div class="ttname"><a href="classrapidjson_1_1_file_write_stream.html#afc606cc81f6c3709d81bf99b30566330">rapidjson::FileWriteStream::Ch</a></div><div class="ttdeci">char Ch</div><div class="ttdoc">Character type. Only support char.</div><div class="ttdef"><b>Definition:</b> filewritestream.h:34</div></div> <div class="ttc" id="anamespacerapidjson_html_a1ac13bac5976fc06587e00fc0bcfb32a"><div class="ttname"><a href="namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a">rapidjson::PutN</a></div><div class="ttdeci">void PutN(FileWriteStream &stream, char c, size_t n)</div><div class="ttdoc">Implement specialized version of PutN() with memset() for better performance.</div><div class="ttdef"><b>Definition:</b> filewritestream.h:94</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/functions.html b/zh-cn/functions.html index d524aac3..c8e5cc44 100644 --- a/zh-cn/functions.html +++ b/zh-cn/functions.html @@ -309,6 +309,9 @@ $(document).ready(function(){initNavTree('functions.html','');}); : <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29">rapidjson::MemoryPoolAllocator< BaseAllocator ></a> , <a class="el" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c">rapidjson::StdAllocator< T, BaseAllocator ></a> </li> +<li>kRefCounted +: <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496">rapidjson::MemoryPoolAllocator< BaseAllocator ></a> +</li> </ul> @@ -497,18 +500,18 @@ $(document).ready(function(){initNavTree('functions.html','');}); <li>StringRefType : <a class="el" href="classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379">rapidjson::GenericValue< Encoding, Allocator ></a> </li> -<li>Swap() -: <a class="el" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a> -</li> <li>swap : <a class="el" href="classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a> </li> <li>Swap() -: <a class="el" href="classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b">rapidjson::GenericPointer< ValueType, Allocator ></a> +: <a class="el" href="classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b">rapidjson::GenericDocument< Encoding, Allocator, StackAllocator ></a> </li> <li>swap : <a class="el" href="classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937">rapidjson::GenericPointer< ValueType, Allocator ></a> </li> +<li>Swap() +: <a class="el" href="classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b">rapidjson::GenericPointer< ValueType, Allocator ></a> +</li> </ul> diff --git a/zh-cn/functions_vars.html b/zh-cn/functions_vars.html index 8dba2062..00d5bb08 100644 --- a/zh-cn/functions_vars.html +++ b/zh-cn/functions_vars.html @@ -113,6 +113,9 @@ $(document).ready(function(){initNavTree('functions_vars.html','');}); : <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29">rapidjson::MemoryPoolAllocator< BaseAllocator ></a> , <a class="el" href="classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c">rapidjson::StdAllocator< T, BaseAllocator ></a> </li> +<li>kRefCounted +: <a class="el" href="classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496">rapidjson::MemoryPoolAllocator< BaseAllocator ></a> +</li> <li>length : <a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600">rapidjson::GenericPointer< ValueType, Allocator >::Token</a> , <a class="el" href="structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111">rapidjson::GenericStringRef< CharType ></a> diff --git a/zh-cn/fwd_8h_source.html b/zh-cn/fwd_8h_source.html index 52f5088a..d6f3e4b6 100644 --- a/zh-cn/fwd_8h_source.html +++ b/zh-cn/fwd_8h_source.html @@ -247,7 +247,7 @@ $(document).ready(function(){initNavTree('fwd_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_i_generic_remote_schema_document_provider_html"><div class="ttname"><a href="classrapidjson_1_1_i_generic_remote_schema_document_provider.html">rapidjson::IGenericRemoteSchemaDocumentProvider</a></div><div class="ttdef"><b>Definition:</b> fwd.h:133</div></div> <div class="ttc" id="arapidjson_8h_html"><div class="ttname"><a href="rapidjson_8h.html">rapidjson.h</a></div><div class="ttdoc">common definitions and configuration</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_member_iterator_html"><div class="ttname"><a href="classrapidjson_1_1_generic_member_iterator.html">rapidjson::GenericMemberIterator</a></div><div class="ttdoc">(Constant) member iterator for a JSON object value</div><div class="ttdef"><b>Definition:</b> document.h:177</div></div> -<div class="ttc" id="aclassrapidjson_1_1_crt_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_crt_allocator.html">rapidjson::CrtAllocator</a></div><div class="ttdoc">C-runtime library allocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:81</div></div> +<div class="ttc" id="aclassrapidjson_1_1_crt_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_crt_allocator.html">rapidjson::CrtAllocator</a></div><div class="ttdoc">C-runtime library allocator.</div><div class="ttdef"><b>Definition:</b> allocators.h:82</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html">rapidjson::MemoryStream</a></div><div class="ttdoc">Represents an in-memory input byte stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:40</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_string_buffer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_string_buffer.html">rapidjson::GenericStringBuffer</a></div><div class="ttdoc">Represents an in-memory output stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:59</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html">rapidjson::GenericStringStream</a></div><div class="ttdoc">Read-only string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:47</div></div> @@ -256,15 +256,15 @@ $(document).ready(function(){initNavTree('fwd_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html">rapidjson::PrettyWriter</a></div><div class="ttdoc">Writer with indentation and spacing.</div><div class="ttdef"><b>Definition:</b> fwd.h:100</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader</a></div><div class="ttdoc">SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html">rapidjson::GenericStringRef</a></div><div class="ttdoc">Reference to a constant string (not taking a copy)</div><div class="ttdef"><b>Definition:</b> document.h:337</div></div> -<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator</a></div><div class="ttdoc">Default memory allocator used by the parser and DOM.</div><div class="ttdef"><b>Definition:</b> allocators.h:128</div></div> +<div class="ttc" id="aclassrapidjson_1_1_memory_pool_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_memory_pool_allocator.html">rapidjson::MemoryPoolAllocator</a></div><div class="ttdoc">Default memory allocator used by the parser and DOM.</div><div class="ttdef"><b>Definition:</b> allocators.h:129</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a></div><div class="ttdoc">Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> <div class="ttc" id="astructrapidjson_1_1_base_reader_handler_html"><div class="ttname"><a href="structrapidjson_1_1_base_reader_handler.html">rapidjson::BaseReaderHandler</a></div><div class="ttdoc">Default implementation of Handler.</div><div class="ttdef"><b>Definition:</b> fwd.h:85</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> <div class="ttc" id="astructrapidjson_1_1_u_t_f8_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f8.html">rapidjson::UTF8</a></div><div class="ttdoc">UTF-8 encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:96</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html">rapidjson::GenericSchemaDocument</a></div><div class="ttdoc">JSON schema document.</div><div class="ttdef"><b>Definition:</b> fwd.h:136</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html">rapidjson::GenericSchemaValidator</a></div><div class="ttdoc">JSON Schema Validator.</div><div class="ttdef"><b>Definition:</b> fwd.h:145</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/globals.html b/zh-cn/globals.html index d34b326c..76d596e6 100644 --- a/zh-cn/globals.html +++ b/zh-cn/globals.html @@ -183,6 +183,9 @@ $(document).ready(function(){initNavTree('globals.html','');}); <li>RAPIDJSON_UNLIKELY : <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">rapidjson.h</a> </li> +<li>RAPIDJSON_USE_MEMBERSMAP +: <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">rapidjson.h</a> +</li> <li>RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY : <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">document.h</a> </li> diff --git a/zh-cn/globals_defs.html b/zh-cn/globals_defs.html index 0dacf55a..3323aeda 100644 --- a/zh-cn/globals_defs.html +++ b/zh-cn/globals_defs.html @@ -183,6 +183,9 @@ $(document).ready(function(){initNavTree('globals_defs.html','');}); <li>RAPIDJSON_UNLIKELY : <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">rapidjson.h</a> </li> +<li>RAPIDJSON_USE_MEMBERSMAP +: <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">rapidjson.h</a> +</li> <li>RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY : <a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7">document.h</a> </li> diff --git a/zh-cn/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html b/zh-cn/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html index 639ee636..a9571925 100644 --- a/zh-cn/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html +++ b/zh-cn/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html @@ -118,6 +118,9 @@ $(document).ready(function(){initNavTree('group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_ <tr class="memitem:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f">RAPIDJSON_HAS_STDSTRING</a></td></tr> <tr class="memdesc:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="mdescLeft"> </td><td class="mdescRight">Enable RapidJSON support for <code>std::string</code> <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f">更多...</a><br /></td></tr> <tr class="separator:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga87dc65109882910388121e1dba15038b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">RAPIDJSON_USE_MEMBERSMAP</a></td></tr> +<tr class="memdesc:ga87dc65109882910388121e1dba15038b"><td class="mdescLeft"> </td><td class="mdescRight">Enable RapidJSON support for object members handling in a <code>std::multimap</code> <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">更多...</a><br /></td></tr> +<tr class="separator:ga87dc65109882910388121e1dba15038b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c">RAPIDJSON_NO_INT64DEFINE</a></td></tr> <tr class="memdesc:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="mdescLeft"> </td><td class="mdescRight">Use external 64-bit integer types. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c">更多...</a><br /></td></tr> <tr class="separator:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="memSeparator" colspan="2"> </td></tr> @@ -512,6 +515,23 @@ $(document).ready(function(){initNavTree('group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_ </div> </div> +<a id="ga87dc65109882910388121e1dba15038b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga87dc65109882910388121e1dba15038b">◆ </a></span>RAPIDJSON_USE_MEMBERSMAP</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">#define RAPIDJSON_USE_MEMBERSMAP</td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Enable RapidJSON support for object members handling in a <code>std::multimap</code> </p> +<p>By defining this preprocessor symbol to <code>1</code>, <a class="el" href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue</a> object members are stored in a <code>std::multimap</code> for faster lookup and deletion times, a trade off with a slightly slower insertion time and a small object allocat(or)ed memory overhead. </p> + +</div> +</div> <a id="ga8d06f2d50592811d2890b45243b8adcc"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga8d06f2d50592811d2890b45243b8adcc">◆ </a></span>RAPIDJSON_VALIDATE_DEFAULT_FLAGS</h2> @@ -582,8 +602,8 @@ $(document).ready(function(){initNavTree('group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_ </div> </div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.js b/zh-cn/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.js index 825c77dc..0b6ada7c 100644 --- a/zh-cn/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.js +++ b/zh-cn/group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.js @@ -19,6 +19,7 @@ var group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g = [ "RAPIDJSON_PATCH_VERSION", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf967d31be43666ce7f53756d73bd1cdf", null ], [ "RAPIDJSON_SIMD", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b", null ], [ "RAPIDJSON_UNLIKELY", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5", null ], + [ "RAPIDJSON_USE_MEMBERSMAP", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b", null ], [ "RAPIDJSON_VALIDATE_DEFAULT_FLAGS", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc", null ], [ "RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7", null ], [ "RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272", null ], diff --git a/zh-cn/group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html b/zh-cn/group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html index e8ccd459..531be9e4 100644 --- a/zh-cn/group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html +++ b/zh-cn/group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html @@ -705,12 +705,12 @@ bool </td><td class="memItemRight" valign="bottom"><b>operator!=</b> (<a cl <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga68345ad2eccb3e7dfec09d188f20fe20"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga68345ad2eccb3e7dfec09d188f20fe20">rapidjson::GetValidateError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetValidateError_En(ValidateErrorCode validateErrorCode)</div><div class="ttdoc">Maps error code of validation into error message.</div><div class="ttdef"><b>Definition:</b> en.h:76</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga5e4d44bc16d54acb0a9697110a79a83c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga5e4d44bc16d54acb0a9697110a79a83c">rapidjson::GetValidateErrorFunc</a></div><div class="ttdeci">const typedef RAPIDJSON_ERROR_CHARTYPE *(* GetValidateErrorFunc)(ValidateErrorCode)</div><div class="ttdoc">Function pointer type of GetValidateError().</div><div class="ttdef"><b>Definition:</b> error.h:208</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7d3acf640886b1f2552dc8c4cd6dea60"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">rapidjson::ParseErrorCode</a></div><div class="ttdeci">ParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> error.h:64</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aerror_8h_html"><div class="ttname"><a href="error_8h.html">error.h</a></div></div> <div class="ttc" id="areader_8h_html"><div class="ttname"><a href="reader_8h.html">reader.h</a></div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7e4636fd48d0148f102b8a13f0539d8c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7e4636fd48d0148f102b8a13f0539d8c">RAPIDJSON_ERROR_CHARTYPE</a></div><div class="ttdeci">#define RAPIDJSON_ERROR_CHARTYPE</div><div class="ttdoc">Character type of error messages.</div><div class="ttdef"><b>Definition:</b> error.h:39</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga9d6e699072f8275623a52c4892005751"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga9d6e699072f8275623a52c4892005751">rapidjson::GetParseErrorFunc</a></div><div class="ttdeci">const typedef RAPIDJSON_ERROR_CHARTYPE *(* GetParseErrorFunc)(ParseErrorCode)</div><div class="ttdoc">Function pointer type of GetParseError().</div><div class="ttdef"><b>Definition:</b> error.h:153</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_a0f03679d5fa2736d9e351541e767fac1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1">rapidjson::ParseResult::ParseResult</a></div><div class="ttdeci">ParseResult()</div><div class="ttdoc">Default constructor, no error.</div><div class="ttdef"><b>Definition:</b> error.h:111</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gabdaf1a7a4db30fb0e3d927fdf0fabe79"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79">rapidjson::GetParseError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)</div><div class="ttdoc">Maps error code of parsing into error message.</div><div class="ttdef"><b>Definition:</b> en.h:36</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/ieee754_8h_source.html b/zh-cn/ieee754_8h_source.html index 44dbc3d3..e67a4e57 100644 --- a/zh-cn/ieee754_8h_source.html +++ b/zh-cn/ieee754_8h_source.html @@ -168,9 +168,9 @@ $(document).ready(function(){initNavTree('ieee754_8h_source.html','');}); <div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="preprocessor">#endif // RAPIDJSON_IEEE754_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/index.html b/zh-cn/index.html index da63e423..91a560a4 100644 --- a/zh-cn/index.html +++ b/zh-cn/index.html @@ -236,10 +236,10 @@ simpledom</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue</a></div><div class="ttdoc">Represents a JSON value. Use Value for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> document.h:57</div></div> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_string_buffer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_string_buffer.html">rapidjson::GenericStringBuffer</a></div><div class="ttdoc">Represents an in-memory output stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:59</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/istreamwrapper_8h_source.html b/zh-cn/istreamwrapper_8h_source.html index 557bebbb..4bb246bd 100644 --- a/zh-cn/istreamwrapper_8h_source.html +++ b/zh-cn/istreamwrapper_8h_source.html @@ -219,7 +219,7 @@ $(document).ready(function(){initNavTree('istreamwrapper_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_basic_i_stream_wrapper_html"><div class="ttname"><a href="classrapidjson_1_1_basic_i_stream_wrapper.html">rapidjson::BasicIStreamWrapper</a></div><div class="ttdoc">Wrapper of std::basic_istream into RapidJSON's Stream concept.</div><div class="ttdef"><b>Definition:</b> istreamwrapper.h:49</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aclassrapidjson_1_1_basic_i_stream_wrapper_html_a2b4e069522fa9119685f1cee836e5cfa"><div class="ttname"><a href="classrapidjson_1_1_basic_i_stream_wrapper.html#a2b4e069522fa9119685f1cee836e5cfa">rapidjson::BasicIStreamWrapper::BasicIStreamWrapper</a></div><div class="ttdeci">BasicIStreamWrapper(StreamType &stream)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> istreamwrapper.h:57</div></div> <div class="ttc" id="aclassrapidjson_1_1_basic_i_stream_wrapper_html_acd380a93ccc01d02aef95ea2a926e154"><div class="ttname"><a href="classrapidjson_1_1_basic_i_stream_wrapper.html#acd380a93ccc01d02aef95ea2a926e154">rapidjson::BasicIStreamWrapper::BasicIStreamWrapper</a></div><div class="ttdeci">BasicIStreamWrapper(StreamType &stream, char *buffer, size_t bufferSize)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> istreamwrapper.h:67</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/itoa_8h_source.html b/zh-cn/itoa_8h_source.html index e35b6486..baaa2cf2 100644 --- a/zh-cn/itoa_8h_source.html +++ b/zh-cn/itoa_8h_source.html @@ -398,7 +398,7 @@ $(document).ready(function(){initNavTree('itoa_8h_source.html','');}); <div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor">#endif // RAPIDJSON_ITOA_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/md_doc_dom_8zh-cn.html b/zh-cn/md_doc_dom_8zh-cn.html index f15b0fef..5d5791e7 100644 --- a/zh-cn/md_doc_dom_8zh-cn.html +++ b/zh-cn/md_doc_dom_8zh-cn.html @@ -360,15 +360,15 @@ $(document).ready(function(){initNavTree('md_doc_dom_8zh-cn.html','');}); </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_generic_value_html"><div class="ttname"><a href="classrapidjson_1_1_generic_value.html">rapidjson::GenericValue</a></div><div class="ttdoc">Represents a JSON value. Use Value for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> document.h:57</div></div> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2348</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2615</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> <div class="ttc" id="astructrapidjson_1_1_auto_u_t_f_html"><div class="ttname"><a href="structrapidjson_1_1_auto_u_t_f.html">rapidjson::AutoUTF</a></div><div class="ttdoc">Dynamically select encoding according to stream's runtime-specified UTF encoding type.</div><div class="ttdef"><b>Definition:</b> encodings.h:615</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7ba626bf84eb45a9bca0b7723bf47f3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string</div><div class="ttdef"><b>Definition:</b> document.h:2391</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a7ba626bf84eb45a9bca0b7723bf47f3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f">rapidjson::GenericDocument::ParseInsitu</a></div><div class="ttdeci">GenericDocument & ParseInsitu(Ch *str)</div><div class="ttdoc">Parse JSON text from a mutable string</div><div class="ttdef"><b>Definition:</b> document.h:2658</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_input_stream.html">rapidjson::AutoUTFInputStream</a></div><div class="ttdoc">Input stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:135</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gabdaf1a7a4db30fb0e3d927fdf0fabe79"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79">rapidjson::GetParseError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)</div><div class="ttdoc">Maps error code of parsing into error message.</div><div class="ttdef"><b>Definition:</b> en.h:36</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/md_doc_encoding_8zh-cn.html b/zh-cn/md_doc_encoding_8zh-cn.html index bd04fe81..52c57ebe 100644 --- a/zh-cn/md_doc_encoding_8zh-cn.html +++ b/zh-cn/md_doc_encoding_8zh-cn.html @@ -219,7 +219,7 @@ ASCII</h2> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> <div class="ttc" id="astructrapidjson_1_1_u_t_f8_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f8.html">rapidjson::UTF8</a></div><div class="ttdoc">UTF-8 encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:96</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/md_doc_faq_8zh-cn.html b/zh-cn/md_doc_faq_8zh-cn.html index 40cc2bdd..954967de 100644 --- a/zh-cn/md_doc_faq_8zh-cn.html +++ b/zh-cn/md_doc_faq_8zh-cn.html @@ -324,9 +324,9 @@ Unicode</h1> </div></div><!-- contents --> </div><!-- PageDoc --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/md_doc_pointer_8zh-cn.html b/zh-cn/md_doc_pointer_8zh-cn.html index 75cc2f7c..4371343f 100644 --- a/zh-cn/md_doc_pointer_8zh-cn.html +++ b/zh-cn/md_doc_pointer_8zh-cn.html @@ -287,8 +287,8 @@ URI 片段表示方式</h1> </div><!-- PageDoc --> </div><!-- doc-content --> <div class="ttc" id="anamespacerapidjson_html_a080910f74d2f5046e6724280159cf374"><div class="ttname"><a href="namespacerapidjson.html#a080910f74d2f5046e6724280159cf374">rapidjson::Pointer</a></div><div class="ttdeci">GenericPointer< Value, CrtAllocator > Pointer</div><div class="ttdoc">GenericPointer for Value (UTF-8, default allocator).</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/md_doc_sax_8zh-cn.html b/zh-cn/md_doc_sax_8zh-cn.html index 5a197b89..12c04a12 100644 --- a/zh-cn/md_doc_sax_8zh-cn.html +++ b/zh-cn/md_doc_sax_8zh-cn.html @@ -502,7 +502,7 @@ PrettyWriter</h2> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7d3acf640886b1f2552dc8c4cd6dea60"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">rapidjson::ParseErrorCode</a></div><div class="ttdeci">ParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> error.h:64</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_write_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_write_stream.html">rapidjson::FileWriteStream</a></div><div class="ttdoc">Wrapper of C file stream for output using fwrite().</div><div class="ttdef"><b>Definition:</b> filewritestream.h:32</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ac9c540b77de19661f6f45e04b9b0937b"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b">rapidjson::GenericReader::Parse</a></div><div class="ttdeci">ParseResult Parse(InputStream &is, Handler &handler)</div><div class="ttdoc">Parse JSON text.</div><div class="ttdef"><b>Definition:</b> reader.h:559</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader</a></div><div class="ttdoc">SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_a042c621cf745c5ed3a6f5ff9418dd05e"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#a042c621cf745c5ed3a6f5ff9418dd05e">rapidjson::GenericReader::GetParseErrorCode</a></div><div class="ttdeci">ParseErrorCode GetParseErrorCode() const</div><div class="ttdoc">Get the ParseErrorCode of last parsing.</div><div class="ttdef"><b>Definition:</b> reader.h:685</div></div> @@ -510,7 +510,7 @@ PrettyWriter</h2> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a98a421c806b456688874511f64add1f2"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2">rapidjson::Writer::Writer</a></div><div class="ttdeci">Writer(OutputStream &os, StackAllocator *stackAllocator=0, size_t levelDepth=kDefaultLevelDepth)</div><div class="ttdoc">Constructor</div><div class="ttdef"><b>Definition:</b> writer.h:102</div></div> <div class="ttc" id="astructrapidjson_1_1_base_reader_handler_html"><div class="ttname"><a href="structrapidjson_1_1_base_reader_handler.html">rapidjson::BaseReaderHandler</a></div><div class="ttdoc">Default implementation of Handler.</div><div class="ttdef"><b>Definition:</b> fwd.h:85</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <div class="ttc" id="anamespacerapidjson_html_ad5310edd1226f5b3ea82dc0d4d3740c6"><div class="ttname"><a href="namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6">rapidjson::Reader</a></div><div class="ttdeci">GenericReader< UTF8< char >, UTF8< char >, CrtAllocator > Reader</div><div class="ttdoc">Reader with UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gabdaf1a7a4db30fb0e3d927fdf0fabe79"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79">rapidjson::GetParseError_En</a></div><div class="ttdeci">const RAPIDJSON_ERROR_CHARTYPE * GetParseError_En(ParseErrorCode parseErrorCode)</div><div class="ttdoc">Maps error code of parsing into error message.</div><div class="ttdef"><b>Definition:</b> en.h:36</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ab50019e0a715320f83b7610b83dcef8f"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ab50019e0a715320f83b7610b83dcef8f">rapidjson::GenericReader::GetErrorOffset</a></div><div class="ttdeci">size_t GetErrorOffset() const</div><div class="ttdoc">Get the position of last parsing error in input, 0 otherwise.</div><div class="ttdef"><b>Definition:</b> reader.h:688</div></div> diff --git a/zh-cn/md_doc_schema_8zh-cn.html b/zh-cn/md_doc_schema_8zh-cn.html index cb13b109..08ad5d3e 100644 --- a/zh-cn/md_doc_schema_8zh-cn.html +++ b/zh-cn/md_doc_schema_8zh-cn.html @@ -332,7 +332,7 @@ DOM 解析</h2> </div><!-- doc-content --> <div class="ttc" id="anamespacerapidjson_html_a52bbb5d64d1319495089e1713a0653cf"><div class="ttname"><a href="namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf">rapidjson::SchemaDocument</a></div><div class="ttdeci">GenericSchemaDocument< Value, CrtAllocator > SchemaDocument</div><div class="ttdoc">GenericSchemaDocument using Value type.</div><div class="ttdef"><b>Definition:</b> fwd.h:136</div></div> <div class="ttc" id="anamespacerapidjson_html_ac0765ea91f41539645c4b78689d03f21"><div class="ttname"><a href="namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21">rapidjson::StringBuffer</a></div><div class="ttdeci">GenericStringBuffer< UTF8< char >, CrtAllocator > StringBuffer</div><div class="ttdoc">String buffer with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> fwd.h:59</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/md_doc_stream_8zh-cn.html b/zh-cn/md_doc_stream_8zh-cn.html index 76522b22..7f3e148f 100644 --- a/zh-cn/md_doc_stream_8zh-cn.html +++ b/zh-cn/md_doc_stream_8zh-cn.html @@ -451,19 +451,19 @@ AutoUTFOutputStream</h2> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> <div class="ttc" id="aclassrapidjson_1_1_encoded_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_encoded_input_stream.html">rapidjson::EncodedInputStream</a></div><div class="ttdoc">Input byte stream wrapper with a statically bound encoding.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:39</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html">rapidjson::GenericStringStream</a></div><div class="ttdoc">Read-only string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:47</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2348</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_a3ae97682cf04685c7db9d89ebc399b85"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85">rapidjson::GenericDocument::ParseStream</a></div><div class="ttdeci">GenericDocument & ParseStream(InputStream &is)</div><div class="ttdoc">Parse JSON text from an input stream (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2615</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_write_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_write_stream.html">rapidjson::FileWriteStream</a></div><div class="ttdoc">Wrapper of C file stream for output using fwrite().</div><div class="ttdef"><b>Definition:</b> filewritestream.h:32</div></div> <div class="ttc" id="aclassrapidjson_1_1_file_read_stream_html"><div class="ttname"><a href="classrapidjson_1_1_file_read_stream.html">rapidjson::FileReadStream</a></div><div class="ttdoc">File byte stream for input using fread().</div><div class="ttdef"><b>Definition:</b> filereadstream.h:34</div></div> <div class="ttc" id="aclassrapidjson_1_1_basic_i_stream_wrapper_html"><div class="ttname"><a href="classrapidjson_1_1_basic_i_stream_wrapper.html">rapidjson::BasicIStreamWrapper</a></div><div class="ttdoc">Wrapper of std::basic_istream into RapidJSON's Stream concept.</div><div class="ttdef"><b>Definition:</b> istreamwrapper.h:49</div></div> <div class="ttc" id="astructrapidjson_1_1_auto_u_t_f_html"><div class="ttname"><a href="structrapidjson_1_1_auto_u_t_f.html">rapidjson::AutoUTF</a></div><div class="ttdoc">Dynamically select encoding according to stream's runtime-specified UTF encoding type.</div><div class="ttdef"><b>Definition:</b> encodings.h:615</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> <div class="ttc" id="anamespacerapidjson_html_ac0765ea91f41539645c4b78689d03f21"><div class="ttname"><a href="namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21">rapidjson::StringBuffer</a></div><div class="ttdeci">GenericStringBuffer< UTF8< char >, CrtAllocator > StringBuffer</div><div class="ttdoc">String buffer with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> fwd.h:59</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eb"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb">rapidjson::UTFType</a></div><div class="ttdeci">UTFType</div><div class="ttdoc">Runtime-specified UTF encoding type of a stream.</div><div class="ttdef"><b>Definition:</b> encodings.h:603</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_output_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_output_stream.html">rapidjson::AutoUTFOutputStream</a></div><div class="ttdoc">Output stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:233</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <div class="ttc" id="aclassrapidjson_1_1_auto_u_t_f_input_stream_html"><div class="ttname"><a href="classrapidjson_1_1_auto_u_t_f_input_stream.html">rapidjson::AutoUTFInputStream</a></div><div class="ttdoc">Input stream wrapper with dynamically bound encoding and automatic encoding detection.</div><div class="ttdef"><b>Definition:</b> encodedstream.h:135</div></div> <div class="ttc" id="astructrapidjson_1_1_u_t_f16_l_e_html"><div class="ttname"><a href="structrapidjson_1_1_u_t_f16_l_e.html">rapidjson::UTF16LE</a></div><div class="ttdoc">UTF-16 little endian encoding.</div><div class="ttdef"><b>Definition:</b> encodings.h:342</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/md_doc_tutorial_8zh-cn.html b/zh-cn/md_doc_tutorial_8zh-cn.html index 2fa918ae..d2250217 100644 --- a/zh-cn/md_doc_tutorial_8zh-cn.html +++ b/zh-cn/md_doc_tutorial_8zh-cn.html @@ -493,15 +493,15 @@ Value 及 Document</h1> </div><!-- doc-content --> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_aa6b9fd9f6aa49405a574c362ba9af6b5"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5">rapidjson::GenericStringRef::StringRef</a></div><div class="ttdeci">GenericStringRef< CharType > StringRef(const CharType *str)</div><div class="ttdoc">Mark a character pointer as constant string</div><div class="ttdef"><b>Definition:</b> document.h:445</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ad92c6cd025d411258d1f2ad890e2ee3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">rapidjson::GenericDocument::GetAllocator</a></div><div class="ttdeci">Allocator & GetAllocator()</div><div class="ttdoc">Get the allocator of this document.</div><div class="ttdef"><b>Definition:</b> document.h:2501</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2414</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_ad92c6cd025d411258d1f2ad890e2ee3f"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f">rapidjson::GenericDocument::GetAllocator</a></div><div class="ttdeci">Allocator & GetAllocator()</div><div class="ttdoc">Get the allocator of this document.</div><div class="ttdef"><b>Definition:</b> document.h:2768</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="aclassrapidjson_1_1_generic_document_html_aea842b533a858c9a3861451ad9e8642c"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c">rapidjson::GenericDocument::Parse</a></div><div class="ttdeci">GenericDocument & Parse(const typename SourceEncoding::Ch *str)</div><div class="ttdoc">Parse JSON text from a read-only string (with Encoding conversion)</div><div class="ttdef"><b>Definition:</b> document.h:2681</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_document.html">rapidjson::GenericDocument</a></div><div class="ttdoc">A document for parsing JSON text as DOM.</div><div class="ttdef"><b>Definition:</b> document.h:60</div></div> -<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2595</div></div> -<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:391</div></div> +<div class="ttc" id="anamespacerapidjson_html_ace11b5b575baf1cccd5ba5f8586dcdc8"><div class="ttname"><a href="namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8">rapidjson::Document</a></div><div class="ttdeci">GenericDocument< UTF8<> > Document</div><div class="ttdoc">GenericDocument with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2862</div></div> +<div class="ttc" id="anamespacerapidjson_html"><div class="ttname"><a href="namespacerapidjson.html">rapidjson</a></div><div class="ttdoc">main RapidJSON namespace</div><div class="ttdef"><b>Definition:</b> rapidjson.h:409</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/memorystream_8h_source.html b/zh-cn/memorystream_8h_source.html index a89e0028..efde4029 100644 --- a/zh-cn/memorystream_8h_source.html +++ b/zh-cn/memorystream_8h_source.html @@ -164,10 +164,10 @@ $(document).ready(function(){initNavTree('memorystream_8h_source.html','');}); <div class="ttc" id="astructrapidjson_1_1_memory_stream_html_a8c8437d59c32168a74226312d9e96ace"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace">rapidjson::MemoryStream::size_</a></div><div class="ttdeci">size_t size_</div><div class="ttdoc">Size of the stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:62</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html">rapidjson::MemoryStream</a></div><div class="ttdoc">Represents an in-memory input byte stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:40</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html_a47f45298891e8156121b4017954fabe8"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html#a47f45298891e8156121b4017954fabe8">rapidjson::MemoryStream::end_</a></div><div class="ttdeci">const Ch * end_</div><div class="ttdoc">End of stream.</div><div class="ttdef"><b>Definition:</b> memorystream.h:61</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html_a1cc586e50fbfc0bd5994977b42243b93"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html#a1cc586e50fbfc0bd5994977b42243b93">rapidjson::MemoryStream::begin_</a></div><div class="ttdeci">const Ch * begin_</div><div class="ttdoc">Original head of the string.</div><div class="ttdef"><b>Definition:</b> memorystream.h:60</div></div> <div class="ttc" id="astructrapidjson_1_1_memory_stream_html_ac0b4da6016e5ba6241604fd4258fb722"><div class="ttname"><a href="structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722">rapidjson::MemoryStream::src_</a></div><div class="ttdeci">const Ch * src_</div><div class="ttdoc">Current read position.</div><div class="ttdef"><b>Definition:</b> memorystream.h:59</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/meta_8h_source.html b/zh-cn/meta_8h_source.html index 89742aeb..67430bf4 100644 --- a/zh-cn/meta_8h_source.html +++ b/zh-cn/meta_8h_source.html @@ -276,9 +276,9 @@ $(document).ready(function(){initNavTree('meta_8h_source.html','');}); <div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor">#endif // RAPIDJSON_INTERNAL_META_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> -<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:458</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> +<div class="ttc" id="arapidjson_8h_html_af95188da1d8eb6d4b148fe9ce71cd7c4"><div class="ttname"><a href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4">RAPIDJSON_STATIC_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_STATIC_ASSERT(x)</div><div class="ttdoc">(Internal) macro to check for conditions at compile-time</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/navtreedata.js b/zh-cn/navtreedata.js index 824249d5..a21961b6 100644 --- a/zh-cn/navtreedata.js +++ b/zh-cn/navtreedata.js @@ -270,10 +270,10 @@ var NAVTREEINDEX = [ "allocators_8h_source.html", "classrapidjson_1_1_generic_object.html#a90e43c69c44aba575dd7a662155bd6d2", -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa83126491228c86f6858706d21663adbb", -"fwd_8h_source.html", -"md_doc_sax_8zh-cn.html#SaxParsing", -"structrapidjson_1_1_transcoder.html" +"classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c", +"error_8h_source.html", +"md_doc_pointer_8zh-cn.html#autotoc_md47", +"structrapidjson_1_1_memory_stream.html#ad17be8ddf7b91d91b70fe1cdf5478d14" ]; var SYNCONMSG = '点击 关闭 面板同步'; diff --git a/zh-cn/navtreeindex1.js b/zh-cn/navtreeindex1.js index 5ef83e3d..e38eeea9 100644 --- a/zh-cn/navtreeindex1.js +++ b/zh-cn/navtreeindex1.js @@ -195,23 +195,25 @@ var NAVTREEINDEX1 = "classrapidjson_1_1_generic_string_buffer.html#ae70a632053e258c7c431e0e35b095c84":[14,0,0,26,12], "classrapidjson_1_1_generic_string_buffer.html#afb41bae09405ddd9aa9250ac47ab235e":[14,0,0,26,7], "classrapidjson_1_1_generic_value.html":[14,0,0,29], -"classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e":[14,0,0,29,69], -"classrapidjson_1_1_generic_value.html#a019c4c8beb3c6d675a03f2f72ba9c6b8":[14,0,0,29,71], +"classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e":[14,0,0,29,78], +"classrapidjson_1_1_generic_value.html#a019c4c8beb3c6d675a03f2f72ba9c6b8":[14,0,0,29,80], "classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559":[14,0,0,29,14], "classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d":[14,0,0,29,13], +"classrapidjson_1_1_generic_value.html#a0655ea1a6fb2cf09f845a4e50b6b961f":[14,0,0,29,70], "classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e":[14,0,0,29,18], -"classrapidjson_1_1_generic_value.html#a19199230941f1fe59b5b6a27281fcd1b":[14,0,0,29,72], -"classrapidjson_1_1_generic_value.html#a19e954a8f4731fea785abe0defa0ac44":[14,0,0,29,77], -"classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac":[14,0,0,29,73], +"classrapidjson_1_1_generic_value.html#a19199230941f1fe59b5b6a27281fcd1b":[14,0,0,29,81], +"classrapidjson_1_1_generic_value.html#a19e954a8f4731fea785abe0defa0ac44":[14,0,0,29,86], +"classrapidjson_1_1_generic_value.html#a1c2162a0a065a59bf465497e5110788c":[14,0,0,29,65], +"classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac":[14,0,0,29,82], "classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563":[14,0,0,29,52], -"classrapidjson_1_1_generic_value.html#a1f56ed626112cc824a93b6c29afc0cea":[14,0,0,29,64], -"classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835":[14,0,0,29,75], +"classrapidjson_1_1_generic_value.html#a1f56ed626112cc824a93b6c29afc0cea":[14,0,0,29,73], +"classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835":[14,0,0,29,84], "classrapidjson_1_1_generic_value.html#a39f5e1993897a86741b55c32ed4f54ef":[14,0,0,29,12], "classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437":[14,0,0,29,62], -"classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7":[14,0,0,29,79], +"classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7":[14,0,0,29,88], "classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6":[14,0,0,29,50], "classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1":[14,0,0,29,55], -"classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0":[14,0,0,29,68], +"classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0":[14,0,0,29,77], "classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379":[14,0,0,29,17], "classrapidjson_1_1_generic_value.html#a5d47340c96346c5028fee4c9068d783d":[14,0,0,29,7], "classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58":[14,0,0,29,46], @@ -219,35 +221,33 @@ var NAVTREEINDEX1 = "classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f":[14,0,0,29,11], "classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a":[14,0,0,29,53], "classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8":[14,0,0,29,60], -"classrapidjson_1_1_generic_value.html#a7d1d50ccd6639e29231b3f67d94c9ecf":[14,0,0,29,80], +"classrapidjson_1_1_generic_value.html#a7d1d50ccd6639e29231b3f67d94c9ecf":[14,0,0,29,89], +"classrapidjson_1_1_generic_value.html#a7e5cf02ff6ee4938b672d98258a79546":[14,0,0,29,69], "classrapidjson_1_1_generic_value.html#a81291ad1031afe43aca4719e2989d7dc":[14,0,0,29,8], "classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f":[14,0,0,29,58], "classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc":[14,0,0,29,59], "classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e":[14,0,0,29,61], "classrapidjson_1_1_generic_value.html#a8fb89523de7b22be0c69069f05d04b41":[14,0,0,29,10], -"classrapidjson_1_1_generic_value.html#a9cc2eb5c196affb861560219a4973dd0":[14,0,0,29,70], -"classrapidjson_1_1_generic_value.html#ab05bc9e52e201a2867ea5bac141ee1ae":[14,0,0,29,78], -"classrapidjson_1_1_generic_value.html#ab562c68bda956d38f6c5bd1c47e20213":[14,0,0,29,65], +"classrapidjson_1_1_generic_value.html#a9125585f7d3315da5e9aec2b5587bb7d":[14,0,0,29,64], +"classrapidjson_1_1_generic_value.html#a92627391393b9aa6245275593040cf0a":[14,0,0,29,63], +"classrapidjson_1_1_generic_value.html#a94105ff1a8eeb895cee95fb4eca7781b":[14,0,0,29,68], +"classrapidjson_1_1_generic_value.html#a98ce0a47cc6951eb7ee106160e3b637a":[14,0,0,29,67], +"classrapidjson_1_1_generic_value.html#a9cc2eb5c196affb861560219a4973dd0":[14,0,0,29,79], +"classrapidjson_1_1_generic_value.html#ab05bc9e52e201a2867ea5bac141ee1ae":[14,0,0,29,87], +"classrapidjson_1_1_generic_value.html#ab562c68bda956d38f6c5bd1c47e20213":[14,0,0,29,74], "classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9":[14,0,0,29,48], "classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19":[14,0,0,29,49], -"classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c":[14,0,0,29,76], -"classrapidjson_1_1_generic_value.html#abfbb8243823943bb75f9bb8543e59d1e":[14,0,0,29,74], +"classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c":[14,0,0,29,85], +"classrapidjson_1_1_generic_value.html#abfbb8243823943bb75f9bb8543e59d1e":[14,0,0,29,83], +"classrapidjson_1_1_generic_value.html#aca2fab62d3450b24d46cc9841ed8cfef":[14,0,0,29,66], "classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b":[14,0,0,29,15], "classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8":[14,0,0,29,51], "classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5":[14,0,0,29,45], "classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202":[14,0,0,29,19], +"classrapidjson_1_1_generic_value.html#ad4451b6417bf2ada4d8b56ba0b3b6031":[14,0,0,29,71], "classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2":[14,0,0,29,57], "classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac":[14,0,0,29,47], "classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4":[14,0,0,29,9], "classrapidjson_1_1_generic_value.html#ae1b1a60a9c69ce5ac48b8c445e3e9231":[14,0,0,29,16], -"classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac":[14,0,0,29,66], -"classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c":[14,0,0,29,67], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa1c975cbe158db5f7d0f0f21fd2a5d21b":[14,0,0,29,27], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa1ea62c509fe8cbf11e98e5a4b534dc80":[14,0,0,29,31], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2123664d6bfcad55133a459ee15e1105":[14,0,0,29,37], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa27cb7107112927ff50c61388ad5c94ac":[14,0,0,29,36], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2810cb4d3c04174d0c3d100d64507a84":[14,0,0,29,32], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2db564c128104305e42930694a170da4":[14,0,0,29,26], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa70b4aa8d262bbad9b75f378836653378":[14,0,0,29,43], -"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa79d4762b164cc9f10cf1ea1874bec517":[14,0,0,29,39] +"classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac":[14,0,0,29,75] }; diff --git a/zh-cn/navtreeindex2.js b/zh-cn/navtreeindex2.js index ff9ead7f..f480001e 100644 --- a/zh-cn/navtreeindex2.js +++ b/zh-cn/navtreeindex2.js @@ -1,5 +1,14 @@ var NAVTREEINDEX2 = { +"classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c":[14,0,0,29,76], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa1c975cbe158db5f7d0f0f21fd2a5d21b":[14,0,0,29,27], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa1ea62c509fe8cbf11e98e5a4b534dc80":[14,0,0,29,31], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2123664d6bfcad55133a459ee15e1105":[14,0,0,29,37], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa27cb7107112927ff50c61388ad5c94ac":[14,0,0,29,36], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2810cb4d3c04174d0c3d100d64507a84":[14,0,0,29,32], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa2db564c128104305e42930694a170da4":[14,0,0,29,26], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa70b4aa8d262bbad9b75f378836653378":[14,0,0,29,43], +"classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa79d4762b164cc9f10cf1ea1874bec517":[14,0,0,29,39], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa83126491228c86f6858706d21663adbb":[14,0,0,29,30], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa85ff6bc88aa819a240a1e38016b3084e":[14,0,0,29,44], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaa8783e10b5dc4d4938e609a35fe9639b0":[14,0,0,29,22], @@ -17,7 +26,7 @@ var NAVTREEINDEX2 = "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaadb1d00e419c06f227ac65f4c1b1f0118":[14,0,0,29,21], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaaedfdee10bf43991c4181758c86b3aaea":[14,0,0,29,29], "classrapidjson_1_1_generic_value.html#aeedcc5ea216f2f8f1c02c49065dab0eaaef20be24474b0e9ffee7d02bd00190e1":[14,0,0,29,24], -"classrapidjson_1_1_generic_value.html#af2475845538fccc217d8cf3e94d6a5e0":[14,0,0,29,63], +"classrapidjson_1_1_generic_value.html#af2475845538fccc217d8cf3e94d6a5e0":[14,0,0,29,72], "classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b":[14,0,0,29,54], "classrapidjson_1_1_handler.html":[14,0,3], "classrapidjson_1_1_i_generic_remote_schema_document_provider.html":[14,0,0,30], @@ -240,14 +249,5 @@ var NAVTREEINDEX2 = "error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab707b848425668e765def25554735242":[15,0,0,0,0,1,2,4], "error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57":[15,0,0,0,0,1,2,3], "error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f":[15,0,0,0,0,1,2,14], -"error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60af7daa91caa53abb881ea231a874a4f40":[15,0,0,0,0,1,2,11], -"error_8h_source.html":[15,0,0,0,0,1], -"filereadstream_8h_source.html":[15,0,0,0,7], -"files.html":[15,0], -"filewritestream_8h_source.html":[15,0,0,0,8], -"functions.html":[14,2,0], -"functions_func.html":[14,2,1], -"functions_rela.html":[14,2,4], -"functions_type.html":[14,2,3], -"functions_vars.html":[14,2,2] +"error_8h.html#gga7d3acf640886b1f2552dc8c4cd6dea60af7daa91caa53abb881ea231a874a4f40":[15,0,0,0,0,1,2,11] }; diff --git a/zh-cn/navtreeindex3.js b/zh-cn/navtreeindex3.js index 26b170cb..bcae9922 100644 --- a/zh-cn/navtreeindex3.js +++ b/zh-cn/navtreeindex3.js @@ -1,5 +1,14 @@ var NAVTREEINDEX3 = { +"error_8h_source.html":[15,0,0,0,0,1], +"filereadstream_8h_source.html":[15,0,0,0,7], +"files.html":[15,0], +"filewritestream_8h_source.html":[15,0,0,0,8], +"functions.html":[14,2,0], +"functions_func.html":[14,2,1], +"functions_rela.html":[14,2,4], +"functions_type.html":[14,2,3], +"functions_vars.html":[14,2,2], "fwd_8h_source.html":[15,0,0,0,9], "globals.html":[15,1,0], "globals_defs.html":[15,1,1], @@ -9,10 +18,10 @@ var NAVTREEINDEX3 = "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b":[15,0,0,0,16,23], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b":[12,0,17], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7":[15,0,0,0,4,22], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7":[12,0,20], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7":[12,0,21], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1178cffff7c596922a5ed3fda30c5520":[12,0,5], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1178cffff7c596922a5ed3fda30c5520":[15,0,0,0,4,21], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6":[12,0,23], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6":[12,0,24], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f":[15,0,0,0,16,18], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f":[12,0,13], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952":[15,0,0,0,16,19], @@ -21,10 +30,10 @@ var NAVTREEINDEX3 = "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f":[12,0,7], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242":[15,0,0,0,16,2], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242":[12,0,1], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272":[12,0,21], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272":[12,0,22], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272":[15,0,0,0,4,23], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1":[15,0,0,0,16,10], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1":[12,0,8], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1":[15,0,0,0,16,10], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5":[15,0,0,0,16,26], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5":[12,0,18], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga743a79d3af927391fe3eb5c979136899":[15,0,0,0,16,15], @@ -34,15 +43,17 @@ var NAVTREEINDEX3 = "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c":[15,0,0,0,16,17], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c":[12,0,12], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5":[12,0,2], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc":[12,0,19], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b":[15,0,0,0,16,27], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b":[12,0,19], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc":[12,0,20], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185":[15,0,0,0,16,0], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185":[12,0,0], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07":[15,0,0,0,16,6], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07":[12,0,6], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c":[15,0,0,0,16,3], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c":[12,0,3], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6":[15,0,0,0,16,27], -"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6":[12,0,22], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6":[15,0,0,0,16,28], +"group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6":[12,0,23], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf1ff1685be6cbebb5d4b2ab997776f45":[15,0,0,0,16,12], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf1ff1685be6cbebb5d4b2ab997776f45":[12,0,9], "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf9125105c593a636a79f1c2d96835376":[15,0,0,0,16,14], @@ -78,8 +89,8 @@ var NAVTREEINDEX3 = "group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabe2e1bd1349e5a7d6c1af78c05a98f0d":[15,0,0,0,0,1,1], "group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabe2e1bd1349e5a7d6c1af78c05a98f0d":[12,1,2], "group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b":[12,1,6], -"group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865":[15,0,0,0,17,3], "group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865":[12,1,3], +"group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865":[15,0,0,0,17,3], "group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e":[12,1,7,0], "group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa":[12,1,7,10], "group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446":[12,1,7,16], @@ -238,16 +249,5 @@ var NAVTREEINDEX3 = "md_doc_pointer_8zh-cn.html#JsonPointer":[3,0], "md_doc_pointer_8zh-cn.html#ResolvingPointer":[3,3], "md_doc_pointer_8zh-cn.html#URIFragment":[3,5], -"md_doc_pointer_8zh-cn.html#UserSuppliedTokens":[3,7], -"md_doc_pointer_8zh-cn.html#autotoc_md47":[3,3,0], -"md_doc_pointer_8zh-cn.html#autotoc_md48":[3,3,1], -"md_doc_pointer_8zh-cn.html#autotoc_md49":[3,6], -"md_doc_sax_8zh-cn.html":[7], -"md_doc_sax_8zh-cn.html#CompletenessReset":[7,1,2], -"md_doc_sax_8zh-cn.html#CustomDataStructure":[7,2,0], -"md_doc_sax_8zh-cn.html#Filtering":[7,2,1], -"md_doc_sax_8zh-cn.html#GenericReader":[7,0,1], -"md_doc_sax_8zh-cn.html#Handler":[7,0,0], -"md_doc_sax_8zh-cn.html#PrettyWriter":[7,1,1], -"md_doc_sax_8zh-cn.html#Reader":[7,0] +"md_doc_pointer_8zh-cn.html#UserSuppliedTokens":[3,7] }; diff --git a/zh-cn/navtreeindex4.js b/zh-cn/navtreeindex4.js index 01989c73..37e66095 100644 --- a/zh-cn/navtreeindex4.js +++ b/zh-cn/navtreeindex4.js @@ -1,5 +1,16 @@ var NAVTREEINDEX4 = { +"md_doc_pointer_8zh-cn.html#autotoc_md47":[3,3,0], +"md_doc_pointer_8zh-cn.html#autotoc_md48":[3,3,1], +"md_doc_pointer_8zh-cn.html#autotoc_md49":[3,6], +"md_doc_sax_8zh-cn.html":[7], +"md_doc_sax_8zh-cn.html#CompletenessReset":[7,1,2], +"md_doc_sax_8zh-cn.html#CustomDataStructure":[7,2,0], +"md_doc_sax_8zh-cn.html#Filtering":[7,2,1], +"md_doc_sax_8zh-cn.html#GenericReader":[7,0,1], +"md_doc_sax_8zh-cn.html#Handler":[7,0,0], +"md_doc_sax_8zh-cn.html#PrettyWriter":[7,1,1], +"md_doc_sax_8zh-cn.html#Reader":[7,0], "md_doc_sax_8zh-cn.html#SaxParsing":[7,0,2], "md_doc_sax_8zh-cn.html#SaxTechniques":[7,2], "md_doc_sax_8zh-cn.html#Writer":[7,1], @@ -71,7 +82,7 @@ var NAVTREEINDEX4 = "rapidjson_8h.html":[15,0,0,0,16], "rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27":[15,0,0,0,16,13], "rapidjson_8h.html#a113598c4750b3aab4de2782ff1865ed4":[15,0,0,0,16,22], -"rapidjson_8h.html#a44eb33eaa523e36d466b1ced64b85c84":[15,0,0,0,16,28], +"rapidjson_8h.html#a44eb33eaa523e36d466b1ced64b85c84":[15,0,0,0,16,29], "rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a":[15,0,0,0,16,5], "rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52":[15,0,0,0,16,1], "rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67":[15,0,0,0,16,21], @@ -81,14 +92,14 @@ var NAVTREEINDEX4 = "rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b":[15,0,0,0,16,16], "rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974":[15,0,0,0,16,4], "rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c":[15,0,0,0,16,11], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4":[15,0,0,0,16,29], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468":[15,0,0,0,16,29,4], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e":[15,0,0,0,16,29,2], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff":[15,0,0,0,16,29,0], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607":[15,0,0,0,16,29,1], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a":[15,0,0,0,16,29,6], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9":[15,0,0,0,16,29,3], -"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7":[15,0,0,0,16,29,5], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4":[15,0,0,0,16,30], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468":[15,0,0,0,16,30,4], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e":[15,0,0,0,16,30,2], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff":[15,0,0,0,16,30,0], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607":[15,0,0,0,16,30,1], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a":[15,0,0,0,16,30,6], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9":[15,0,0,0,16,30,3], +"rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7":[15,0,0,0,16,30,5], "rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4":[15,0,0,0,16,24], "rapidjson_8h_source.html":[15,0,0,0,16], "reader_8h.html":[15,0,0,0,17], @@ -238,16 +249,5 @@ var NAVTREEINDEX4 = "structrapidjson_1_1_memory_stream.html#ab759106a74ad078260c2c1029bfb7030":[14,0,0,32,9], "structrapidjson_1_1_memory_stream.html#abf9f7cf51a5830ae45e24f5d55fdceaf":[14,0,0,32,0], "structrapidjson_1_1_memory_stream.html#abfe6486d171f52af46147031e0c65bb6":[14,0,0,32,3], -"structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722":[14,0,0,32,13], -"structrapidjson_1_1_memory_stream.html#ad17be8ddf7b91d91b70fe1cdf5478d14":[14,0,0,32,4], -"structrapidjson_1_1_std_allocator_1_1rebind.html":[14,0,0,36,0], -"structrapidjson_1_1_std_allocator_1_1rebind.html#a4cd0cd6824224b46057179a79b7dbb9d":[14,0,0,36,0,0], -"structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html":[14,0,0,37,0], -"structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html#aeeda80c4a5e3b140f7087015b7602231":[14,0,0,37,0,0], -"structrapidjson_1_1_stream_traits.html":[14,0,0,38], -"structrapidjson_1_1_stream_traits.html#aea5a3f90ea4fd2a1b9c9c9954294474daf6f7f81d1e208f1041e618b57e0d3828":[14,0,0,38,0], -"structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html":[14,0,0,39], -"structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html#aa9b3b32a0ba57a7263455521508c9a84ab943169f50f1fc0616fedc1dd2605201":[14,0,0,39,0], -"structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html":[14,0,0,40], -"structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html#a421f511cdadd65681fe51ba0dde1b649a58160aabefa22129afe0dd6dce3285f9":[14,0,0,40,0] +"structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722":[14,0,0,32,13] }; diff --git a/zh-cn/navtreeindex5.js b/zh-cn/navtreeindex5.js index 65250a50..1cb2e1df 100644 --- a/zh-cn/navtreeindex5.js +++ b/zh-cn/navtreeindex5.js @@ -1,5 +1,16 @@ var NAVTREEINDEX5 = { +"structrapidjson_1_1_memory_stream.html#ad17be8ddf7b91d91b70fe1cdf5478d14":[14,0,0,32,4], +"structrapidjson_1_1_std_allocator_1_1rebind.html":[14,0,0,36,0], +"structrapidjson_1_1_std_allocator_1_1rebind.html#a4cd0cd6824224b46057179a79b7dbb9d":[14,0,0,36,0,0], +"structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html":[14,0,0,37,0], +"structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html#aeeda80c4a5e3b140f7087015b7602231":[14,0,0,37,0,0], +"structrapidjson_1_1_stream_traits.html":[14,0,0,38], +"structrapidjson_1_1_stream_traits.html#aea5a3f90ea4fd2a1b9c9c9954294474daf6f7f81d1e208f1041e618b57e0d3828":[14,0,0,38,0], +"structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html":[14,0,0,39], +"structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html#aa9b3b32a0ba57a7263455521508c9a84ab943169f50f1fc0616fedc1dd2605201":[14,0,0,39,0], +"structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html":[14,0,0,40], +"structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html#a421f511cdadd65681fe51ba0dde1b649a58160aabefa22129afe0dd6dce3285f9":[14,0,0,40,0], "structrapidjson_1_1_transcoder.html":[14,0,0,41], "structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html":[14,0,0,42], "structrapidjson_1_1_u_t_f16.html":[14,0,0,43], diff --git a/zh-cn/ostreamwrapper_8h_source.html b/zh-cn/ostreamwrapper_8h_source.html index 2673d33c..7ae2138e 100644 --- a/zh-cn/ostreamwrapper_8h_source.html +++ b/zh-cn/ostreamwrapper_8h_source.html @@ -172,7 +172,7 @@ $(document).ready(function(){initNavTree('ostreamwrapper_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_basic_o_stream_wrapper_html"><div class="ttname"><a href="classrapidjson_1_1_basic_o_stream_wrapper.html">rapidjson::BasicOStreamWrapper</a></div><div class="ttdoc">Wrapper of std::basic_ostream into RapidJSON's Stream concept.</div><div class="ttdef"><b>Definition:</b> ostreamwrapper.h:45</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/pointer_8h_source.html b/zh-cn/pointer_8h_source.html index 75a083e3..37ca8ebf 100644 --- a/zh-cn/pointer_8h_source.html +++ b/zh-cn/pointer_8h_source.html @@ -1509,7 +1509,7 @@ $(document).ready(function(){initNavTree('pointer_8h_source.html','');}); <div class="ttc" id="astructrapidjson_1_1_generic_pointer_1_1_token_html_ad866d674dbddf9690ad571b65e968600"><div class="ttname"><a href="structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600">rapidjson::GenericPointer::Token::length</a></div><div class="ttdeci">SizeType length</div><div class="ttdoc">Length of the name.</div><div class="ttdef"><b>Definition:</b> pointer.h:99</div></div> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a850f78846c5548565f8395be5f3427b7"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">rapidjson::GenericPointer::Ch</a></div><div class="ttdeci">ValueType::Ch Ch</div><div class="ttdoc">Character type from Value</div><div class="ttdef"><b>Definition:</b> pointer.h:82</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a0e144b9956a5272c13ceff3b9306e748"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748">rapidjson::GenericPointer::~GenericPointer</a></div><div class="ttdeci">~GenericPointer()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> pointer.h:176</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_afedfcaac36fa589a46667825d3d0b763"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#afedfcaac36fa589a46667825d3d0b763">rapidjson::GenericPointer::GenericPointer</a></div><div class="ttdeci">GenericPointer(const GenericPointer &rhs, Allocator *allocator)</div><div class="ttdoc">Copy constructor.</div><div class="ttdef"><b>Definition:</b> pointer.h:171</div></div> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> @@ -1520,11 +1520,11 @@ $(document).ready(function(){initNavTree('pointer_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ggade540ee4cc2a416c23b8ee2c12393c7bae244a98f53279fda5a750f847b81c54f"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7bae244a98f53279fda5a750f847b81c54f">rapidjson::kPointerParseErrorCharacterMustPercentEncode</a></div><div class="ttdoc">A character must percent encoded in URI fragment</div><div class="ttdef"><b>Definition:</b> pointer.h:43</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a399790c5fe8076d91a58c621c0c2a79e"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a399790c5fe8076d91a58c621c0c2a79e">rapidjson::GenericPointer::EncodingType</a></div><div class="ttdeci">ValueType::EncodingType EncodingType</div><div class="ttdoc">Encoding type from Value</div><div class="ttdef"><b>Definition:</b> pointer.h:81</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a8798d7fdb02cd5b95bf032760aed8445"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445">rapidjson::GenericPointer::ownAllocator_</a></div><div class="ttdeci">Allocator * ownAllocator_</div><div class="ttdoc">Allocator owned by this Pointer.</div><div class="ttdef"><b>Definition:</b> pointer.h:1101</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a23194bb6ce6c07c78981344fe80ac3a6"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6">rapidjson::GenericPointer::operator=</a></div><div class="ttdeci">GenericPointer & operator=(const GenericPointer &rhs)</div><div class="ttdoc">Assignment operator.</div><div class="ttdef"><b>Definition:</b> pointer.h:183</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gade540ee4cc2a416c23b8ee2c12393c7b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b">rapidjson::PointerParseErrorCode</a></div><div class="ttdeci">PointerParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> pointer.h:37</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a8f831aae14afc493a82b5fb6aa9c3c43"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a8f831aae14afc493a82b5fb6aa9c3c43">rapidjson::GenericPointer::GenericPointer</a></div><div class="ttdeci">GenericPointer(const Ch *source, Allocator *allocator=0)</div><div class="ttdoc">Constructor that parses a string or URI fragment representation.</div><div class="ttdef"><b>Definition:</b> pointer.h:114</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a20d76ef128abbdd0acd87d2f1fb0ae34"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34">rapidjson::GenericPointer::parseErrorCode_</a></div><div class="ttdeci">PointerParseErrorCode parseErrorCode_</div><div class="ttdoc">Parsing error code.</div><div class="ttdef"><b>Definition:</b> pointer.h:1106</div></div> @@ -1532,8 +1532,8 @@ $(document).ready(function(){initNavTree('pointer_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ggade540ee4cc2a416c23b8ee2c12393c7ba907c9fe4e541b257513e3a18635379f7"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba907c9fe4e541b257513e3a18635379f7">rapidjson::kPointerParseErrorInvalidEscape</a></div><div class="ttdoc">Invalid escape</div><div class="ttdef"><b>Definition:</b> pointer.h:41</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_aa077ce171ea25cf501c12f2d5df7f248"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#aa077ce171ea25cf501c12f2d5df7f248">rapidjson::GenericPointer::GenericPointer</a></div><div class="ttdeci">GenericPointer(Allocator *allocator=0)</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition:</b> pointer.h:107</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a></div><div class="ttdoc">Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_acb657759c16fa63da15186db8c29122b"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b">rapidjson::GenericPointer::tokenCount_</a></div><div class="ttdeci">size_t tokenCount_</div><div class="ttdoc">Number of tokens in tokens_.</div><div class="ttdef"><b>Definition:</b> pointer.h:1104</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_a7cb5eda2af1722e52efa591c4103ebec"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec">rapidjson::GenericPointer::Append</a></div><div class="ttdeci">GenericPointer Append(const Token &token, Allocator *allocator=0) const</div><div class="ttdoc">Append a token and return a new Pointer</div><div class="ttdef"><b>Definition:</b> pointer.h:244</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html_aeefcd60e5ad37d80ec43f5315ae84809"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#aeefcd60e5ad37d80ec43f5315ae84809">rapidjson::GenericPointer::GenericPointer</a></div><div class="ttdeci">GenericPointer(const std::basic_string< Ch > &source, Allocator *allocator=0)</div><div class="ttdoc">Constructor that parses a string or URI fragment representation.</div><div class="ttdef"><b>Definition:</b> pointer.h:125</div></div> diff --git a/zh-cn/pow10_8h_source.html b/zh-cn/pow10_8h_source.html index e19e5ed8..a6f3f8fd 100644 --- a/zh-cn/pow10_8h_source.html +++ b/zh-cn/pow10_8h_source.html @@ -145,7 +145,7 @@ $(document).ready(function(){initNavTree('pow10_8h_source.html','');}); <div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor">#endif // RAPIDJSON_POW10_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/prettywriter_8h_source.html b/zh-cn/prettywriter_8h_source.html index 2de980a4..8e65d469 100644 --- a/zh-cn/prettywriter_8h_source.html +++ b/zh-cn/prettywriter_8h_source.html @@ -368,24 +368,24 @@ $(document).ready(function(){initNavTree('prettywriter_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="anamespacerapidjson_html_a084b31753ef2edefdeca8a5374eccc4b"><div class="ttname"><a href="namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b">rapidjson::PrettyFormatOptions</a></div><div class="ttdeci">PrettyFormatOptions</div><div class="ttdoc">Combination of PrettyWriter format flags.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:35</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="anamespacerapidjson_html_a084b31753ef2edefdeca8a5374eccc4ba64b0f8a37ab3125118682046ff06500f"><div class="ttname"><a href="namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba64b0f8a37ab3125118682046ff06500f">rapidjson::kFormatSingleLineArray</a></div><div class="ttdoc">Format arrays on a single line.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:37</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_a3136e3426a5d06e5da50f6e6aab8a5be"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be">rapidjson::PrettyWriter::RawValue</a></div><div class="ttdeci">bool RawValue(const Ch *json, size_t length, Type type)</div><div class="ttdoc">Write a raw JSON value.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:201</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_acde6176577f29869e28a4f3c4a251090"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090">rapidjson::PrettyWriter::SetFormatOptions</a></div><div class="ttdeci">PrettyWriter & SetFormatOptions(PrettyFormatOptions options)</div><div class="ttdoc">Set pretty writer formatting options.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:85</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_a121686c29ca7fe071fa4108c46955ff0"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0">rapidjson::PrettyWriter::SetIndent</a></div><div class="ttdeci">PrettyWriter & SetIndent(Ch indentChar, unsigned indentCharCount)</div><div class="ttdoc">Set custom indentation.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:75</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_a688d7ebf5c8015e423b7a970afc8e0a0"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0">rapidjson::PrettyWriter::PrettyWriter</a></div><div class="ttdeci">PrettyWriter(OutputStream &os, StackAllocator *allocator=0, size_t levelDepth=Base::kDefaultLevelDepth)</div><div class="ttdoc">Constructor</div><div class="ttdef"><b>Definition:</b> prettywriter.h:58</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html">rapidjson::PrettyWriter</a></div><div class="ttdoc">Writer with indentation and spacing.</div><div class="ttdef"><b>Definition:</b> fwd.h:100</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> <div class="ttc" id="anamespacerapidjson_html_a084b31753ef2edefdeca8a5374eccc4ba8164b0d4993439856171585b9cf3adc0"><div class="ttname"><a href="namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba8164b0d4993439856171585b9cf3adc0">rapidjson::kFormatDefault</a></div><div class="ttdoc">Default pretty formatting.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:36</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> <div class="ttc" id="aclassrapidjson_1_1_pretty_writer_html_a363c2280393e27e19bceb8d015c2832c"><div class="ttname"><a href="classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c">rapidjson::PrettyWriter::String</a></div><div class="ttdeci">bool String(const Ch *str)</div><div class="ttdoc">Simpler but slower overload.</div><div class="ttdef"><b>Definition:</b> prettywriter.h:187</div></div> <div class="ttc" id="anamespacerapidjson_html_a1ac13bac5976fc06587e00fc0bcfb32a"><div class="ttname"><a href="namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a">rapidjson::PutN</a></div><div class="ttdeci">void PutN(FileWriteStream &stream, char c, size_t n)</div><div class="ttdoc">Implement specialized version of PutN() with memset() for better performance.</div><div class="ttdef"><b>Definition:</b> filewritestream.h:94</div></div> <!-- HTML footer for doxygen 1.8.7--> diff --git a/zh-cn/rapidjson_8h.html b/zh-cn/rapidjson_8h.html index 48278a33..f9e925a5 100644 --- a/zh-cn/rapidjson_8h.html +++ b/zh-cn/rapidjson_8h.html @@ -133,6 +133,9 @@ $(document).ready(function(){initNavTree('rapidjson_8h.html','');}); <tr class="memitem:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f">RAPIDJSON_HAS_STDSTRING</a></td></tr> <tr class="memdesc:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="mdescLeft"> </td><td class="mdescRight">Enable RapidJSON support for <code>std::string</code> <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f">更多...</a><br /></td></tr> <tr class="separator:ga2f2eef0ee4477f3fe5874703a66e997f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga87dc65109882910388121e1dba15038b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">RAPIDJSON_USE_MEMBERSMAP</a></td></tr> +<tr class="memdesc:ga87dc65109882910388121e1dba15038b"><td class="mdescLeft"> </td><td class="mdescRight">Enable RapidJSON support for object members handling in a <code>std::multimap</code> <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b">更多...</a><br /></td></tr> +<tr class="separator:ga87dc65109882910388121e1dba15038b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c">RAPIDJSON_NO_INT64DEFINE</a></td></tr> <tr class="memdesc:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="mdescLeft"> </td><td class="mdescRight">Use external 64-bit integer types. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c">更多...</a><br /></td></tr> <tr class="separator:ga7f4e50c35dae3b015390daa6d48ce23c"><td class="memSeparator" colspan="2"> </td></tr> diff --git a/zh-cn/rapidjson_8h.js b/zh-cn/rapidjson_8h.js index 6054f280..78d4ab42 100644 --- a/zh-cn/rapidjson_8h.js +++ b/zh-cn/rapidjson_8h.js @@ -27,6 +27,7 @@ var rapidjson_8h = [ "RAPIDJSON_STATIC_ASSERT", "rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4", null ], [ "RAPIDJSON_UINT64_C2", "rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f", null ], [ "RAPIDJSON_UNLIKELY", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5", null ], + [ "RAPIDJSON_USE_MEMBERSMAP", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b", null ], [ "RAPIDJSON_VERSION_STRING", "group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6", null ], [ "SizeType", "rapidjson_8h.html#a44eb33eaa523e36d466b1ced64b85c84", null ], [ "Type", "rapidjson_8h.html#ae79a4751c1c460ff0de5ecc07874f3e4", [ diff --git a/zh-cn/rapidjson_8h_source.html b/zh-cn/rapidjson_8h_source.html index ab8269e2..7dae54fc 100644 --- a/zh-cn/rapidjson_8h_source.html +++ b/zh-cn/rapidjson_8h_source.html @@ -253,571 +253,593 @@ $(document).ready(function(){initNavTree('rapidjson_8h_source.html','');}); <div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_STDSTRING</span></div> <div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment"></span> </div> <div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment"></span><span class="comment">// RAPIDJSON_USE_MEMBERSMAP</span></div> <div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment"></span> </div> -<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment">/*! \def RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment">/*! \def RAPIDJSON_USE_MEMBERSMAP</span></div> <div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment"> \brief Use external 64-bit integer types.</span></div> +<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment"> \brief Enable RapidJSON support for object members handling in a \c std::multimap</span></div> <div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="comment"></span> </div> -<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment"> RapidJSON requires the 64-bit integer types \c int64_t and \c uint64_t types</span></div> -<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="comment"> to be available at global scope.</span></div> -<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment"></span> </div> -<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment"> If users have their own definition, define RAPIDJSON_NO_INT64DEFINE to</span></div> -<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="comment"> prevent RapidJSON from defining its own types.</span></div> -<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor">#ifndef RAPIDJSON_NO_INT64DEFINE</span></div> -<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> -<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="comment"></span><span class="preprocessor">#if defined(_MSC_VER) && (_MSC_VER < 1800) // Visual Studio 2013</span></div> -<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor">#include "msinttypes/stdint.h"</span></div> -<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor">#include "msinttypes/inttypes.h"</span></div> -<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment">// Other compilers should have this.</span></div> -<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor">#include <stdint.h></span></div> -<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor">#include <inttypes.h></span></div> -<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment">//!@endcond</span></div> -<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"></span><span class="preprocessor">#ifdef RAPIDJSON_DOXYGEN_RUNNING</span></div> -<div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c"> 190</a></span> <span class="preprocessor">#define RAPIDJSON_NO_INT64DEFINE</span></div> -<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="preprocessor">#endif // RAPIDJSON_NO_INT64TYPEDEF</span></div> -<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"></span> </div> -<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment"></span><span class="comment">// RAPIDJSON_FORCEINLINE</span></div> -<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  </div> -<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor">#ifndef RAPIDJSON_FORCEINLINE</span></div> -<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> -<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="comment"></span><span class="preprocessor">#if defined(_MSC_VER) && defined(NDEBUG)</span></div> -<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE __forceinline</span></div> -<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="preprocessor">#elif defined(__GNUC__) && __GNUC__ >= 4 && defined(NDEBUG)</span></div> -<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE __attribute__((always_inline))</span></div> -<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment"> By defining this preprocessor symbol to \c 1, \ref rapidjson::GenericValue object</span></div> +<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="comment"> members are stored in a \c std::multimap for faster lookup and deletion times, a</span></div> +<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment"> trade off with a slightly slower insertion time and a small object allocat(or)ed</span></div> +<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment"> memory overhead.</span></div> +<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="comment"></span> </div> +<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="comment"> \hideinitializer</span></div> +<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor">#ifndef RAPIDJSON_USE_MEMBERSMAP</span></div> +<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b"> 180</a></span> <span class="preprocessor">#define RAPIDJSON_USE_MEMBERSMAP 0 // not by default</span></div> +<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment"></span> </div> +<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment"></span> </div> +<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="comment">/*! \def RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment"> \brief Use external 64-bit integer types.</span></div> +<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"></span> </div> +<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment"> RapidJSON requires the 64-bit integer types \c int64_t and \c uint64_t types</span></div> +<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment"> to be available at global scope.</span></div> +<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment"></span> </div> +<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"> If users have their own definition, define RAPIDJSON_NO_INT64DEFINE to</span></div> +<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment"> prevent RapidJSON from defining its own types.</span></div> +<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor">#ifndef RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="comment"></span><span class="preprocessor">#if defined(_MSC_VER) && (_MSC_VER < 1800) // Visual Studio 2013</span></div> +<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor">#include "msinttypes/stdint.h"</span></div> +<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor">#include "msinttypes/inttypes.h"</span></div> +<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="comment">// Other compilers should have this.</span></div> +<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor">#include <stdint.h></span></div> +<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor">#include <inttypes.h></span></div> <div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="comment">//!@endcond</span></div> -<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="comment"></span><span class="preprocessor">#endif // RAPIDJSON_FORCEINLINE</span></div> -<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="comment"></span> </div> -<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c"> 211</a></span> <span class="preprocessor">#define RAPIDJSON_LITTLEENDIAN 0 </span><span class="comment">//!< Little endian machine</span></div> -<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974"> 212</a></span> <span class="comment"></span>#define RAPIDJSON_BIGENDIAN 1 <span class="comment">//!< Big endian machine</span></div> -<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment"></span> </div> -<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="comment">//! Endianness of the machine.</span></div> -<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="comment"> \def RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="comment"></span> </div> -<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="comment"> GCC 4.6 provided macro for detecting endianness of the target machine. But other</span></div> -<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="comment"> compilers may not have this. User can define RAPIDJSON_ENDIAN to either</span></div> -<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment"> \ref RAPIDJSON_LITTLEENDIAN or \ref RAPIDJSON_BIGENDIAN.</span></div> -<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="comment"></span> </div> -<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="comment"> Default detection implemented with reference to</span></div> -<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment"> \li https://gcc.gnu.org/onlinedocs/gcc-4.6.0/cpp/Common-Predefined-Macros.html</span></div> -<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="comment"> \li http://www.boost.org/doc/libs/1_42_0/boost/detail/endian.hpp</span></div> -<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="preprocessor">#ifndef RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment">// Detect with GCC 4.6's macro</span></div> -<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor"># ifdef __BYTE_ORDER__</span></div> -<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor"># if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__</span></div> -<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor"># elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__</span></div> -<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> -<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor"># else</span></div> -<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN.</span></div> -<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor"># endif // __BYTE_ORDER__</span></div> -<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="comment">// Detect with GLIBC's endian.h</span></div> -<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="preprocessor"># elif defined(__GLIBC__)</span></div> -<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="preprocessor"># include <endian.h></span></div> -<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="preprocessor"># if (__BYTE_ORDER == __LITTLE_ENDIAN)</span></div> -<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor"># elif (__BYTE_ORDER == __BIG_ENDIAN)</span></div> -<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> -<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="preprocessor"># else</span></div> -<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN.</span></div> -<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="preprocessor"># endif // __GLIBC__</span></div> -<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="comment">// Detect with _LITTLE_ENDIAN and _BIG_ENDIAN macro</span></div> -<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"># elif defined(_LITTLE_ENDIAN) && !defined(_BIG_ENDIAN)</span></div> -<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"># elif defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN)</span></div> -<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> -<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="comment">// Detect with architecture macros</span></div> -<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor"># elif defined(__sparc) || defined(__sparc__) || defined(_POWER) || defined(__powerpc__) || defined(__ppc__) || defined(__hpux) || defined(__hppa) || defined(_MIPSEB) || defined(_POWER) || defined(__s390__)</span></div> -<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> -<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor"># elif defined(__i386__) || defined(__alpha__) || defined(__ia64) || defined(__ia64__) || defined(_M_IX86) || defined(_M_IA64) || defined(_M_ALPHA) || defined(__amd64) || defined(__amd64__) || defined(_M_AMD64) || defined(__x86_64) || defined(__x86_64__) || defined(_M_X64) || defined(__bfin__)</span></div> -<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"># elif defined(_MSC_VER) && (defined(_M_ARM) || defined(_M_ARM64))</span></div> -<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> -<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor"># elif defined(RAPIDJSON_DOXYGEN_RUNNING)</span></div> -<div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07"> 260</a></span> <span class="preprocessor"># define RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"># else</span></div> -<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN. </span></div> -<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"># endif</span></div> -<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor">#endif // RAPIDJSON_ENDIAN</span></div> -<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="comment"></span> </div> -<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="comment"></span><span class="comment">// RAPIDJSON_64BIT</span></div> -<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="comment"></span> </div> -<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="comment">//! Whether using 64-bit architecture</span></div> -<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="comment"></span><span class="preprocessor">#ifndef RAPIDJSON_64BIT</span></div> -<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor">#if defined(__LP64__) || (defined(__x86_64__) && defined(__ILP32__)) || defined(_WIN64) || defined(__EMSCRIPTEN__)</span></div> -<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor">#define RAPIDJSON_64BIT 1</span></div> -<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52"> 274</a></span> <span class="preprocessor">#define RAPIDJSON_64BIT 0</span></div> -<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor">#endif // RAPIDJSON_64BIT</span></div> -<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="comment"></span> </div> -<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ALIGN</span></div> -<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="comment"></span> </div> -<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="comment">//! Data alignment of the machine.</span></div> -<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="comment"></span><span class="comment">/*! \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="comment"> \param x pointer to align</span></div> -<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="comment"></span> </div> -<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="comment"> Some machines require strict data alignment. The default is 8 bytes.</span></div> -<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment"> User can customize by defining the RAPIDJSON_ALIGN function macro.</span></div> -<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="preprocessor">#ifndef RAPIDJSON_ALIGN</span></div> -<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242"> 289</a></span> <span class="preprocessor">#define RAPIDJSON_ALIGN(x) (((x) + static_cast<size_t>(7u)) & ~static_cast<size_t>(7u))</span></div> -<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="comment"></span> </div> -<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="comment"></span><span class="comment">// RAPIDJSON_UINT64_C2</span></div> -<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="comment"></span> </div> -<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="comment">//! Construct a 64-bit literal by a pair of 32-bit integer.</span></div> -<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="comment"> 64-bit literal with or without ULL suffix is prone to compiler warnings.</span></div> -<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment"> UINT64_C() is C macro which cause compilation problems.</span></div> -<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment"> Use this macro to define 64-bit constants by a pair of 32-bit integer.</span></div> -<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor">#ifndef RAPIDJSON_UINT64_C2</span></div> -<div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f"> 302</a></span> <span class="preprocessor">#define RAPIDJSON_UINT64_C2(high32, low32) ((static_cast<uint64_t>(high32) << 32) | static_cast<uint64_t>(low32))</span></div> -<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="comment"></span> </div> -<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="comment"></span><span class="comment">// RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="comment"></span> </div> -<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="comment">//! Use only lower 48-bit address for some pointers.</span></div> -<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment"></span> </div> -<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment"> This optimization uses the fact that current X86-64 architecture only implement lower 48-bit virtual address.</span></div> -<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment"> The higher 16-bit can be used for storing other data.</span></div> -<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="comment"> \c GenericValue uses this optimization to reduce its size form 24 bytes to 16 bytes in 64-bit architecture.</span></div> -<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor">#ifndef RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="preprocessor">#if defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64)</span></div> -<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="preprocessor">#define RAPIDJSON_48BITPOINTER_OPTIMIZATION 1</span></div> -<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185"> 320</a></span> <span class="preprocessor">#define RAPIDJSON_48BITPOINTER_OPTIMIZATION 0</span></div> +<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="comment"></span><span class="preprocessor">#ifdef RAPIDJSON_DOXYGEN_RUNNING</span></div> +<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c"> 208</a></span> <span class="preprocessor">#define RAPIDJSON_NO_INT64DEFINE</span></div> +<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor">#endif // RAPIDJSON_NO_INT64TYPEDEF</span></div> +<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="comment"></span> </div> +<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment"></span><span class="comment">// RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  </div> +<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor">#ifndef RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="comment"></span><span class="preprocessor">#if defined(_MSC_VER) && defined(NDEBUG)</span></div> +<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE __forceinline</span></div> +<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor">#elif defined(__GNUC__) && __GNUC__ >= 4 && defined(NDEBUG)</span></div> +<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE __attribute__((always_inline))</span></div> +<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="preprocessor">#define RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment">//!@endcond</span></div> +<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="comment"></span><span class="preprocessor">#endif // RAPIDJSON_FORCEINLINE</span></div> +<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="comment"></span> </div> +<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c"> 229</a></span> <span class="preprocessor">#define RAPIDJSON_LITTLEENDIAN 0 </span><span class="comment">//!< Little endian machine</span></div> +<div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974"> 230</a></span> <span class="comment"></span>#define RAPIDJSON_BIGENDIAN 1 <span class="comment">//!< Big endian machine</span></div> +<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="comment"></span> </div> +<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="comment">//! Endianness of the machine.</span></div> +<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="comment"> \def RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="comment"></span> </div> +<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="comment"> GCC 4.6 provided macro for detecting endianness of the target machine. But other</span></div> +<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="comment"> compilers may not have this. User can define RAPIDJSON_ENDIAN to either</span></div> +<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="comment"> \ref RAPIDJSON_LITTLEENDIAN or \ref RAPIDJSON_BIGENDIAN.</span></div> +<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="comment"></span> </div> +<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="comment"> Default detection implemented with reference to</span></div> +<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="comment"> \li https://gcc.gnu.org/onlinedocs/gcc-4.6.0/cpp/Common-Predefined-Macros.html</span></div> +<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="comment"> \li http://www.boost.org/doc/libs/1_42_0/boost/detail/endian.hpp</span></div> +<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor">#ifndef RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="comment">// Detect with GCC 4.6's macro</span></div> +<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="preprocessor"># ifdef __BYTE_ORDER__</span></div> +<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"># if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__</span></div> +<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"># elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__</span></div> +<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> +<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor"># else</span></div> +<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN.</span></div> +<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor"># endif // __BYTE_ORDER__</span></div> +<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="comment">// Detect with GLIBC's endian.h</span></div> +<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"># elif defined(__GLIBC__)</span></div> +<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"># include <endian.h></span></div> +<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"># if (__BYTE_ORDER == __LITTLE_ENDIAN)</span></div> +<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"># elif (__BYTE_ORDER == __BIG_ENDIAN)</span></div> +<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> +<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor"># else</span></div> +<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN.</span></div> +<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor"># endif // __GLIBC__</span></div> +<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="comment">// Detect with _LITTLE_ENDIAN and _BIG_ENDIAN macro</span></div> +<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="preprocessor"># elif defined(_LITTLE_ENDIAN) && !defined(_BIG_ENDIAN)</span></div> +<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="preprocessor"># elif defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN)</span></div> +<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> +<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="comment">// Detect with architecture macros</span></div> +<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor"># elif defined(__sparc) || defined(__sparc__) || defined(_POWER) || defined(__powerpc__) || defined(__ppc__) || defined(__hpux) || defined(__hppa) || defined(_MIPSEB) || defined(_POWER) || defined(__s390__)</span></div> +<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_BIGENDIAN</span></div> +<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="preprocessor"># elif defined(__i386__) || defined(__alpha__) || defined(__ia64) || defined(__ia64__) || defined(_M_IX86) || defined(_M_IA64) || defined(_M_ALPHA) || defined(__amd64) || defined(__amd64__) || defined(_M_AMD64) || defined(__x86_64) || defined(__x86_64__) || defined(_M_X64) || defined(__bfin__)</span></div> +<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor"># elif defined(_MSC_VER) && (defined(_M_ARM) || defined(_M_ARM64))</span></div> +<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor"># define RAPIDJSON_ENDIAN RAPIDJSON_LITTLEENDIAN</span></div> +<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="preprocessor"># elif defined(RAPIDJSON_DOXYGEN_RUNNING)</span></div> +<div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07"> 278</a></span> <span class="preprocessor"># define RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="preprocessor"># else</span></div> +<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="preprocessor"># error Unknown machine endianness detected. User needs to define RAPIDJSON_ENDIAN. </span></div> +<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="preprocessor"># endif</span></div> +<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor">#endif // RAPIDJSON_ENDIAN</span></div> +<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="comment"></span> </div> +<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="comment"></span><span class="comment">// RAPIDJSON_64BIT</span></div> +<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment"></span> </div> +<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="comment">//! Whether using 64-bit architecture</span></div> +<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment"></span><span class="preprocessor">#ifndef RAPIDJSON_64BIT</span></div> +<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="preprocessor">#if defined(__LP64__) || (defined(__x86_64__) && defined(__ILP32__)) || defined(_WIN64) || defined(__EMSCRIPTEN__)</span></div> +<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor">#define RAPIDJSON_64BIT 1</span></div> +<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52"> 292</a></span> <span class="preprocessor">#define RAPIDJSON_64BIT 0</span></div> +<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="preprocessor">#endif // RAPIDJSON_64BIT</span></div> +<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="comment"></span> </div> +<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ALIGN</span></div> +<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment"></span> </div> +<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment">//! Data alignment of the machine.</span></div> +<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment"></span><span class="comment">/*! \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="comment"> \param x pointer to align</span></div> +<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="comment"></span> </div> +<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="comment"> Some machines require strict data alignment. The default is 8 bytes.</span></div> +<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="comment"> User can customize by defining the RAPIDJSON_ALIGN function macro.</span></div> +<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="preprocessor">#ifndef RAPIDJSON_ALIGN</span></div> +<div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242"> 307</a></span> <span class="preprocessor">#define RAPIDJSON_ALIGN(x) (((x) + static_cast<size_t>(7u)) & ~static_cast<size_t>(7u))</span></div> +<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment"></span> </div> +<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment"></span><span class="comment">// RAPIDJSON_UINT64_C2</span></div> +<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment"></span> </div> +<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment">//! Construct a 64-bit literal by a pair of 32-bit integer.</span></div> +<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="comment"> 64-bit literal with or without ULL suffix is prone to compiler warnings.</span></div> +<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="comment"> UINT64_C() is C macro which cause compilation problems.</span></div> +<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment"> Use this macro to define 64-bit constants by a pair of 32-bit integer.</span></div> +<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor">#ifndef RAPIDJSON_UINT64_C2</span></div> +<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f"> 320</a></span> <span class="preprocessor">#define RAPIDJSON_UINT64_C2(high32, low32) ((static_cast<uint64_t>(high32) << 32) | static_cast<uint64_t>(low32))</span></div> <div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="preprocessor">#endif // RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> -<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  </div> -<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor">#if RAPIDJSON_48BITPOINTER_OPTIMIZATION == 1</span></div> -<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="preprocessor">#if RAPIDJSON_64BIT != 1</span></div> -<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor">#error RAPIDJSON_48BITPOINTER_OPTIMIZATION can only be set to 1 when RAPIDJSON_64BIT=1</span></div> -<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="preprocessor">#define RAPIDJSON_SETPOINTER(type, p, x) (p = reinterpret_cast<type *>((reinterpret_cast<uintptr_t>(p) & static_cast<uintptr_t>(RAPIDJSON_UINT64_C2(0xFFFF0000, 0x00000000))) | reinterpret_cast<uintptr_t>(reinterpret_cast<const void*>(x))))</span></div> -<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="preprocessor">#define RAPIDJSON_GETPOINTER(type, p) (reinterpret_cast<type *>(reinterpret_cast<uintptr_t>(p) & static_cast<uintptr_t>(RAPIDJSON_UINT64_C2(0x0000FFFF, 0xFFFFFFFF))))</span></div> -<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="preprocessor">#define RAPIDJSON_SETPOINTER(type, p, x) (p = (x))</span></div> -<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="preprocessor">#define RAPIDJSON_GETPOINTER(type, p) (p)</span></div> -<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="comment"></span> </div> -<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="comment"></span><span class="comment">// RAPIDJSON_SSE2/RAPIDJSON_SSE42/RAPIDJSON_NEON/RAPIDJSON_SIMD</span></div> -<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="comment"></span> </div> -<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="comment">/*! \def RAPIDJSON_SIMD</span></div> -<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="comment"> \brief Enable SSE2/SSE4.2/Neon optimization.</span></div> -<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="comment"></span> </div> -<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="comment"> RapidJSON supports optimized implementations for some parsing operations</span></div> -<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="comment"> based on the SSE2, SSE4.2 or NEon SIMD extensions on modern Intel</span></div> -<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="comment"> or ARM compatible processors.</span></div> -<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="comment"></span> </div> -<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="comment"> To enable these optimizations, three different symbols can be defined;</span></div> -<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="comment"> // Enable SSE2 optimization.</span></div> -<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="comment"> #define RAPIDJSON_SSE2</span></div> -<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="comment"></span> </div> -<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="comment"> // Enable SSE4.2 optimization.</span></div> -<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="comment"> #define RAPIDJSON_SSE42</span></div> -<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="comment"></span> </div> -<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="comment"> // Enable ARM Neon optimization.</span></div> -<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="comment"> #define RAPIDJSON_NEON</span></div> -<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="comment"></span> </div> -<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment"> \c RAPIDJSON_SSE42 takes precedence over SSE2, if both are defined.</span></div> -<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="comment"></span> </div> -<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="comment"> If any of these symbols is defined, RapidJSON defines the macro</span></div> -<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="comment"> \c RAPIDJSON_SIMD to indicate the availability of the optimized code.</span></div> -<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor">#if defined(RAPIDJSON_SSE2) || defined(RAPIDJSON_SSE42) \</span></div> -<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="preprocessor"> || defined(RAPIDJSON_NEON) || defined(RAPIDJSON_DOXYGEN_RUNNING)</span></div> -<div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b"> 366</a></span> <span class="preprocessor">#define RAPIDJSON_SIMD</span></div> -<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="comment"></span> </div> +<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="comment"></span><span class="comment">// RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="comment"></span> </div> +<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="comment">//! Use only lower 48-bit address for some pointers.</span></div> +<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="comment"></span> </div> +<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="comment"> This optimization uses the fact that current X86-64 architecture only implement lower 48-bit virtual address.</span></div> +<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="comment"> The higher 16-bit can be used for storing other data.</span></div> +<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment"> \c GenericValue uses this optimization to reduce its size form 24 bytes to 16 bytes in 64-bit architecture.</span></div> +<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="preprocessor">#ifndef RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="preprocessor">#if defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64)</span></div> +<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="preprocessor">#define RAPIDJSON_48BITPOINTER_OPTIMIZATION 1</span></div> +<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185"> 338</a></span> <span class="preprocessor">#define RAPIDJSON_48BITPOINTER_OPTIMIZATION 0</span></div> +<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="preprocessor">#endif // RAPIDJSON_48BITPOINTER_OPTIMIZATION</span></div> +<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  </div> +<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="preprocessor">#if RAPIDJSON_48BITPOINTER_OPTIMIZATION == 1</span></div> +<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="preprocessor">#if RAPIDJSON_64BIT != 1</span></div> +<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="preprocessor">#error RAPIDJSON_48BITPOINTER_OPTIMIZATION can only be set to 1 when RAPIDJSON_64BIT=1</span></div> +<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="preprocessor">#define RAPIDJSON_SETPOINTER(type, p, x) (p = reinterpret_cast<type *>((reinterpret_cast<uintptr_t>(p) & static_cast<uintptr_t>(RAPIDJSON_UINT64_C2(0xFFFF0000, 0x00000000))) | reinterpret_cast<uintptr_t>(reinterpret_cast<const void*>(x))))</span></div> +<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor">#define RAPIDJSON_GETPOINTER(type, p) (reinterpret_cast<type *>(reinterpret_cast<uintptr_t>(p) & static_cast<uintptr_t>(RAPIDJSON_UINT64_C2(0x0000FFFF, 0xFFFFFFFF))))</span></div> +<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="preprocessor">#define RAPIDJSON_SETPOINTER(type, p, x) (p = (x))</span></div> +<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="preprocessor">#define RAPIDJSON_GETPOINTER(type, p) (p)</span></div> +<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="comment"></span> </div> +<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="comment"></span><span class="comment">// RAPIDJSON_SSE2/RAPIDJSON_SSE42/RAPIDJSON_NEON/RAPIDJSON_SIMD</span></div> +<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="comment"></span> </div> +<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="comment">/*! \def RAPIDJSON_SIMD</span></div> +<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="comment"> \brief Enable SSE2/SSE4.2/Neon optimization.</span></div> +<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment"></span> </div> +<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="comment"> RapidJSON supports optimized implementations for some parsing operations</span></div> +<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="comment"> based on the SSE2, SSE4.2 or NEon SIMD extensions on modern Intel</span></div> +<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="comment"> or ARM compatible processors.</span></div> +<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="comment"></span> </div> +<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="comment"> To enable these optimizations, three different symbols can be defined;</span></div> +<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="comment"> // Enable SSE2 optimization.</span></div> +<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="comment"> #define RAPIDJSON_SSE2</span></div> <div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="comment"></span> </div> -<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  </div> -<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="preprocessor">#ifndef RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="comment">/*! \def RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="comment"> \brief User-provided \c SizeType definition.</span></div> +<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="comment"> // Enable SSE4.2 optimization.</span></div> +<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"> #define RAPIDJSON_SSE42</span></div> +<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="comment"></span> </div> +<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="comment"> // Enable ARM Neon optimization.</span></div> +<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="comment"> #define RAPIDJSON_NEON</span></div> +<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="comment"> \endcode</span></div> <div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="comment"></span> </div> -<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="comment"> In order to avoid using 32-bit size types for indexing strings and arrays,</span></div> -<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="comment"> define this preprocessor symbol and provide the type rapidjson::SizeType</span></div> -<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="comment"> before including RapidJSON:</span></div> -<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="comment"> \code</span></div> -<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment"> #define RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="comment"> namespace rapidjson { typedef ::std::size_t SizeType; }</span></div> -<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="comment"> #include "rapidjson/..."</span></div> -<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="comment"> \endcode</span></div> -<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment"></span> </div> -<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"> \see rapidjson::SizeType</span></div> -<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="preprocessor">#ifdef RAPIDJSON_DOXYGEN_RUNNING</span></div> -<div class="line"><a name="l00389"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f"> 389</a></span> <span class="preprocessor">#define RAPIDJSON_NO_SIZETYPEDEFINE</span></div> -<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="namespacerapidjson.html"> 391</a></span> RAPIDJSON_NAMESPACE_BEGIN<span class="comment"></span></div> -<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="comment">//! Size type (for string lengths, array sizes, etc.)</span></div> -<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="comment"></span><span class="comment">/*! RapidJSON uses 32-bit array/string indices even on 64-bit platforms,</span></div> -<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="comment"> instead of using \c size_t. Users may override the SizeType by defining</span></div> -<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="comment"> \ref RAPIDJSON_NO_SIZETYPEDEFINE.</span></div> -<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00397"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84"> 397</a></span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>;</div> -<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  </div> -<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="comment">// always import std::size_t to rapidjson namespace</span></div> -<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> RAPIDJSON_NAMESPACE_BEGIN</div> -<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="keyword">using</span> std::size_t;</div> -<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment"></span> </div> -<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ASSERT</span></div> -<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="comment"></span> </div> -<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="comment">//! Assertion.</span></div> -<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="comment"></span><span class="comment">/*! \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="comment"> By default, rapidjson uses C \c assert() for internal assertions.</span></div> -<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="comment"> User can override it by defining RAPIDJSON_ASSERT(x) macro.</span></div> -<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="comment"></span> </div> -<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="comment"> \note Parsing errors are handled and can be customized by the</span></div> -<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="comment"> \ref RAPIDJSON_ERRORS APIs.</span></div> -<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor">#ifndef RAPIDJSON_ASSERT</span></div> -<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor">#include <cassert></span></div> -<div class="line"><a name="l00419"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c"> 419</a></span> <span class="preprocessor">#define RAPIDJSON_ASSERT(x) assert(x)</span></div> -<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor">#endif // RAPIDJSON_ASSERT</span></div> -<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="comment"></span> </div> -<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment"></span><span class="comment">// RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  </div> -<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="comment">// Prefer C++11 static_assert, if available</span></div> -<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="preprocessor">#ifndef RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor">#if RAPIDJSON_CPLUSPLUS >= 201103L || ( defined(_MSC_VER) && _MSC_VER >= 1800 )</span></div> -<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT(x) \</span></div> -<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor"> static_assert(x, RAPIDJSON_STRINGIFY(x))</span></div> -<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor">#endif // C++11</span></div> -<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor">#endif // RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  </div> -<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="comment">// Adopt C++03 implementation from boost</span></div> -<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="preprocessor">#ifndef RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor">#ifndef __clang__</span></div> -<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> -<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> RAPIDJSON_NAMESPACE_BEGIN</div> -<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> x> <span class="keyword">struct </span>STATIC_ASSERTION_FAILURE;</div> -<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keyword">template</span> <> <span class="keyword">struct </span>STATIC_ASSERTION_FAILURE<true> { <span class="keyword">enum</span> { value = 1 }; };</div> -<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="keyword">template</span> <<span class="keywordtype">size_t</span> x> <span class="keyword">struct </span>StaticAssertTest {};</div> -<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  </div> -<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> -<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE __attribute__((unused))</span></div> -<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE </span></div> -<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor">#ifndef __clang__</span></div> -<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="comment">//!@endcond</span></div> -<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="comment"></span> </div> -<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="comment">/*! \def RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="comment"> \brief (Internal) macro to check for conditions at compile-time</span></div> -<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="comment"> \param x compile-time condition</span></div> -<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="comment"> \hideinitializer</span></div> -<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00458"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4"> 458</a></span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT(x) \</span></div> -<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="preprocessor"> typedef ::RAPIDJSON_NAMESPACE::StaticAssertTest< \</span></div> -<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor"> sizeof(::RAPIDJSON_NAMESPACE::STATIC_ASSERTION_FAILURE<bool(x) >)> \</span></div> -<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor"> RAPIDJSON_JOIN(StaticAssertTypedef, __LINE__) RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE</span></div> -<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">#endif // RAPIDJSON_STATIC_ASSERT</span></div> -<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="comment"></span> </div> -<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="comment"></span><span class="comment">// RAPIDJSON_LIKELY, RAPIDJSON_UNLIKELY</span></div> -<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="comment"></span> </div> -<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="comment">//! Compiler branching hint for expression with high probability to be true.</span></div> -<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="comment"> \param x Boolean expression likely to be true.</span></div> -<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor">#ifndef RAPIDJSON_LIKELY</span></div> -<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> -<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor">#define RAPIDJSON_LIKELY(x) __builtin_expect(!!(x), 1)</span></div> -<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00476"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1"> 476</a></span> <span class="preprocessor">#define RAPIDJSON_LIKELY(x) (x)</span></div> -<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="comment"></span> </div> -<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="comment">//! Compiler branching hint for expression with low probability to be true.</span></div> -<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="comment"></span><span class="comment">/*!</span></div> -<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="comment"> \param x Boolean expression unlikely to be true.</span></div> -<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor">#ifndef RAPIDJSON_UNLIKELY</span></div> -<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> -<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor">#define RAPIDJSON_UNLIKELY(x) __builtin_expect(!!(x), 0)</span></div> -<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00489"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5"> 489</a></span> <span class="preprocessor">#define RAPIDJSON_UNLIKELY(x) (x)</span></div> -<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="comment"></span> </div> -<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="comment"></span><span class="comment">// Helpers</span></div> -<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="comment"></span> </div> -<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="comment"> \c RAPIDJSON_SSE42 takes precedence over SSE2, if both are defined.</span></div> +<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="comment"></span> </div> +<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="comment"> If any of these symbols is defined, RapidJSON defines the macro</span></div> +<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="comment"> \c RAPIDJSON_SIMD to indicate the availability of the optimized code.</span></div> +<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor">#if defined(RAPIDJSON_SSE2) || defined(RAPIDJSON_SSE42) \</span></div> +<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="preprocessor"> || defined(RAPIDJSON_NEON) || defined(RAPIDJSON_DOXYGEN_RUNNING)</span></div> +<div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b"> 384</a></span> <span class="preprocessor">#define RAPIDJSON_SIMD</span></div> +<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment"></span> </div> +<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  </div> +<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor">#ifndef RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="comment">/*! \def RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="comment"> \brief User-provided \c SizeType definition.</span></div> +<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="comment"></span> </div> +<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="comment"> In order to avoid using 32-bit size types for indexing strings and arrays,</span></div> +<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="comment"> define this preprocessor symbol and provide the type rapidjson::SizeType</span></div> +<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="comment"> before including RapidJSON:</span></div> +<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="comment"> \code</span></div> +<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="comment"> #define RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="comment"> namespace rapidjson { typedef ::std::size_t SizeType; }</span></div> +<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="comment"> #include "rapidjson/..."</span></div> +<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="comment"> \endcode</span></div> +<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="comment"></span> </div> +<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="comment"> \see rapidjson::SizeType</span></div> +<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor">#ifdef RAPIDJSON_DOXYGEN_RUNNING</span></div> +<div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f"> 407</a></span> <span class="preprocessor">#define RAPIDJSON_NO_SIZETYPEDEFINE</span></div> +<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00409"></a><span class="lineno"><a class="line" href="namespacerapidjson.html"> 409</a></span> RAPIDJSON_NAMESPACE_BEGIN<span class="comment"></span></div> +<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="comment">//! Size type (for string lengths, array sizes, etc.)</span></div> +<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="comment"></span><span class="comment">/*! RapidJSON uses 32-bit array/string indices even on 64-bit platforms,</span></div> +<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="comment"> instead of using \c size_t. Users may override the SizeType by defining</span></div> +<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="comment"> \ref RAPIDJSON_NO_SIZETYPEDEFINE.</span></div> +<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84"> 415</a></span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <a class="code" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a>;</div> +<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  </div> +<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="comment">// always import std::size_t to rapidjson namespace</span></div> +<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> RAPIDJSON_NAMESPACE_BEGIN</div> +<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keyword">using</span> std::size_t;</div> +<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment"></span> </div> +<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="comment"></span><span class="comment">// RAPIDJSON_ASSERT</span></div> +<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="comment"></span> </div> +<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="comment">//! Assertion.</span></div> +<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="comment"></span><span class="comment">/*! \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="comment"> By default, rapidjson uses C \c assert() for internal assertions.</span></div> +<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="comment"> User can override it by defining RAPIDJSON_ASSERT(x) macro.</span></div> +<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="comment"></span> </div> +<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="comment"> \note Parsing errors are handled and can be customized by the</span></div> +<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="comment"> \ref RAPIDJSON_ERRORS APIs.</span></div> +<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor">#ifndef RAPIDJSON_ASSERT</span></div> +<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="preprocessor">#include <cassert></span></div> +<div class="line"><a name="l00437"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c"> 437</a></span> <span class="preprocessor">#define RAPIDJSON_ASSERT(x) assert(x)</span></div> +<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor">#endif // RAPIDJSON_ASSERT</span></div> +<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="comment"></span> </div> +<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="comment"></span><span class="comment">// RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>  </div> +<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="comment">// Prefer C++11 static_assert, if available</span></div> +<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor">#ifndef RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor">#if RAPIDJSON_CPLUSPLUS >= 201103L || ( defined(_MSC_VER) && _MSC_VER >= 1800 )</span></div> +<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT(x) \</span></div> +<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="preprocessor"> static_assert(x, RAPIDJSON_STRINGIFY(x))</span></div> +<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor">#endif // C++11</span></div> +<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor">#endif // RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  </div> +<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="comment">// Adopt C++03 implementation from boost</span></div> +<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor">#ifndef RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor">#ifndef __clang__</span></div> +<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> RAPIDJSON_NAMESPACE_BEGIN</div> +<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="keyword">template</span> <<span class="keywordtype">bool</span> x> <span class="keyword">struct </span>STATIC_ASSERTION_FAILURE;</div> +<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="keyword">template</span> <> <span class="keyword">struct </span>STATIC_ASSERTION_FAILURE<true> { <span class="keyword">enum</span> { value = 1 }; };</div> +<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="keyword">template</span> <<span class="keywordtype">size_t</span> x> <span class="keyword">struct </span>StaticAssertTest {};</div> +<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  </div> +<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> +<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE __attribute__((unused))</span></div> +<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE </span></div> +<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor">#ifndef __clang__</span></div> +<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="comment">//!@endcond</span></div> +<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="comment"></span><span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="comment"></span> </div> +<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="comment">/*! \def RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="comment"> \brief (Internal) macro to check for conditions at compile-time</span></div> +<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="comment"> \param x compile-time condition</span></div> +<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="comment"> \hideinitializer</span></div> +<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00476"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4"> 476</a></span> <span class="preprocessor">#define RAPIDJSON_STATIC_ASSERT(x) \</span></div> +<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor"> typedef ::RAPIDJSON_NAMESPACE::StaticAssertTest< \</span></div> +<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor"> sizeof(::RAPIDJSON_NAMESPACE::STATIC_ASSERTION_FAILURE<bool(x) >)> \</span></div> +<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"> RAPIDJSON_JOIN(StaticAssertTypedef, __LINE__) RAPIDJSON_STATIC_ASSERT_UNUSED_ATTRIBUTE</span></div> +<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor">#endif // RAPIDJSON_STATIC_ASSERT</span></div> +<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="comment"></span> </div> +<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="comment"></span><span class="comment">// RAPIDJSON_LIKELY, RAPIDJSON_UNLIKELY</span></div> +<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="comment"></span> </div> +<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="comment">//! Compiler branching hint for expression with high probability to be true.</span></div> +<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="comment"> \param x Boolean expression likely to be true.</span></div> +<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor">#ifndef RAPIDJSON_LIKELY</span></div> +<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> +<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor">#define RAPIDJSON_LIKELY(x) __builtin_expect(!!(x), 1)</span></div> +<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00494"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1"> 494</a></span> <span class="preprocessor">#define RAPIDJSON_LIKELY(x) (x)</span></div> +<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="comment"></span> </div> -<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor">#define RAPIDJSON_MULTILINEMACRO_BEGIN do { </span></div> -<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor">#define RAPIDJSON_MULTILINEMACRO_END \</span></div> -<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor">} while((void)0, 0)</span></div> -<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  </div> -<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="comment">// adopted from Boost</span></div> -<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor">#define RAPIDJSON_VERSION_CODE(x,y,z) \</span></div> -<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor"> (((x)*100000) + ((y)*100) + (z))</span></div> -<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  </div> -<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor">#if defined(__has_builtin)</span></div> -<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor">#define RAPIDJSON_HAS_BUILTIN(x) __has_builtin(x)</span></div> -<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor">#define RAPIDJSON_HAS_BUILTIN(x) 0</span></div> -<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="comment"></span> </div> -<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="comment"></span><span class="comment">// RAPIDJSON_DIAG_PUSH/POP, RAPIDJSON_DIAG_OFF</span></div> -<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  </div> -<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="preprocessor">#if defined(__GNUC__)</span></div> -<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor">#define RAPIDJSON_GNUC \</span></div> -<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor"> RAPIDJSON_VERSION_CODE(__GNUC__,__GNUC_MINOR__,__GNUC_PATCHLEVEL__)</span></div> -<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="comment">//! Compiler branching hint for expression with low probability to be true.</span></div> +<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="comment"></span><span class="comment">/*!</span></div> +<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="comment"> \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="comment"> \param x Boolean expression unlikely to be true.</span></div> +<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor">#ifndef RAPIDJSON_UNLIKELY</span></div> +<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor">#if defined(__GNUC__) || defined(__clang__)</span></div> +<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor">#define RAPIDJSON_UNLIKELY(x) __builtin_expect(!!(x), 0)</span></div> +<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00507"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5"> 507</a></span> <span class="preprocessor">#define RAPIDJSON_UNLIKELY(x) (x)</span></div> +<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="comment"></span> </div> +<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="comment"></span><span class="comment">// Helpers</span></div> +<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="comment"></span> </div> +<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="comment">//!@cond RAPIDJSON_HIDDEN_FROM_DOXYGEN</span></div> +<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="comment"></span> </div> +<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor">#define RAPIDJSON_MULTILINEMACRO_BEGIN do { </span></div> +<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor">#define RAPIDJSON_MULTILINEMACRO_END \</span></div> +<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">} while((void)0, 0)</span></div> <div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  </div> -<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="preprocessor">#if defined(__clang__) || (defined(RAPIDJSON_GNUC) && RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,2,0))</span></div> -<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  </div> -<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor">#define RAPIDJSON_PRAGMA(x) _Pragma(RAPIDJSON_STRINGIFY(x))</span></div> -<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PRAGMA(x) RAPIDJSON_PRAGMA(GCC diagnostic x)</span></div> -<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) \</span></div> -<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor"> RAPIDJSON_DIAG_PRAGMA(ignored RAPIDJSON_STRINGIFY(RAPIDJSON_JOIN(-W,x)))</span></div> -<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  </div> -<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="comment">// push/pop support in Clang and GCC>=4.6</span></div> -<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor">#if defined(__clang__) || (defined(RAPIDJSON_GNUC) && RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0))</span></div> -<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH RAPIDJSON_DIAG_PRAGMA(push)</span></div> -<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP RAPIDJSON_DIAG_PRAGMA(pop)</span></div> -<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="preprocessor">#else // GCC >= 4.2, < 4.6</span></div> -<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  </div> -<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="preprocessor">#elif defined(_MSC_VER)</span></div> +<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="comment">// adopted from Boost</span></div> +<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> <span class="preprocessor">#define RAPIDJSON_VERSION_CODE(x,y,z) \</span></div> +<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor"> (((x)*100000) + ((y)*100) + (z))</span></div> +<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  </div> +<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor">#if defined(__has_builtin)</span></div> +<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor">#define RAPIDJSON_HAS_BUILTIN(x) __has_builtin(x)</span></div> +<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="preprocessor">#define RAPIDJSON_HAS_BUILTIN(x) 0</span></div> +<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="comment"></span> </div> +<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="comment"></span><span class="comment">// RAPIDJSON_DIAG_PUSH/POP, RAPIDJSON_DIAG_OFF</span></div> +<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  </div> +<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor">#if defined(__GNUC__)</span></div> +<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="preprocessor">#define RAPIDJSON_GNUC \</span></div> +<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="preprocessor"> RAPIDJSON_VERSION_CODE(__GNUC__,__GNUC_MINOR__,__GNUC_PATCHLEVEL__)</span></div> +<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00537"></a><span class="lineno"> 537</span>  </div> -<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="comment">// pragma (MSVC specific)</span></div> -<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="preprocessor">#define RAPIDJSON_PRAGMA(x) __pragma(x)</span></div> -<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PRAGMA(x) RAPIDJSON_PRAGMA(warning(x))</span></div> -<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  </div> -<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) RAPIDJSON_DIAG_PRAGMA(disable: x)</span></div> -<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH RAPIDJSON_DIAG_PRAGMA(push)</span></div> -<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP RAPIDJSON_DIAG_PRAGMA(pop)</span></div> -<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  </div> -<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>  </div> -<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> -<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  </div> -<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor">#endif // RAPIDJSON_DIAG_*</span></div> -<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="comment"></span> </div> -<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="comment"></span><span class="comment">// C++11 features</span></div> -<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  </div> -<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11 (RAPIDJSON_CPLUSPLUS >= 201103L)</span></div> -<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  </div> -<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> -<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor">#elif defined(__clang__)</span></div> -<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor">#if __has_feature(cxx_rvalue_references) && \</span></div> -<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="preprocessor"> (defined(_MSC_VER) || defined(_LIBCPP_VERSION) || defined(__GLIBCXX__) && __GLIBCXX__ >= 20080306)</span></div> -<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> -<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 0</span></div> -<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,3,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> -<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1600) || \</span></div> -<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> +<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="preprocessor">#if defined(__clang__) || (defined(RAPIDJSON_GNUC) && RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,2,0))</span></div> +<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  </div> +<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor">#define RAPIDJSON_PRAGMA(x) _Pragma(RAPIDJSON_STRINGIFY(x))</span></div> +<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PRAGMA(x) RAPIDJSON_PRAGMA(GCC diagnostic x)</span></div> +<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) \</span></div> +<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="preprocessor"> RAPIDJSON_DIAG_PRAGMA(ignored RAPIDJSON_STRINGIFY(RAPIDJSON_JOIN(-W,x)))</span></div> +<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>  </div> +<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="comment">// push/pop support in Clang and GCC>=4.6</span></div> +<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="preprocessor">#if defined(__clang__) || (defined(RAPIDJSON_GNUC) && RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0))</span></div> +<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH RAPIDJSON_DIAG_PRAGMA(push)</span></div> +<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP RAPIDJSON_DIAG_PRAGMA(pop)</span></div> +<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="preprocessor">#else // GCC >= 4.2, < 4.6</span></div> +<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  </div> +<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="preprocessor">#elif defined(_MSC_VER)</span></div> +<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  </div> +<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="comment">// pragma (MSVC specific)</span></div> +<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor">#define RAPIDJSON_PRAGMA(x) __pragma(x)</span></div> +<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PRAGMA(x) RAPIDJSON_PRAGMA(warning(x))</span></div> +<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  </div> +<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) RAPIDJSON_DIAG_PRAGMA(disable: x)</span></div> +<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH RAPIDJSON_DIAG_PRAGMA(push)</span></div> +<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP RAPIDJSON_DIAG_PRAGMA(pop)</span></div> +<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  </div> +<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  </div> +<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="preprocessor">#define RAPIDJSON_DIAG_OFF(x) </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor">#define RAPIDJSON_DIAG_PUSH </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor">#define RAPIDJSON_DIAG_POP </span><span class="comment">/* ignored */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  </div> +<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor">#endif // RAPIDJSON_DIAG_*</span></div> +<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="comment"></span> </div> +<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="comment"></span><span class="comment">// C++11 features</span></div> <div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  </div> -<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> -<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 0</span></div> -<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> -<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  </div> -<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> -<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> -<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 1</span></div> -<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="preprocessor">#elif defined(__clang__)</span></div> -<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT __has_feature(cxx_noexcept)</span></div> -<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> -<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1900) || \</span></div> -<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> -<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 1</span></div> -<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 0</span></div> -<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor">#ifndef RAPIDJSON_NOEXCEPT</span></div> -<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> -<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT noexcept</span></div> -<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT throw()</span></div> -<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> -<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>  </div> -<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="comment">// no automatic detection, yet</span></div> -<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_TYPETRAITS</span></div> -<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor">#if (defined(_MSC_VER) && _MSC_VER >= 1700)</span></div> -<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_TYPETRAITS 1</span></div> -<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_TYPETRAITS 0</span></div> -<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>  </div> -<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> -<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="preprocessor">#if defined(__clang__)</span></div> -<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR __has_feature(cxx_range_for)</span></div> -<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> -<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1700) || \</span></div> -<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> -<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR 1</span></div> -<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR 0</span></div> -<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> -<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="comment"></span> </div> -<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="comment"></span><span class="comment">// C++17 features</span></div> -<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>  </div> -<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX17</span></div> -<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX17 (RAPIDJSON_CPLUSPLUS >= 201703L)</span></div> -<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>  </div> -<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX17</span></div> -<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH [[fallthrough]]</span></div> -<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="preprocessor">#elif defined(__has_cpp_attribute)</span></div> -<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor"># if __has_cpp_attribute(clang::fallthrough)</span></div> -<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH [[clang::fallthrough]]</span></div> -<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="preprocessor"># elif __has_cpp_attribute(fallthrough)</span></div> -<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH __attribute__((fallthrough))</span></div> -<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor"># else</span></div> -<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH</span></div> -<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="preprocessor"># endif</span></div> +<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11 (RAPIDJSON_CPLUSPLUS >= 201103L)</span></div> +<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  </div> +<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> +<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor">#elif defined(__clang__)</span></div> +<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="preprocessor">#if __has_feature(cxx_rvalue_references) && \</span></div> +<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="preprocessor"> (defined(_MSC_VER) || defined(_LIBCPP_VERSION) || defined(__GLIBCXX__) && __GLIBCXX__ >= 20080306)</span></div> +<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> +<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 0</span></div> +<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,3,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> +<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1600) || \</span></div> +<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> +<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  </div> +<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 1</span></div> +<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RVALUE_REFS 0</span></div> +<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>  </div> +<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_RVALUE_REFS</span></div> +<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor">#include <utility></span> <span class="comment">// std::move</span></div> +<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>  </div> +<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> +<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11</span></div> +<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 1</span></div> +<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor">#elif defined(__clang__)</span></div> +<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT __has_feature(cxx_noexcept)</span></div> +<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> +<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1900) || \</span></div> +<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> +<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 1</span></div> +<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_NOEXCEPT 0</span></div> +<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor">#ifndef RAPIDJSON_NOEXCEPT</span></div> +<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> +<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT noexcept</span></div> +<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT throw()</span></div> +<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_NOEXCEPT</span></div> +<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>  </div> +<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="comment">// no automatic detection, yet</span></div> +<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_TYPETRAITS</span></div> +<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="preprocessor">#if (defined(_MSC_VER) && _MSC_VER >= 1700)</span></div> +<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_TYPETRAITS 1</span></div> +<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_TYPETRAITS 0</span></div> +<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>  </div> +<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> +<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="preprocessor">#if defined(__clang__)</span></div> +<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR __has_feature(cxx_range_for)</span></div> +<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor">#elif (defined(RAPIDJSON_GNUC) && (RAPIDJSON_GNUC >= RAPIDJSON_VERSION_CODE(4,6,0)) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || \</span></div> +<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor"> (defined(_MSC_VER) && _MSC_VER >= 1700) || \</span></div> +<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="preprocessor"> (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x5140 && defined(__GXX_EXPERIMENTAL_CXX0X__))</span></div> +<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR 1</span></div> <div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH</span></div> +<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX11_RANGE_FOR 0</span></div> <div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="comment"></span> </div> -<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="comment">//!@endcond</span></div> -<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="comment"></span><span class="comment"></span> </div> -<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="comment">//! Assertion (in non-throwing contexts).</span></div> -<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <span class="comment"></span><span class="comment"> /*! \ingroup RAPIDJSON_CONFIG</span></div> -<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="comment"> Some functions provide a \c noexcept guarantee, if the compiler supports it.</span></div> -<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="comment"> In these cases, the \ref RAPIDJSON_ASSERT macro cannot be overridden to</span></div> -<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="comment"> throw an exception. This macro adds a separate customization point for</span></div> -<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="comment"> such cases.</span></div> -<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="comment"></span> </div> -<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="comment"> Defaults to C \c assert() (as \ref RAPIDJSON_ASSERT), if \c noexcept is</span></div> -<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="comment"> supported, and to \ref RAPIDJSON_ASSERT otherwise.</span></div> -<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="comment"> */</span></div> -<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="comment"></span> </div> -<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NOEXCEPT_ASSERT</span></div> -<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>  </div> -<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="preprocessor">#ifndef RAPIDJSON_NOEXCEPT_ASSERT</span></div> -<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="preprocessor">#ifdef RAPIDJSON_ASSERT_THROWS</span></div> -<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="preprocessor">#include <cassert></span></div> -<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT_ASSERT(x) assert(x)</span></div> -<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="preprocessor">#else</span></div> -<div class="line"><a name="l00665"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952"> 665</a></span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT_ASSERT(x) RAPIDJSON_ASSERT(x)</span></div> -<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="preprocessor">#endif // RAPIDJSON_ASSERT_THROWS</span></div> -<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="preprocessor">#endif // RAPIDJSON_NOEXCEPT_ASSERT</span></div> -<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="comment"></span> </div> -<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="comment"></span><span class="comment">// malloc/realloc/free</span></div> -<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>  </div> -<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="preprocessor">#ifndef RAPIDJSON_MALLOC</span></div> -<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="comment">///! customization point for global \c malloc</span></div> -<div class="line"><a name="l00674"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27"> 674</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_MALLOC(size) std::malloc(size)</span></div> -<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="preprocessor">#ifndef RAPIDJSON_REALLOC</span></div> -<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="comment">///! customization point for global \c realloc</span></div> -<div class="line"><a name="l00678"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67"> 678</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_REALLOC(ptr, new_size) std::realloc(ptr, new_size)</span></div> -<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="preprocessor">#ifndef RAPIDJSON_FREE</span></div> -<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> <span class="comment">///! customization point for global \c free</span></div> -<div class="line"><a name="l00682"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f"> 682</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_FREE(ptr) std::free(ptr)</span></div> -<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="comment"></span> </div> -<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="comment"></span><span class="comment">// new/delete</span></div> -<div class="line"><a name="l00687"></a><span class="lineno"> 687</span>  </div> -<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor">#ifndef RAPIDJSON_NEW</span></div> -<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="comment">///! customization point for global \c new</span></div> -<div class="line"><a name="l00690"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b"> 690</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_NEW(TypeName) new TypeName</span></div> -<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="preprocessor">#ifndef RAPIDJSON_DELETE</span></div> -<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> <span class="comment">///! customization point for global \c delete</span></div> -<div class="line"><a name="l00694"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a"> 694</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_DELETE(x) delete x</span></div> -<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="preprocessor">#endif</span></div> -<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <span class="comment"></span> </div> -<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> -<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="comment"></span><span class="comment">// Type</span></div> -<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="comment"></span> </div> -<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> <span class="comment">/*! \namespace rapidjson</span></div> -<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="comment"> \brief main RapidJSON namespace</span></div> -<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <span class="comment"> \see RAPIDJSON_NAMESPACE</span></div> -<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="comment">*/</span></div> -<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> RAPIDJSON_NAMESPACE_BEGIN</div> -<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="comment"></span> </div> -<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="comment">//! Type of JSON value</span></div> -<div class="line"><a name="l00707"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4"> 707</a></span> <span class="comment"></span><span class="keyword">enum</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> {</div> -<div class="line"><a name="l00708"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"> 708</a></span>  <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a> = 0, <span class="comment">//!< null</span></div> -<div class="line"><a name="l00709"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"> 709</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a> = 1, <span class="comment">//!< false</span></div> -<div class="line"><a name="l00710"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"> 710</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a> = 2, <span class="comment">//!< true</span></div> -<div class="line"><a name="l00711"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"> 711</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a> = 3, <span class="comment">//!< object</span></div> -<div class="line"><a name="l00712"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"> 712</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a> = 4, <span class="comment">//!< array </span></div> -<div class="line"><a name="l00713"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"> 713</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a> = 5, <span class="comment">//!< string</span></div> -<div class="line"><a name="l00714"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"> 714</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a> = 6 <span class="comment">//!< number</span></div> -<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="comment"></span>};</div> -<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>  </div> -<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> RAPIDJSON_NAMESPACE_END</div> -<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>  </div> -<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="preprocessor">#endif // RAPIDJSON_RAPIDJSON_H_</span></div> +<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="preprocessor">#endif // RAPIDJSON_HAS_CXX11_RANGE_FOR</span></div> +<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="comment"></span> </div> +<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="comment"></span><span class="comment">// C++17 features</span></div> +<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  </div> +<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="preprocessor">#ifndef RAPIDJSON_HAS_CXX17</span></div> +<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="preprocessor">#define RAPIDJSON_HAS_CXX17 (RAPIDJSON_CPLUSPLUS >= 201703L)</span></div> +<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>  </div> +<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="preprocessor">#if RAPIDJSON_HAS_CXX17</span></div> +<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH [[fallthrough]]</span></div> +<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="preprocessor">#elif defined(__has_cpp_attribute)</span></div> +<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="preprocessor"># if __has_cpp_attribute(clang::fallthrough)</span></div> +<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH [[clang::fallthrough]]</span></div> +<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="preprocessor"># elif __has_cpp_attribute(fallthrough)</span></div> +<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH __attribute__((fallthrough))</span></div> +<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="preprocessor"># else</span></div> +<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH</span></div> +<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="preprocessor"># endif</span></div> +<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="preprocessor"># define RAPIDJSON_DELIBERATE_FALLTHROUGH</span></div> +<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="comment"></span> </div> +<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="comment">//!@endcond</span></div> +<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="comment"></span><span class="comment"></span> </div> +<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="comment">//! Assertion (in non-throwing contexts).</span></div> +<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="comment"></span><span class="comment"> /*! \ingroup RAPIDJSON_CONFIG</span></div> +<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="comment"> Some functions provide a \c noexcept guarantee, if the compiler supports it.</span></div> +<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="comment"> In these cases, the \ref RAPIDJSON_ASSERT macro cannot be overridden to</span></div> +<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="comment"> throw an exception. This macro adds a separate customization point for</span></div> +<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="comment"> such cases.</span></div> +<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="comment"></span> </div> +<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="comment"> Defaults to C \c assert() (as \ref RAPIDJSON_ASSERT), if \c noexcept is</span></div> +<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="comment"> supported, and to \ref RAPIDJSON_ASSERT otherwise.</span></div> +<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="comment"> */</span></div> +<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="comment"></span> </div> +<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="comment"></span><span class="comment">// RAPIDJSON_NOEXCEPT_ASSERT</span></div> +<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>  </div> +<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="preprocessor">#ifndef RAPIDJSON_NOEXCEPT_ASSERT</span></div> +<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="preprocessor">#ifdef RAPIDJSON_ASSERT_THROWS</span></div> +<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="preprocessor">#include <cassert></span></div> +<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT_ASSERT(x) assert(x)</span></div> +<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="preprocessor">#else</span></div> +<div class="line"><a name="l00687"></a><span class="lineno"><a class="line" href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952"> 687</a></span> <span class="preprocessor">#define RAPIDJSON_NOEXCEPT_ASSERT(x) RAPIDJSON_ASSERT(x)</span></div> +<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor">#endif // RAPIDJSON_ASSERT_THROWS</span></div> +<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="preprocessor">#endif // RAPIDJSON_NOEXCEPT_ASSERT</span></div> +<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="comment"></span> </div> +<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="comment"></span><span class="comment">// malloc/realloc/free</span></div> +<div class="line"><a name="l00693"></a><span class="lineno"> 693</span>  </div> +<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="preprocessor">#ifndef RAPIDJSON_MALLOC</span></div> +<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="comment">///! customization point for global \c malloc</span></div> +<div class="line"><a name="l00696"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27"> 696</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_MALLOC(size) std::malloc(size)</span></div> +<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="preprocessor">#ifndef RAPIDJSON_REALLOC</span></div> +<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="comment">///! customization point for global \c realloc</span></div> +<div class="line"><a name="l00700"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67"> 700</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_REALLOC(ptr, new_size) std::realloc(ptr, new_size)</span></div> +<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <span class="preprocessor">#ifndef RAPIDJSON_FREE</span></div> +<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="comment">///! customization point for global \c free</span></div> +<div class="line"><a name="l00704"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f"> 704</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_FREE(ptr) std::free(ptr)</span></div> +<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="comment"></span> </div> +<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="comment"></span><span class="comment">// new/delete</span></div> +<div class="line"><a name="l00709"></a><span class="lineno"> 709</span>  </div> +<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="preprocessor">#ifndef RAPIDJSON_NEW</span></div> +<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="comment">///! customization point for global \c new</span></div> +<div class="line"><a name="l00712"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b"> 712</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_NEW(TypeName) new TypeName</span></div> +<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="preprocessor">#ifndef RAPIDJSON_DELETE</span></div> +<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="comment">///! customization point for global \c delete</span></div> +<div class="line"><a name="l00716"></a><span class="lineno"><a class="line" href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a"> 716</a></span> <span class="comment"></span><span class="preprocessor">#define RAPIDJSON_DELETE(x) delete x</span></div> +<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> <span class="preprocessor">#endif</span></div> +<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="comment"></span> </div> +<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="comment">///////////////////////////////////////////////////////////////////////////////</span></div> +<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="comment"></span><span class="comment">// Type</span></div> +<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="comment"></span> </div> +<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="comment">/*! \namespace rapidjson</span></div> +<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="comment"> \brief main RapidJSON namespace</span></div> +<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="comment"> \see RAPIDJSON_NAMESPACE</span></div> +<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> <span class="comment">*/</span></div> +<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> RAPIDJSON_NAMESPACE_BEGIN</div> +<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> <span class="comment"></span> </div> +<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> <span class="comment">//! Type of JSON value</span></div> +<div class="line"><a name="l00729"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4"> 729</a></span> <span class="comment"></span><span class="keyword">enum</span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a> {</div> +<div class="line"><a name="l00730"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"> 730</a></span>  <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">kNullType</a> = 0, <span class="comment">//!< null</span></div> +<div class="line"><a name="l00731"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"> 731</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">kFalseType</a> = 1, <span class="comment">//!< false</span></div> +<div class="line"><a name="l00732"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"> 732</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">kTrueType</a> = 2, <span class="comment">//!< true</span></div> +<div class="line"><a name="l00733"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"> 733</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">kObjectType</a> = 3, <span class="comment">//!< object</span></div> +<div class="line"><a name="l00734"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"> 734</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">kArrayType</a> = 4, <span class="comment">//!< array </span></div> +<div class="line"><a name="l00735"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"> 735</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">kStringType</a> = 5, <span class="comment">//!< string</span></div> +<div class="line"><a name="l00736"></a><span class="lineno"><a class="line" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"> 736</a></span> <span class="comment"></span> <a class="code" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">kNumberType</a> = 6 <span class="comment">//!< number</span></div> +<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="comment"></span>};</div> +<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>  </div> +<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> RAPIDJSON_NAMESPACE_END</div> +<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  </div> +<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> <span class="preprocessor">#endif // RAPIDJSON_RAPIDJSON_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/reader_8h_source.html b/zh-cn/reader_8h_source.html index 73b94b6c..95f89442 100644 --- a/zh-cn/reader_8h_source.html +++ b/zh-cn/reader_8h_source.html @@ -2342,7 +2342,7 @@ $(document).ready(function(){initNavTree('reader_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a2022599bcd4f64d58885a026f95751d5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2022599bcd4f64d58885a026f95751d5">rapidjson::kParseErrorDocumentRootNotSingular</a></div><div class="ttdoc">The document root must not follow by other values.</div><div class="ttdef"><b>Definition:</b> error.h:68</div></div> <div class="ttc" id="astructrapidjson_1_1_base_reader_handler_html_a0de969fd05528960c2a7de51b2265bf1"><div class="ttname"><a href="structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1">rapidjson::BaseReaderHandler::RawNumber</a></div><div class="ttdeci">bool RawNumber(const Ch *str, SizeType len, bool copy)</div><div class="ttdoc">enabled via kParseNumbersAsStringsFlag, string is not null-terminated (use length)</div><div class="ttdef"><b>Definition:</b> reader.h:212</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_insitu_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_insitu_string_stream.html">rapidjson::GenericInsituStringStream</a></div><div class="ttdoc">A read-write string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:52</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0">rapidjson::kParseNoFlags</a></div><div class="ttdoc">No flags are set.</div><div class="ttdef"><b>Definition:</b> reader.h:147</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8">rapidjson::kParseNanAndInfFlag</a></div><div class="ttdoc">Allow parsing NaN, Inf, Infinity, -Inf and -Infinity as doubles.</div><div class="ttdef"><b>Definition:</b> reader.h:156</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a2a81a684f39fc882ec99f07e86343f73"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2a81a684f39fc882ec99f07e86343f73">rapidjson::kParseErrorObjectMissCommaOrCurlyBracket</a></div><div class="ttdoc">Missing a comma or '}' after an object member.</div><div class="ttdef"><b>Definition:</b> error.h:74</div></div> @@ -2358,9 +2358,9 @@ $(document).ready(function(){initNavTree('reader_8h_source.html','');}); <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0">rapidjson::kParseFullPrecisionFlag</a></div><div class="ttdoc">Parse number in full precision (but slower).</div><div class="ttdef"><b>Definition:</b> reader.h:152</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7d3acf640886b1f2552dc8c4cd6dea60"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60">rapidjson::ParseErrorCode</a></div><div class="ttdeci">ParseErrorCode</div><div class="ttdoc">Error code of parsing.</div><div class="ttdef"><b>Definition:</b> error.h:64</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a636209a2e516fbdb4db5ad0a83a6b386"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a636209a2e516fbdb4db5ad0a83a6b386">rapidjson::kParseErrorStringUnicodeSurrogateInvalid</a></div><div class="ttdoc">The surrogate pair in string is invalid.</div><div class="ttdef"><b>Definition:</b> error.h:79</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec">rapidjson::kParseTrailingCommasFlag</a></div><div class="ttdoc">Allow trailing commas at the end of objects and arrays.</div><div class="ttdef"><b>Definition:</b> reader.h:155</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ac9c540b77de19661f6f45e04b9b0937b"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b">rapidjson::GenericReader::Parse</a></div><div class="ttdeci">ParseResult Parse(InputStream &is, Handler &handler)</div><div class="ttdoc">Parse JSON text.</div><div class="ttdef"><b>Definition:</b> reader.h:559</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_a2bac14d193873d661d79ad000473a908"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908">rapidjson::GenericReader::Parse</a></div><div class="ttdeci">ParseResult Parse(InputStream &is, Handler &handler)</div><div class="ttdoc">Parse JSON text (with kParseDefaultFlags)</div><div class="ttdef"><b>Definition:</b> reader.h:600</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_ga7f8c4265b2edda78568ae3338aaf1461"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7f8c4265b2edda78568ae3338aaf1461">RAPIDJSON_PARSE_ERROR_NORETURN</a></div><div class="ttdeci">#define RAPIDJSON_PARSE_ERROR_NORETURN(parseErrorCode, offset)</div><div class="ttdoc">Macro to indicate a parse error.</div><div class="ttdef"><b>Definition:</b> reader.h:100</div></div> @@ -2381,15 +2381,15 @@ $(document).ready(function(){initNavTree('reader_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f">rapidjson::kParseErrorNumberMissFraction</a></div><div class="ttdoc">Miss fraction part in number.</div><div class="ttdef"><b>Definition:</b> error.h:85</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_a56ab1065ea75167aeacb4802425bf57f"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#a56ab1065ea75167aeacb4802425bf57f">rapidjson::GenericReader::GenericReader</a></div><div class="ttdeci">GenericReader(StackAllocator *stackAllocator=0, size_t stackCapacity=kDefaultStackCapacity)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> reader.h:547</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a28a1c720ae63560780ccd992dc999ab7"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a28a1c720ae63560780ccd992dc999ab7">rapidjson::kParseErrorNumberMissExponent</a></div><div class="ttdoc">Miss exponent in number.</div><div class="ttdef"><b>Definition:</b> error.h:86</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:494</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60a8dd0af5e6103a6503c61c38cb2b0bab9"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a8dd0af5e6103a6503c61c38cb2b0bab9">rapidjson::kParseErrorStringEscapeInvalid</a></div><div class="ttdoc">Invalid escape character in string.</div><div class="ttdef"><b>Definition:</b> error.h:80</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gae3689840fa6e89a241313f33b602f865"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865">RAPIDJSON_PARSE_ERROR</a></div><div class="ttdeci">#define RAPIDJSON_PARSE_ERROR(parseErrorCode, offset)</div><div class="ttdoc">(Internal) macro to indicate and handle a parse error.</div><div class="ttdef"><b>Definition:</b> reader.h:119</div></div> <div class="ttc" id="anamespacerapidjson_html_ad5310edd1226f5b3ea82dc0d4d3740c6"><div class="ttname"><a href="namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6">rapidjson::Reader</a></div><div class="ttdeci">GenericReader< UTF8< char >, UTF8< char >, CrtAllocator > Reader</div><div class="ttdoc">Reader with UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57">rapidjson::kParseErrorValueInvalid</a></div><div class="ttdoc">Invalid value.</div><div class="ttdef"><b>Definition:</b> error.h:70</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ac42370c3497a0e2b6973110f298e3a59"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ac42370c3497a0e2b6973110f298e3a59">rapidjson::GenericReader::HasParseError</a></div><div class="ttdeci">bool HasParseError() const</div><div class="ttdoc">Whether a parse error has occurred in the last parsing.</div><div class="ttdef"><b>Definition:</b> reader.h:682</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html_ab50019e0a715320f83b7610b83dcef8f"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html#ab50019e0a715320f83b7610b83dcef8f">rapidjson::GenericReader::GetErrorOffset</a></div><div class="ttdeci">size_t GetErrorOffset() const</div><div class="ttdoc">Get the position of last parsing error in input, 0 otherwise.</div><div class="ttdef"><b>Definition:</b> reader.h:688</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html_a9a38a9d5b1ce782cacd4ec1bdf87fc2d"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d">rapidjson::GenericStringStream::src_</a></div><div class="ttdeci">const Ch * src_</div><div class="ttdoc">Current read position.</div><div class="ttdef"><b>Definition:</b> stream.h:168</div></div> <div class="ttc" id="anamespacerapidjson_html_a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987"><div class="ttname"><a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987">rapidjson::kParseNumbersAsStringsFlag</a></div><div class="ttdoc">Parse all numbers (ints/doubles) as strings.</div><div class="ttdef"><b>Definition:</b> reader.h:154</div></div> <div class="ttc" id="aclassrapidjson_1_1_handler_html"><div class="ttname"><a href="classrapidjson_1_1_handler.html">Handler</a></div><div class="ttdoc">Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...</div></div> diff --git a/zh-cn/regex_8h_source.html b/zh-cn/regex_8h_source.html index bde6dc6f..c5dbdd43 100644 --- a/zh-cn/regex_8h_source.html +++ b/zh-cn/regex_8h_source.html @@ -830,10 +830,10 @@ $(document).ready(function(){initNavTree('regex_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> <div class="ttc" id="aclassrapidjson_1_1_encoding_html"><div class="ttname"><a href="classrapidjson_1_1_encoding.html">Encoding</a></div><div class="ttdoc">Concept for encoding of Unicode characters.</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> diff --git a/zh-cn/schema_8h_source.html b/zh-cn/schema_8h_source.html index 16d99f44..41afccac 100644 --- a/zh-cn/schema_8h_source.html +++ b/zh-cn/schema_8h_source.html @@ -2745,13 +2745,13 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="anamespacerapidjson_html_abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699"><div class="ttname"><a href="namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699">rapidjson::kValidateContinueOnErrorFlag</a></div><div class="ttdoc">Don't stop after first validation error.</div><div class="ttdef"><b>Definition:</b> schema.h:143</div></div> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_ad9f00d71bf62b8983cf2514c43fb1572"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572">rapidjson::GenericSchemaValidator::~GenericSchemaValidator</a></div><div class="ttdeci">~GenericSchemaValidator()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> schema.h:1919</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_ab521826cfc7ca994856323f9f1420d66"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66">rapidjson::GenericSchemaValidator::SetValidateFlags</a></div><div class="ttdeci">void SetValidateFlags(unsigned flags)</div><div class="ttdoc">Implementation of ISchemaValidator</div><div class="ttdef"><b>Definition:</b> schema.h:1941</div></div> <div class="ttc" id="aclassrapidjson_1_1_i_generic_remote_schema_document_provider_html"><div class="ttname"><a href="classrapidjson_1_1_i_generic_remote_schema_document_provider.html">rapidjson::IGenericRemoteSchemaDocumentProvider</a></div><div class="ttdef"><b>Definition:</b> fwd.h:133</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff">rapidjson::kValidateErrorExclusiveMaximum</a></div><div class="ttdoc">Number is greater than or equal to the 'maximum' value.</div><div class="ttdef"><b>Definition:</b> error.h:168</div></div> <div class="ttc" id="adocument_8h_html"><div class="ttname"><a href="document_8h.html">document.h</a></div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446">rapidjson::kValidateErrorRequired</a></div><div class="ttdoc">Object is missing one or more members required by the schema.</div><div class="ttdef"><b>Definition:</b> error.h:183</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103">rapidjson::kValidateErrorOneOf</a></div><div class="ttdoc">Property did not match any of the sub-schemas specified by 'oneOf'.</div><div class="ttdef"><b>Definition:</b> error.h:191</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga8d06f2d50592811d2890b45243b8adcc"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc">RAPIDJSON_VALIDATE_DEFAULT_FLAGS</a></div><div class="ttdeci">#define RAPIDJSON_VALIDATE_DEFAULT_FLAGS</div><div class="ttdoc">User-defined kValidateDefaultFlags definition.</div><div class="ttdef"><b>Definition:</b> schema.h:135</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d">rapidjson::kValidateErrorOneOfMatch</a></div><div class="ttdoc">Property matched more than one of the sub-schemas specified by 'oneOf'.</div><div class="ttdef"><b>Definition:</b> error.h:192</div></div> @@ -2759,20 +2759,20 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_a03bcd5497a574cffbd066d0aec2b5585"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#a03bcd5497a574cffbd066d0aec2b5585">rapidjson::GenericSchemaValidator::GetInvalidSchemaKeyword</a></div><div class="ttdeci">const Ch * GetInvalidSchemaKeyword() const</div><div class="ttdoc">Gets the keyword of invalid schema.</div><div class="ttdef"><b>Definition:</b> schema.h:1968</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b">rapidjson::kValidateErrorExclusiveMinimum</a></div><div class="ttdoc">Number is less than or equal to the 'minimum' value.</div><div class="ttdef"><b>Definition:</b> error.h:170</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3">rapidjson::kValidateErrorEnum</a></div><div class="ttdoc">Property has a value that is not one of its allowed enumerated values</div><div class="ttdef"><b>Definition:</b> error.h:188</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_acc07bd08b00195d84bb5b83f59c593d3"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#acc07bd08b00195d84bb5b83f59c593d3">rapidjson::GenericSchemaValidator::GenericSchemaValidator</a></div><div class="ttdeci">GenericSchemaValidator(const SchemaDocumentType &schemaDocument, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)</div><div class="ttdoc">Constructor without output handler.</div><div class="ttdef"><b>Definition:</b> schema.h:1862</div></div> <div class="ttc" id="anamespacerapidjson_html_a52bbb5d64d1319495089e1713a0653cf"><div class="ttname"><a href="namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf">rapidjson::SchemaDocument</a></div><div class="ttdeci">GenericSchemaDocument< Value, CrtAllocator > SchemaDocument</div><div class="ttdoc">GenericSchemaDocument using Value type.</div><div class="ttdef"><b>Definition:</b> fwd.h:136</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html_adf6f3372013227873ed392dee1e752bf"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf">rapidjson::GenericSchemaDocument::~GenericSchemaDocument</a></div><div class="ttdeci">~GenericSchemaDocument()</div><div class="ttdoc">Destructor</div><div class="ttdef"><b>Definition:</b> schema.h:1670</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b">rapidjson::kValidateErrorAdditionalProperties</a></div><div class="ttdoc">Object has additional members that are not allowed by the schema.</div><div class="ttdef"><b>Definition:</b> error.h:184</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_ad32a9ad31dbb588edaaf038ab053275b"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#ad32a9ad31dbb588edaaf038ab053275b">rapidjson::GenericSchemaValidator::IsValid</a></div><div class="ttdeci">virtual bool IsValid() const</div><div class="ttdoc">Checks whether the current state is valid.</div><div class="ttdef"><b>Definition:</b> schema.h:1950</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e">rapidjson::kValidateErrorMaxProperties</a></div><div class="ttdoc">Object has more members than 'maxProperties' value.</div><div class="ttdef"><b>Definition:</b> error.h:181</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_afe6cd0d9088a1d4cf8100c0efc9f76fc"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc">rapidjson::GenericSchemaValidator::Reset</a></div><div class="ttdeci">void Reset()</div><div class="ttdoc">Reset the internal states.</div><div class="ttdef"><b>Definition:</b> schema.h:1925</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f">rapidjson::kValidateErrorMinProperties</a></div><div class="ttdoc">Object has less members than 'minProperties' value.</div><div class="ttdef"><b>Definition:</b> error.h:182</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> <div class="ttc" id="anamespacerapidjson_html_abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde"><div class="ttname"><a href="namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde">rapidjson::kValidateNoFlags</a></div><div class="ttdoc">No flags are set.</div><div class="ttdef"><b>Definition:</b> schema.h:142</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_reader_html"><div class="ttname"><a href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader</a></div><div class="ttdoc">SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:88</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429">rapidjson::kValidateErrorNot</a></div><div class="ttdoc">Property matched the sub-schema specified by 'not'.</div><div class="ttdef"><b>Definition:</b> error.h:195</div></div> @@ -2782,10 +2782,10 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_aab6478132518857d1bb2bc66c0dd03e7"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7">rapidjson::GenericSchemaValidator::ResetError</a></div><div class="ttdeci">void ResetError()</div><div class="ttdoc">Reset the error state.</div><div class="ttdef"><b>Definition:</b> schema.h:1933</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html_a8b2ac6de85dc9c1fb4f4d0be4aeb2d6a"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html#a8b2ac6de85dc9c1fb4f4d0be4aeb2d6a">rapidjson::GenericSchemaDocument::GetRoot</a></div><div class="ttdeci">const SchemaType & GetRoot() const</div><div class="ttdoc">Get the root schema.</div><div class="ttdef"><b>Definition:</b> schema.h:1685</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a">rapidjson::kValidateErrorPattern</a></div><div class="ttdoc">String does not match the 'pattern' regular expression.</div><div class="ttdef"><b>Definition:</b> error.h:174</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_pointer_html"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a></div><div class="ttdoc">Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.</div><div class="ttdef"><b>Definition:</b> fwd.h:126</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> <div class="ttc" id="anamespacerapidjson_html_af91eb8eea47b79d75b23e29fa9c0abb5"><div class="ttname"><a href="namespacerapidjson.html#af91eb8eea47b79d75b23e29fa9c0abb5">rapidjson::IRemoteSchemaDocumentProvider</a></div><div class="ttdeci">IGenericRemoteSchemaDocumentProvider< SchemaDocument > IRemoteSchemaDocumentProvider</div><div class="ttdoc">IGenericRemoteSchemaDocumentProvider using SchemaDocument.</div><div class="ttdef"><b>Definition:</b> fwd.h:139</div></div> <div class="ttc" id="anamespacerapidjson_html_abfd1e973a5f464025877decd4dd6ece5"><div class="ttname"><a href="namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5">rapidjson::ValidateFlag</a></div><div class="ttdeci">ValidateFlag</div><div class="ttdoc">Combination of validate flags</div><div class="ttdef"><b>Definition:</b> schema.h:141</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666">rapidjson::kValidateErrorAllOf</a></div><div class="ttdoc">Property did not match all of the sub-schemas specified by 'allOf'.</div><div class="ttdef"><b>Definition:</b> error.h:193</div></div> @@ -2799,7 +2799,7 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b">rapidjson::kValidateErrorMaximum</a></div><div class="ttdoc">Number is greater than the 'maximum' value.</div><div class="ttdef"><b>Definition:</b> error.h:167</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962">rapidjson::kValidateErrorDependencies</a></div><div class="ttdoc">Object has missing property or schema dependencies.</div><div class="ttdef"><b>Definition:</b> error.h:186</div></div> <div class="ttc" id="aclassrapidjson_1_1_schema_validating_reader_html_a1e2bcc66cad23376241cd91e8bf8c706"><div class="ttname"><a href="classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706">rapidjson::SchemaValidatingReader::SchemaValidatingReader</a></div><div class="ttdeci">SchemaValidatingReader(InputStream &is, const SchemaDocumentType &sd)</div><div class="ttdoc">Constructor</div><div class="ttdef"><b>Definition:</b> schema.h:2597</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e">rapidjson::kValidateErrorMinLength</a></div><div class="ttdoc">String is longer than the 'maxLength' value.</div><div class="ttdef"><b>Definition:</b> error.h:173</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html_aeebf51ef6353f6a01d6f6618da6d0865"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html#aeebf51ef6353f6a01d6f6618da6d0865">rapidjson::GenericSchemaDocument::GenericSchemaDocument</a></div><div class="ttdeci">GenericSchemaDocument(const ValueType &document, const Ch *uri=0, SizeType uriLength=0, IRemoteSchemaDocumentProviderType *remoteProvider=0, Allocator *allocator=0)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> schema.h:1604</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb">rapidjson::kValidateErrorAdditionalItems</a></div><div class="ttdoc">Array has additional items that are not allowed by the schema.</div><div class="ttdef"><b>Definition:</b> error.h:179</div></div> @@ -2807,7 +2807,7 @@ $(document).ready(function(){initNavTree('schema_8h_source.html','');}); <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_a422c16457e512835b0d0f64ec1c81ba2"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#a422c16457e512835b0d0f64ec1c81ba2">rapidjson::GenericSchemaValidator::GetError</a></div><div class="ttdeci">ValueType & GetError()</div><div class="ttdoc">Gets the error object.</div><div class="ttdef"><b>Definition:</b> schema.h:1957</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html_a60dfb4a89593c8d3ca4c89a6202feb52"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html#a60dfb4a89593c8d3ca4c89a6202feb52">rapidjson::GenericSchemaValidator::GetInvalidDocumentPointer</a></div><div class="ttdeci">PointerType GetInvalidDocumentPointer() const</div><div class="ttdoc">Gets the JSON pointer pointed to the invalid value.</div><div class="ttdef"><b>Definition:</b> schema.h:1984</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e">rapidjson::kValidateErrors</a></div><div class="ttdoc">Top level error code when kValidateContinueOnErrorsFlag set.</div><div class="ttdef"><b>Definition:</b> error.h:163</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_document_html"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_document.html">rapidjson::GenericSchemaDocument</a></div><div class="ttdoc">JSON schema document.</div><div class="ttdef"><b>Definition:</b> fwd.h:136</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_schema_validator_html"><div class="ttname"><a href="classrapidjson_1_1_generic_schema_validator.html">rapidjson::GenericSchemaValidator</a></div><div class="ttdoc">JSON Schema Validator.</div><div class="ttdef"><b>Definition:</b> fwd.h:145</div></div> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s_html_gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49">rapidjson::kValidateErrorMaxLength</a></div><div class="ttdoc">String is longer than the 'maxLength' value.</div><div class="ttdef"><b>Definition:</b> error.h:172</div></div> diff --git a/zh-cn/search/all_10.js b/zh-cn/search/all_10.js index 197a64a6..a085ddf6 100644 --- a/zh-cn/search/all_10.js +++ b/zh-cn/search/all_10.js @@ -1,34 +1,34 @@ var searchData= [ - ['sax_274',['SAX',['../md_doc_sax_8zh-cn.html',1,'']]], - ['schema_275',['Schema',['../md_doc_schema_8zh-cn.html',1,'']]], - ['s_276',['s',['../structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994',1,'rapidjson::GenericStringRef']]], - ['schemadocument_277',['SchemaDocument',['../namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf',1,'rapidjson']]], - ['schemavalidatingreader_278',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html',1,'rapidjson::SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >'],['../classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706',1,'rapidjson::SchemaValidatingReader::SchemaValidatingReader()']]], - ['set_279',['Set',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a40c0bd4d6c535c57acbb5c2e656bea38',1,'rapidjson::ParseResult']]], - ['setformatoptions_280',['SetFormatOptions',['../classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090',1,'rapidjson::PrettyWriter']]], - ['setindent_281',['SetIndent',['../classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0',1,'rapidjson::PrettyWriter']]], - ['setmaxdecimalplaces_282',['SetMaxDecimalPlaces',['../classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634',1,'rapidjson::Writer']]], - ['setobjectraw_283',['SetObjectRaw',['../classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac',1,'rapidjson::GenericValue']]], - ['setstringraw_284',['SetStringRaw',['../classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s, Allocator &allocator)']]], - ['setvalidateflags_285',['SetValidateFlags',['../classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66',1,'rapidjson::GenericSchemaValidator']]], - ['shared_286',['Shared',['../classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc',1,'rapidjson::MemoryPoolAllocator']]], - ['shortstring_287',['ShortString',['../structrapidjson_1_1_generic_value_1_1_short_string.html',1,'rapidjson::GenericValue']]], - ['size_288',['Size',['../classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265',1,'rapidjson::MemoryPoolAllocator']]], - ['size_5f_289',['size_',['../structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace',1,'rapidjson::MemoryStream']]], - ['sizetype_290',['SizeType',['../namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84',1,'rapidjson']]], - ['skipwhitespace_291',['SkipWhitespace',['../namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a',1,'rapidjson::SkipWhitespace(InputStream &is)'],['../namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2',1,'rapidjson::SkipWhitespace(InsituStringStream &is)'],['../namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568',1,'rapidjson::SkipWhitespace(StringStream &is)']]], - ['src_5f_292',['src_',['../structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722',1,'rapidjson::MemoryStream::src_()'],['../structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d',1,'rapidjson::GenericStringStream::src_()']]], - ['stdallocator_293',['StdAllocator',['../classrapidjson_1_1_std_allocator.html',1,'rapidjson']]], - ['stdallocator_3c_20void_2c_20baseallocator_20_3e_294',['StdAllocator< void, BaseAllocator >',['../classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html',1,'rapidjson']]], - ['stream_295',['Stream',['../classrapidjson_1_1_stream.html',1,'']]], - ['streamtraits_296',['StreamTraits',['../structrapidjson_1_1_stream_traits.html',1,'rapidjson']]], - ['streamtraits_3c_20genericinsitustringstream_3c_20encoding_20_3e_20_3e_297',['StreamTraits< GenericInsituStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], - ['streamtraits_3c_20genericstringstream_3c_20encoding_20_3e_20_3e_298',['StreamTraits< GenericStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], - ['string_299',['String',['../structrapidjson_1_1_generic_value_1_1_string.html',1,'rapidjson::GenericValue< Encoding, Allocator >::String'],['../classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c',1,'rapidjson::PrettyWriter::String()'],['../classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24',1,'rapidjson::Writer::String()']]], - ['stringbuffer_300',['StringBuffer',['../namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21',1,'rapidjson']]], - ['stringref_301',['StringRef',['../structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::GenericStringRef::StringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::GenericStringRef::StringRef(const CharType *str, size_t length)'],['../structrapidjson_1_1_generic_string_ref.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::GenericStringRef::StringRef(const std::basic_string< CharType > &str)'],['../namespacerapidjson.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::StringRef(const CharType *str)'],['../namespacerapidjson.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::StringRef(const CharType *str, size_t length)'],['../namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::StringRef(const std::basic_string< CharType > &str)']]], - ['stringreftype_302',['StringRefType',['../classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379',1,'rapidjson::GenericValue']]], - ['stringstream_303',['StringStream',['../namespacerapidjson.html#a021f77051e9f85188fc2f71ff5a15ebc',1,'rapidjson']]], - ['swap_304',['Swap',['../classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b',1,'rapidjson::GenericDocument::Swap()'],['../classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b',1,'rapidjson::GenericPointer::Swap()'],['../classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d',1,'rapidjson::GenericDocument::swap()'],['../classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937',1,'rapidjson::GenericPointer::swap()']]] + ['sax_276',['SAX',['../md_doc_sax_8zh-cn.html',1,'']]], + ['schema_277',['Schema',['../md_doc_schema_8zh-cn.html',1,'']]], + ['s_278',['s',['../structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994',1,'rapidjson::GenericStringRef']]], + ['schemadocument_279',['SchemaDocument',['../namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf',1,'rapidjson']]], + ['schemavalidatingreader_280',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html',1,'rapidjson::SchemaValidatingReader< parseFlags, InputStream, SourceEncoding, SchemaDocumentType, StackAllocator >'],['../classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706',1,'rapidjson::SchemaValidatingReader::SchemaValidatingReader()']]], + ['set_281',['Set',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a40c0bd4d6c535c57acbb5c2e656bea38',1,'rapidjson::ParseResult']]], + ['setformatoptions_282',['SetFormatOptions',['../classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090',1,'rapidjson::PrettyWriter']]], + ['setindent_283',['SetIndent',['../classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0',1,'rapidjson::PrettyWriter']]], + ['setmaxdecimalplaces_284',['SetMaxDecimalPlaces',['../classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634',1,'rapidjson::Writer']]], + ['setobjectraw_285',['SetObjectRaw',['../classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac',1,'rapidjson::GenericValue']]], + ['setstringraw_286',['SetStringRaw',['../classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s, Allocator &allocator)']]], + ['setvalidateflags_287',['SetValidateFlags',['../classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66',1,'rapidjson::GenericSchemaValidator']]], + ['shared_288',['Shared',['../classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc',1,'rapidjson::MemoryPoolAllocator']]], + ['shortstring_289',['ShortString',['../structrapidjson_1_1_generic_value_1_1_short_string.html',1,'rapidjson::GenericValue']]], + ['size_290',['Size',['../classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265',1,'rapidjson::MemoryPoolAllocator']]], + ['size_5f_291',['size_',['../structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace',1,'rapidjson::MemoryStream']]], + ['sizetype_292',['SizeType',['../namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84',1,'rapidjson']]], + ['skipwhitespace_293',['SkipWhitespace',['../namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a',1,'rapidjson::SkipWhitespace(InputStream &is)'],['../namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2',1,'rapidjson::SkipWhitespace(InsituStringStream &is)'],['../namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568',1,'rapidjson::SkipWhitespace(StringStream &is)']]], + ['src_5f_294',['src_',['../structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722',1,'rapidjson::MemoryStream::src_()'],['../structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d',1,'rapidjson::GenericStringStream::src_()']]], + ['stdallocator_295',['StdAllocator',['../classrapidjson_1_1_std_allocator.html',1,'rapidjson']]], + ['stdallocator_3c_20void_2c_20baseallocator_20_3e_296',['StdAllocator< void, BaseAllocator >',['../classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html',1,'rapidjson']]], + ['stream_297',['Stream',['../classrapidjson_1_1_stream.html',1,'']]], + ['streamtraits_298',['StreamTraits',['../structrapidjson_1_1_stream_traits.html',1,'rapidjson']]], + ['streamtraits_3c_20genericinsitustringstream_3c_20encoding_20_3e_20_3e_299',['StreamTraits< GenericInsituStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], + ['streamtraits_3c_20genericstringstream_3c_20encoding_20_3e_20_3e_300',['StreamTraits< GenericStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], + ['string_301',['String',['../structrapidjson_1_1_generic_value_1_1_string.html',1,'rapidjson::GenericValue< Encoding, Allocator >::String'],['../classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c',1,'rapidjson::PrettyWriter::String()'],['../classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24',1,'rapidjson::Writer::String()']]], + ['stringbuffer_302',['StringBuffer',['../namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21',1,'rapidjson']]], + ['stringref_303',['StringRef',['../structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::GenericStringRef::StringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::GenericStringRef::StringRef(const CharType *str, size_t length)'],['../structrapidjson_1_1_generic_string_ref.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::GenericStringRef::StringRef(const std::basic_string< CharType > &str)'],['../namespacerapidjson.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::StringRef(const CharType *str)'],['../namespacerapidjson.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::StringRef(const CharType *str, size_t length)'],['../namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::StringRef(const std::basic_string< CharType > &str)']]], + ['stringreftype_304',['StringRefType',['../classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379',1,'rapidjson::GenericValue']]], + ['stringstream_305',['StringStream',['../namespacerapidjson.html#a021f77051e9f85188fc2f71ff5a15ebc',1,'rapidjson']]], + ['swap_306',['swap',['../classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d',1,'rapidjson::GenericDocument::swap()'],['../classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937',1,'rapidjson::GenericPointer::swap()'],['../classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b',1,'rapidjson::GenericDocument::Swap()'],['../classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b',1,'rapidjson::GenericPointer::Swap()']]] ]; diff --git a/zh-cn/search/all_11.js b/zh-cn/search/all_11.js index 5c530c38..df9fada7 100644 --- a/zh-cn/search/all_11.js +++ b/zh-cn/search/all_11.js @@ -1,10 +1,10 @@ var searchData= [ - ['token_305',['Token',['../structrapidjson_1_1_generic_pointer_1_1_token.html',1,'rapidjson::GenericPointer']]], - ['tokencount_5f_306',['tokenCount_',['../classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b',1,'rapidjson::GenericPointer']]], - ['tokens_5f_307',['tokens_',['../classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7',1,'rapidjson::GenericPointer']]], - ['transcode_308',['Transcode',['../structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664',1,'rapidjson::Transcoder']]], - ['transcoder_309',['Transcoder',['../structrapidjson_1_1_transcoder.html',1,'rapidjson']]], - ['transcoder_3c_20encoding_2c_20encoding_20_3e_310',['Transcoder< Encoding, Encoding >',['../structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html',1,'rapidjson']]], - ['type_311',['Type',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4',1,'rapidjson']]] + ['token_307',['Token',['../structrapidjson_1_1_generic_pointer_1_1_token.html',1,'rapidjson::GenericPointer']]], + ['tokencount_5f_308',['tokenCount_',['../classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b',1,'rapidjson::GenericPointer']]], + ['tokens_5f_309',['tokens_',['../classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7',1,'rapidjson::GenericPointer']]], + ['transcode_310',['Transcode',['../structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664',1,'rapidjson::Transcoder']]], + ['transcoder_311',['Transcoder',['../structrapidjson_1_1_transcoder.html',1,'rapidjson']]], + ['transcoder_3c_20encoding_2c_20encoding_20_3e_312',['Transcoder< Encoding, Encoding >',['../structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html',1,'rapidjson']]], + ['type_313',['Type',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4',1,'rapidjson']]] ]; diff --git a/zh-cn/search/all_12.js b/zh-cn/search/all_12.js index a0e39975..6ff54f71 100644 --- a/zh-cn/search/all_12.js +++ b/zh-cn/search/all_12.js @@ -1,12 +1,12 @@ var searchData= [ - ['u_312',['U',['../structrapidjson_1_1_generic_value_1_1_number_1_1_u.html',1,'rapidjson::GenericValue::Number']]], - ['utf16_313',['UTF16',['../structrapidjson_1_1_u_t_f16.html',1,'rapidjson']]], - ['utf16be_314',['UTF16BE',['../structrapidjson_1_1_u_t_f16_b_e.html',1,'rapidjson']]], - ['utf16le_315',['UTF16LE',['../structrapidjson_1_1_u_t_f16_l_e.html',1,'rapidjson']]], - ['utf32_316',['UTF32',['../structrapidjson_1_1_u_t_f32.html',1,'rapidjson']]], - ['utf32be_317',['UTF32BE',['../structrapidjson_1_1_u_t_f32_b_e.html',1,'rapidjson']]], - ['utf32le_318',['UTF32LE',['../structrapidjson_1_1_u_t_f32_l_e.html',1,'rapidjson']]], - ['utf8_319',['UTF8',['../structrapidjson_1_1_u_t_f8.html',1,'rapidjson']]], - ['utftype_320',['UTFType',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb',1,'rapidjson']]] + ['u_314',['U',['../structrapidjson_1_1_generic_value_1_1_number_1_1_u.html',1,'rapidjson::GenericValue::Number']]], + ['utf16_315',['UTF16',['../structrapidjson_1_1_u_t_f16.html',1,'rapidjson']]], + ['utf16be_316',['UTF16BE',['../structrapidjson_1_1_u_t_f16_b_e.html',1,'rapidjson']]], + ['utf16le_317',['UTF16LE',['../structrapidjson_1_1_u_t_f16_l_e.html',1,'rapidjson']]], + ['utf32_318',['UTF32',['../structrapidjson_1_1_u_t_f32.html',1,'rapidjson']]], + ['utf32be_319',['UTF32BE',['../structrapidjson_1_1_u_t_f32_b_e.html',1,'rapidjson']]], + ['utf32le_320',['UTF32LE',['../structrapidjson_1_1_u_t_f32_l_e.html',1,'rapidjson']]], + ['utf8_321',['UTF8',['../structrapidjson_1_1_u_t_f8.html',1,'rapidjson']]], + ['utftype_322',['UTFType',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb',1,'rapidjson']]] ]; diff --git a/zh-cn/search/all_13.js b/zh-cn/search/all_13.js index 4ede7008..4aad53a5 100644 --- a/zh-cn/search/all_13.js +++ b/zh-cn/search/all_13.js @@ -1,10 +1,10 @@ var searchData= [ - ['validate_321',['Validate',['../structrapidjson_1_1_transcoder.html#ae9178e512e99394a38785e73927140da',1,'rapidjson::Transcoder']]], - ['validateerrorcode_322',['ValidateErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga633f43fd92e6ed5ceb87dbf570647847',1,'rapidjson']]], - ['validateflag_323',['ValidateFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5',1,'rapidjson']]], - ['value_324',['value',['../classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6',1,'rapidjson::GenericMember::value()'],['../namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505',1,'rapidjson::Value()']]], - ['valuecount_325',['valueCount',['../structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b',1,'rapidjson::Writer::Level']]], - ['valueiterator_326',['ValueIterator',['../classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e',1,'rapidjson::GenericValue']]], - ['valuetype_327',['ValueType',['../classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202',1,'rapidjson::GenericValue::ValueType()'],['../classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc',1,'rapidjson::GenericDocument::ValueType()']]] + ['validate_323',['Validate',['../structrapidjson_1_1_transcoder.html#ae9178e512e99394a38785e73927140da',1,'rapidjson::Transcoder']]], + ['validateerrorcode_324',['ValidateErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga633f43fd92e6ed5ceb87dbf570647847',1,'rapidjson']]], + ['validateflag_325',['ValidateFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5',1,'rapidjson']]], + ['value_326',['value',['../classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6',1,'rapidjson::GenericMember::value()'],['../namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505',1,'rapidjson::Value()']]], + ['valuecount_327',['valueCount',['../structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b',1,'rapidjson::Writer::Level']]], + ['valueiterator_328',['ValueIterator',['../classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e',1,'rapidjson::GenericValue']]], + ['valuetype_329',['ValueType',['../classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202',1,'rapidjson::GenericValue::ValueType()'],['../classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc',1,'rapidjson::GenericDocument::ValueType()']]] ]; diff --git a/zh-cn/search/all_14.js b/zh-cn/search/all_14.js index 52046485..7bbb9863 100644 --- a/zh-cn/search/all_14.js +++ b/zh-cn/search/all_14.js @@ -1,5 +1,5 @@ var searchData= [ - ['writeflag_328',['WriteFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19',1,'rapidjson']]], - ['writer_329',['Writer',['../classrapidjson_1_1_writer.html',1,'rapidjson::Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >'],['../classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2',1,'rapidjson::Writer::Writer()']]] + ['writeflag_330',['WriteFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19',1,'rapidjson']]], + ['writer_331',['Writer',['../classrapidjson_1_1_writer.html',1,'rapidjson::Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >'],['../classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2',1,'rapidjson::Writer::Writer()']]] ]; diff --git a/zh-cn/search/all_15.js b/zh-cn/search/all_15.js index 46fa7ff1..822590d0 100644 --- a/zh-cn/search/all_15.js +++ b/zh-cn/search/all_15.js @@ -1,8 +1,8 @@ var searchData= [ - ['_7egenericpointer_330',['~GenericPointer',['../classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748',1,'rapidjson::GenericPointer']]], - ['_7egenericschemadocument_331',['~GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf',1,'rapidjson::GenericSchemaDocument']]], - ['_7egenericschemavalidator_332',['~GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572',1,'rapidjson::GenericSchemaValidator']]], - ['_7egenericvalue_333',['~GenericValue',['../classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437',1,'rapidjson::GenericValue']]], - ['_7ememorypoolallocator_334',['~MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700',1,'rapidjson::MemoryPoolAllocator']]] + ['_7egenericpointer_332',['~GenericPointer',['../classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748',1,'rapidjson::GenericPointer']]], + ['_7egenericschemadocument_333',['~GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf',1,'rapidjson::GenericSchemaDocument']]], + ['_7egenericschemavalidator_334',['~GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572',1,'rapidjson::GenericSchemaValidator']]], + ['_7egenericvalue_335',['~GenericValue',['../classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437',1,'rapidjson::GenericValue']]], + ['_7ememorypoolallocator_336',['~MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/zh-cn/search/all_16.js b/zh-cn/search/all_16.js index faf9e55c..e9234426 100644 --- a/zh-cn/search/all_16.js +++ b/zh-cn/search/all_16.js @@ -1,5 +1,5 @@ var searchData= [ - ['常见问题_335',['常见问题',['../md_doc_faq_8zh-cn.html',1,'']]], - ['内部架构_336',['内部架构',['../md_doc_internals_8zh-cn.html',1,'']]] + ['常见问题_337',['常见问题',['../md_doc_faq_8zh-cn.html',1,'']]], + ['内部架构_338',['内部架构',['../md_doc_internals_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/all_17.js b/zh-cn/search/all_17.js index 6e61a272..8d6b85eb 100644 --- a/zh-cn/search/all_17.js +++ b/zh-cn/search/all_17.js @@ -1,6 +1,6 @@ var searchData= [ - ['性能_337',['性能',['../md_doc_performance_8zh-cn.html',1,'']]], - ['流_338',['流',['../md_doc_stream_8zh-cn.html',1,'']]], - ['教程_339',['教程',['../md_doc_tutorial_8zh-cn.html',1,'']]] + ['性能_339',['性能',['../md_doc_performance_8zh-cn.html',1,'']]], + ['流_340',['流',['../md_doc_stream_8zh-cn.html',1,'']]], + ['教程_341',['教程',['../md_doc_tutorial_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/all_18.js b/zh-cn/search/all_18.js index 56648178..327b6492 100644 --- a/zh-cn/search/all_18.js +++ b/zh-cn/search/all_18.js @@ -1,5 +1,5 @@ var searchData= [ - ['编码_340',['编码',['../md_doc_encoding_8zh-cn.html',1,'']]], - ['特点_341',['特点',['../md_doc_features_8zh-cn.html',1,'']]] + ['编码_342',['编码',['../md_doc_encoding_8zh-cn.html',1,'']]], + ['特点_343',['特点',['../md_doc_features_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/all_9.js b/zh-cn/search/all_9.js index c46e6f15..9008c1f2 100644 --- a/zh-cn/search/all_9.js +++ b/zh-cn/search/all_9.js @@ -43,45 +43,46 @@ var searchData= ['kpointerparseerrorinvalidpercentencoding_138',['kPointerParseErrorInvalidPercentEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba29831a02b8ee23a05d552b47f4d64d28',1,'rapidjson']]], ['kpointerparseerrornone_139',['kPointerParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba9094f236b2ec70c42f1ea91dffc1e39b',1,'rapidjson']]], ['kpointerparseerrortokenmustbeginwithsolidus_140',['kPointerParseErrorTokenMustBeginWithSolidus',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba2f2f8b238e201b7d540e8914bbfd2bed',1,'rapidjson']]], - ['kstringtype_141',['kStringType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7',1,'rapidjson']]], - ['ktruetype_142',['kTrueType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e',1,'rapidjson']]], - ['kutf16be_143',['kUTF16BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d',1,'rapidjson']]], - ['kutf16le_144',['kUTF16LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebaa7ffda68d3584eb92155daf3cd1d6481',1,'rapidjson']]], - ['kutf32be_145',['kUTF32BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f',1,'rapidjson']]], - ['kutf32le_146',['kUTF32LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4',1,'rapidjson']]], - ['kutf8_147',['kUTF8',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba3bda3a2e3f0ec2b7e8c5a3d5d4f60a81',1,'rapidjson']]], - ['kvalidatecontinueonerrorflag_148',['kValidateContinueOnErrorFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699',1,'rapidjson']]], - ['kvalidatedefaultflags_149',['kValidateDefaultFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5aee88d74111644920cabddc20fe57eb7c',1,'rapidjson']]], - ['kvalidateerroradditionalitems_150',['kValidateErrorAdditionalItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb',1,'rapidjson']]], - ['kvalidateerroradditionalproperties_151',['kValidateErrorAdditionalProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b',1,'rapidjson']]], - ['kvalidateerrorallof_152',['kValidateErrorAllOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666',1,'rapidjson']]], - ['kvalidateerroranyof_153',['kValidateErrorAnyOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aaba92c1f6cbea5e14e5e8d8b86b042d4',1,'rapidjson']]], - ['kvalidateerrordependencies_154',['kValidateErrorDependencies',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962',1,'rapidjson']]], - ['kvalidateerrorenum_155',['kValidateErrorEnum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3',1,'rapidjson']]], - ['kvalidateerrorexclusivemaximum_156',['kValidateErrorExclusiveMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff',1,'rapidjson']]], - ['kvalidateerrorexclusiveminimum_157',['kValidateErrorExclusiveMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b',1,'rapidjson']]], - ['kvalidateerrormaximum_158',['kValidateErrorMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b',1,'rapidjson']]], - ['kvalidateerrormaxitems_159',['kValidateErrorMaxItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa',1,'rapidjson']]], - ['kvalidateerrormaxlength_160',['kValidateErrorMaxLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49',1,'rapidjson']]], - ['kvalidateerrormaxproperties_161',['kValidateErrorMaxProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e',1,'rapidjson']]], - ['kvalidateerrorminimum_162',['kValidateErrorMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad365b8abebe4008652940df0a5add9c4',1,'rapidjson']]], - ['kvalidateerrorminitems_163',['kValidateErrorMinItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adbf02986e366165c0ef1d89697893802',1,'rapidjson']]], - ['kvalidateerrorminlength_164',['kValidateErrorMinLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e',1,'rapidjson']]], - ['kvalidateerrorminproperties_165',['kValidateErrorMinProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f',1,'rapidjson']]], - ['kvalidateerrormultipleof_166',['kValidateErrorMultipleOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aa01437cd68a424643a8d9c12c1a3ff5a',1,'rapidjson']]], - ['kvalidateerrornone_167',['kValidateErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a569afaca49e48ee8bd928284409dcab5',1,'rapidjson']]], - ['kvalidateerrornot_168',['kValidateErrorNot',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429',1,'rapidjson']]], - ['kvalidateerroroneof_169',['kValidateErrorOneOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103',1,'rapidjson']]], - ['kvalidateerroroneofmatch_170',['kValidateErrorOneOfMatch',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d',1,'rapidjson']]], - ['kvalidateerrorpattern_171',['kValidateErrorPattern',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a',1,'rapidjson']]], - ['kvalidateerrorpatternproperties_172',['kValidateErrorPatternProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac6f7c8c63dd5ec2c838f34c49300e0a1',1,'rapidjson']]], - ['kvalidateerrorrequired_173',['kValidateErrorRequired',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446',1,'rapidjson']]], - ['kvalidateerrors_174',['kValidateErrors',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e',1,'rapidjson']]], - ['kvalidateerrortype_175',['kValidateErrorType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a7035a7fc3f6b3a51c91be264537fc504',1,'rapidjson']]], - ['kvalidateerroruniqueitems_176',['kValidateErrorUniqueItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aebecfc4b0017d7ff7eeeb32a8c97b509',1,'rapidjson']]], - ['kvalidatenoflags_177',['kValidateNoFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde',1,'rapidjson']]], - ['kwritedefaultflags_178',['kWriteDefaultFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226',1,'rapidjson']]], - ['kwritenanandinfflag_179',['kWriteNanAndInfFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39',1,'rapidjson']]], - ['kwritenoflags_180',['kWriteNoFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a',1,'rapidjson']]], - ['kwritevalidateencodingflag_181',['kWriteValidateEncodingFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10',1,'rapidjson']]] + ['krefcounted_141',['kRefCounted',['../classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496',1,'rapidjson::MemoryPoolAllocator']]], + ['kstringtype_142',['kStringType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7',1,'rapidjson']]], + ['ktruetype_143',['kTrueType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e',1,'rapidjson']]], + ['kutf16be_144',['kUTF16BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d',1,'rapidjson']]], + ['kutf16le_145',['kUTF16LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebaa7ffda68d3584eb92155daf3cd1d6481',1,'rapidjson']]], + ['kutf32be_146',['kUTF32BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f',1,'rapidjson']]], + ['kutf32le_147',['kUTF32LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4',1,'rapidjson']]], + ['kutf8_148',['kUTF8',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba3bda3a2e3f0ec2b7e8c5a3d5d4f60a81',1,'rapidjson']]], + ['kvalidatecontinueonerrorflag_149',['kValidateContinueOnErrorFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699',1,'rapidjson']]], + ['kvalidatedefaultflags_150',['kValidateDefaultFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5aee88d74111644920cabddc20fe57eb7c',1,'rapidjson']]], + ['kvalidateerroradditionalitems_151',['kValidateErrorAdditionalItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb',1,'rapidjson']]], + ['kvalidateerroradditionalproperties_152',['kValidateErrorAdditionalProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b',1,'rapidjson']]], + ['kvalidateerrorallof_153',['kValidateErrorAllOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666',1,'rapidjson']]], + ['kvalidateerroranyof_154',['kValidateErrorAnyOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aaba92c1f6cbea5e14e5e8d8b86b042d4',1,'rapidjson']]], + ['kvalidateerrordependencies_155',['kValidateErrorDependencies',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962',1,'rapidjson']]], + ['kvalidateerrorenum_156',['kValidateErrorEnum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3',1,'rapidjson']]], + ['kvalidateerrorexclusivemaximum_157',['kValidateErrorExclusiveMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff',1,'rapidjson']]], + ['kvalidateerrorexclusiveminimum_158',['kValidateErrorExclusiveMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b',1,'rapidjson']]], + ['kvalidateerrormaximum_159',['kValidateErrorMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b',1,'rapidjson']]], + ['kvalidateerrormaxitems_160',['kValidateErrorMaxItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa',1,'rapidjson']]], + ['kvalidateerrormaxlength_161',['kValidateErrorMaxLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49',1,'rapidjson']]], + ['kvalidateerrormaxproperties_162',['kValidateErrorMaxProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e',1,'rapidjson']]], + ['kvalidateerrorminimum_163',['kValidateErrorMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad365b8abebe4008652940df0a5add9c4',1,'rapidjson']]], + ['kvalidateerrorminitems_164',['kValidateErrorMinItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adbf02986e366165c0ef1d89697893802',1,'rapidjson']]], + ['kvalidateerrorminlength_165',['kValidateErrorMinLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e',1,'rapidjson']]], + ['kvalidateerrorminproperties_166',['kValidateErrorMinProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f',1,'rapidjson']]], + ['kvalidateerrormultipleof_167',['kValidateErrorMultipleOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aa01437cd68a424643a8d9c12c1a3ff5a',1,'rapidjson']]], + ['kvalidateerrornone_168',['kValidateErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a569afaca49e48ee8bd928284409dcab5',1,'rapidjson']]], + ['kvalidateerrornot_169',['kValidateErrorNot',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429',1,'rapidjson']]], + ['kvalidateerroroneof_170',['kValidateErrorOneOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103',1,'rapidjson']]], + ['kvalidateerroroneofmatch_171',['kValidateErrorOneOfMatch',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d',1,'rapidjson']]], + ['kvalidateerrorpattern_172',['kValidateErrorPattern',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a',1,'rapidjson']]], + ['kvalidateerrorpatternproperties_173',['kValidateErrorPatternProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac6f7c8c63dd5ec2c838f34c49300e0a1',1,'rapidjson']]], + ['kvalidateerrorrequired_174',['kValidateErrorRequired',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446',1,'rapidjson']]], + ['kvalidateerrors_175',['kValidateErrors',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e',1,'rapidjson']]], + ['kvalidateerrortype_176',['kValidateErrorType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a7035a7fc3f6b3a51c91be264537fc504',1,'rapidjson']]], + ['kvalidateerroruniqueitems_177',['kValidateErrorUniqueItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aebecfc4b0017d7ff7eeeb32a8c97b509',1,'rapidjson']]], + ['kvalidatenoflags_178',['kValidateNoFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde',1,'rapidjson']]], + ['kwritedefaultflags_179',['kWriteDefaultFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226',1,'rapidjson']]], + ['kwritenanandinfflag_180',['kWriteNanAndInfFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39',1,'rapidjson']]], + ['kwritenoflags_181',['kWriteNoFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a',1,'rapidjson']]], + ['kwritevalidateencodingflag_182',['kWriteValidateEncodingFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10',1,'rapidjson']]] ]; diff --git a/zh-cn/search/all_a.js b/zh-cn/search/all_a.js index b3c5fdad..8bd4163e 100644 --- a/zh-cn/search/all_a.js +++ b/zh-cn/search/all_a.js @@ -1,5 +1,5 @@ var searchData= [ - ['length_182',['length',['../structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111',1,'rapidjson::GenericStringRef::length()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600',1,'rapidjson::GenericPointer::Token::length()']]], - ['level_183',['Level',['../structrapidjson_1_1_writer_1_1_level.html',1,'rapidjson::Writer']]] + ['length_183',['length',['../structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111',1,'rapidjson::GenericStringRef::length()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600',1,'rapidjson::GenericPointer::Token::length()']]], + ['level_184',['Level',['../structrapidjson_1_1_writer_1_1_level.html',1,'rapidjson::Writer']]] ]; diff --git a/zh-cn/search/all_b.js b/zh-cn/search/all_b.js index 65700a5f..dfa19661 100644 --- a/zh-cn/search/all_b.js +++ b/zh-cn/search/all_b.js @@ -1,8 +1,8 @@ var searchData= [ - ['malloc_184',['Malloc',['../classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344',1,'rapidjson::MemoryPoolAllocator']]], - ['member_185',['Member',['../classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559',1,'rapidjson::GenericValue']]], - ['memberiterator_186',['MemberIterator',['../classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b',1,'rapidjson::GenericValue']]], - ['memorypoolallocator_187',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html',1,'rapidjson::MemoryPoolAllocator< BaseAllocator >'],['../classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)'],['../classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)']]], - ['memorystream_188',['MemoryStream',['../structrapidjson_1_1_memory_stream.html',1,'rapidjson']]] + ['malloc_185',['Malloc',['../classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344',1,'rapidjson::MemoryPoolAllocator']]], + ['member_186',['Member',['../classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559',1,'rapidjson::GenericValue']]], + ['memberiterator_187',['MemberIterator',['../classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b',1,'rapidjson::GenericValue']]], + ['memorypoolallocator_188',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html',1,'rapidjson::MemoryPoolAllocator< BaseAllocator >'],['../classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)'],['../classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)']]], + ['memorystream_189',['MemoryStream',['../structrapidjson_1_1_memory_stream.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/all_c.js b/zh-cn/search/all_c.js index ce23b2ad..25a347cf 100644 --- a/zh-cn/search/all_c.js +++ b/zh-cn/search/all_c.js @@ -1,7 +1,7 @@ var searchData= [ - ['name_189',['name',['../classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607',1,'rapidjson::GenericMember::name()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#aceb59c9796418c20da27b03bf1948fe8',1,'rapidjson::GenericPointer::Token::name()']]], - ['namebuffer_5f_190',['nameBuffer_',['../classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465',1,'rapidjson::GenericPointer']]], - ['nonconstiterator_191',['NonConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb',1,'rapidjson::GenericMemberIterator']]], - ['number_192',['Number',['../unionrapidjson_1_1_generic_value_1_1_number.html',1,'rapidjson::GenericValue']]] + ['name_190',['name',['../classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607',1,'rapidjson::GenericMember::name()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#aceb59c9796418c20da27b03bf1948fe8',1,'rapidjson::GenericPointer::Token::name()']]], + ['namebuffer_5f_191',['nameBuffer_',['../classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465',1,'rapidjson::GenericPointer']]], + ['nonconstiterator_192',['NonConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb',1,'rapidjson::GenericMemberIterator']]], + ['number_193',['Number',['../unionrapidjson_1_1_generic_value_1_1_number.html',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/all_d.js b/zh-cn/search/all_d.js index 8591c030..a5ccbd20 100644 --- a/zh-cn/search/all_d.js +++ b/zh-cn/search/all_d.js @@ -1,13 +1,13 @@ var searchData= [ - ['objectdata_193',['ObjectData',['../structrapidjson_1_1_generic_value_1_1_object_data.html',1,'rapidjson::GenericValue']]], - ['offset_194',['Offset',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a85036788b0cfd1c676900de6f8260bd6',1,'rapidjson::ParseResult']]], - ['operator_20booleantype_195',['operator BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#af0936ace1dc9b674e9afb75ec6145b32',1,'rapidjson::ParseResult']]], - ['operator_20const_20ch_20_2a_196',['operator const Ch *',['../structrapidjson_1_1_generic_string_ref.html#a86d30bb594a41619a7a5ba6c8dcce2bd',1,'rapidjson::GenericStringRef']]], - ['operator_20parseresult_197',['operator ParseResult',['../classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974',1,'rapidjson::GenericDocument']]], - ['operator_21_3d_198',['operator!=',['../classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99',1,'rapidjson::MemoryPoolAllocator']]], - ['operator_2d_199',['operator-',['../classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2',1,'rapidjson::GenericMemberIterator']]], - ['operator_3d_200',['operator=',['../classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4',1,'rapidjson::GenericMember::operator=()'],['../classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac',1,'rapidjson::GenericValue::operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c',1,'rapidjson::GenericValue::operator=(StringRefType str) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6',1,'rapidjson::GenericPointer::operator=()']]], - ['operator_3d_3d_201',['operator==',['../classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724',1,'rapidjson::MemoryPoolAllocator']]], - ['ownallocator_5f_202',['ownAllocator_',['../classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445',1,'rapidjson::GenericPointer']]] + ['objectdata_194',['ObjectData',['../structrapidjson_1_1_generic_value_1_1_object_data.html',1,'rapidjson::GenericValue']]], + ['offset_195',['Offset',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a85036788b0cfd1c676900de6f8260bd6',1,'rapidjson::ParseResult']]], + ['operator_20booleantype_196',['operator BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#af0936ace1dc9b674e9afb75ec6145b32',1,'rapidjson::ParseResult']]], + ['operator_20const_20ch_20_2a_197',['operator const Ch *',['../structrapidjson_1_1_generic_string_ref.html#a86d30bb594a41619a7a5ba6c8dcce2bd',1,'rapidjson::GenericStringRef']]], + ['operator_20parseresult_198',['operator ParseResult',['../classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974',1,'rapidjson::GenericDocument']]], + ['operator_21_3d_199',['operator!=',['../classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99',1,'rapidjson::MemoryPoolAllocator']]], + ['operator_2d_200',['operator-',['../classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2',1,'rapidjson::GenericMemberIterator']]], + ['operator_3d_201',['operator=',['../classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4',1,'rapidjson::GenericMember::operator=()'],['../classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac',1,'rapidjson::GenericValue::operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c',1,'rapidjson::GenericValue::operator=(StringRefType str) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6',1,'rapidjson::GenericPointer::operator=()']]], + ['operator_3d_3d_202',['operator==',['../classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724',1,'rapidjson::MemoryPoolAllocator']]], + ['ownallocator_5f_203',['ownAllocator_',['../classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445',1,'rapidjson::GenericPointer']]] ]; diff --git a/zh-cn/search/all_e.js b/zh-cn/search/all_e.js index eb3ecdc4..c313fa99 100644 --- a/zh-cn/search/all_e.js +++ b/zh-cn/search/all_e.js @@ -1,21 +1,21 @@ var searchData= [ - ['pointer_203',['Pointer',['../md_doc_pointer_8zh-cn.html',1,'']]], - ['parse_204',['Parse',['../classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c',1,'rapidjson::GenericDocument::Parse(const typename SourceEncoding::Ch *str)'],['../classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)'],['../classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)']]], - ['parseerrorcode_205',['ParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60',1,'rapidjson']]], - ['parseerrorcode_5f_206',['parseErrorCode_',['../classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34',1,'rapidjson::GenericPointer']]], - ['parseerroroffset_5f_207',['parseErrorOffset_',['../classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a',1,'rapidjson::GenericPointer']]], - ['parseflag_208',['ParseFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9',1,'rapidjson']]], - ['parseinsitu_209',['ParseInsitu',['../classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)'],['../classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)']]], - ['parseresult_210',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result',1,'rapidjson::ParseResult'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1',1,'rapidjson::ParseResult::ParseResult()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ad15710045513f13ba526753c4a2cb59b',1,'rapidjson::ParseResult::ParseResult(ParseErrorCode code, size_t offset)']]], - ['parsestream_211',['ParseStream',['../classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)']]], - ['percentencodestream_212',['PercentEncodeStream',['../classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html',1,'rapidjson::GenericPointer']]], - ['pointer_213',['Pointer',['../classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107',1,'rapidjson::GenericMemberIterator::Pointer()'],['../namespacerapidjson.html#a080910f74d2f5046e6724280159cf374',1,'rapidjson::Pointer()']]], - ['pointerparseerrorcode_214',['PointerParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b',1,'rapidjson']]], - ['populate_215',['Populate',['../classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64',1,'rapidjson::GenericDocument']]], - ['prettyformatoptions_216',['PrettyFormatOptions',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b',1,'rapidjson']]], - ['prettywriter_217',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html',1,'rapidjson::PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >'],['../classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0',1,'rapidjson::PrettyWriter::PrettyWriter()']]], - ['putn_218',['PutN',['../namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a',1,'rapidjson::PutN(FileWriteStream &stream, char c, size_t n)'],['../namespacerapidjson.html#aba27b0c8dcf724aa2b288a24fda0811b',1,'rapidjson::PutN(MemoryBuffer &memoryBuffer, char c, size_t n)'],['../namespacerapidjson.html#a1d49d2cab617858b53a1db23b1759f43',1,'rapidjson::PutN(Stream &stream, Ch c, size_t n)'],['../namespacerapidjson.html#a9d43be9c033dc49738b713fe6fbafecf',1,'rapidjson::PutN(GenericStringBuffer< UTF8<> > &stream, char c, size_t n)']]], - ['putreserve_219',['PutReserve',['../namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740',1,'rapidjson']]], - ['putunsafe_220',['PutUnsafe',['../namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20',1,'rapidjson']]] + ['pointer_204',['Pointer',['../md_doc_pointer_8zh-cn.html',1,'']]], + ['parse_205',['Parse',['../classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c',1,'rapidjson::GenericDocument::Parse(const typename SourceEncoding::Ch *str)'],['../classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)'],['../classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)']]], + ['parseerrorcode_206',['ParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60',1,'rapidjson']]], + ['parseerrorcode_5f_207',['parseErrorCode_',['../classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34',1,'rapidjson::GenericPointer']]], + ['parseerroroffset_5f_208',['parseErrorOffset_',['../classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a',1,'rapidjson::GenericPointer']]], + ['parseflag_209',['ParseFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9',1,'rapidjson']]], + ['parseinsitu_210',['ParseInsitu',['../classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)'],['../classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)']]], + ['parseresult_211',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result',1,'rapidjson::ParseResult'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1',1,'rapidjson::ParseResult::ParseResult()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ad15710045513f13ba526753c4a2cb59b',1,'rapidjson::ParseResult::ParseResult(ParseErrorCode code, size_t offset)']]], + ['parsestream_212',['ParseStream',['../classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)']]], + ['percentencodestream_213',['PercentEncodeStream',['../classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html',1,'rapidjson::GenericPointer']]], + ['pointer_214',['Pointer',['../classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107',1,'rapidjson::GenericMemberIterator::Pointer()'],['../namespacerapidjson.html#a080910f74d2f5046e6724280159cf374',1,'rapidjson::Pointer()']]], + ['pointerparseerrorcode_215',['PointerParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b',1,'rapidjson']]], + ['populate_216',['Populate',['../classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64',1,'rapidjson::GenericDocument']]], + ['prettyformatoptions_217',['PrettyFormatOptions',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b',1,'rapidjson']]], + ['prettywriter_218',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html',1,'rapidjson::PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >'],['../classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0',1,'rapidjson::PrettyWriter::PrettyWriter()']]], + ['putn_219',['PutN',['../namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a',1,'rapidjson::PutN(FileWriteStream &stream, char c, size_t n)'],['../namespacerapidjson.html#aba27b0c8dcf724aa2b288a24fda0811b',1,'rapidjson::PutN(MemoryBuffer &memoryBuffer, char c, size_t n)'],['../namespacerapidjson.html#a1d49d2cab617858b53a1db23b1759f43',1,'rapidjson::PutN(Stream &stream, Ch c, size_t n)'],['../namespacerapidjson.html#a9d43be9c033dc49738b713fe6fbafecf',1,'rapidjson::PutN(GenericStringBuffer< UTF8<> > &stream, char c, size_t n)']]], + ['putreserve_220',['PutReserve',['../namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740',1,'rapidjson']]], + ['putunsafe_221',['PutUnsafe',['../namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20',1,'rapidjson']]] ]; diff --git a/zh-cn/search/all_f.js b/zh-cn/search/all_f.js index 8f54a115..6e4f7e8b 100644 --- a/zh-cn/search/all_f.js +++ b/zh-cn/search/all_f.js @@ -1,56 +1,57 @@ var searchData= [ - ['rapidjson_221',['rapidjson',['../namespacerapidjson.html',1,'']]], - ['rapidjson_2eh_222',['rapidjson.h',['../rapidjson_8h.html',1,'']]], - ['rapidjson_5f48bitpointer_5foptimization_223',['RAPIDJSON_48BITPOINTER_OPTIMIZATION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185',1,'rapidjson.h']]], - ['rapidjson_5f64bit_224',['RAPIDJSON_64BIT',['../rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52',1,'rapidjson.h']]], - ['rapidjson_5falign_225',['RAPIDJSON_ALIGN',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242',1,'rapidjson.h']]], - ['rapidjson_5fallocator_5fdefault_5fchunk_5fcapacity_226',['RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5',1,'allocators.h']]], - ['rapidjson_5fassert_227',['RAPIDJSON_ASSERT',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c',1,'rapidjson.h']]], - ['rapidjson_5fbigendian_228',['RAPIDJSON_BIGENDIAN',['../rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974',1,'rapidjson.h']]], - ['rapidjson_20configuration_229',['RapidJSON configuration',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html',1,'']]], - ['rapidjson_5fdefault_5fallocator_230',['RAPIDJSON_DEFAULT_ALLOCATOR',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga04a88f0b2db9091006eb7fc6deb6077b',1,'document.h']]], - ['rapidjson_5fdefault_5fstack_5fallocator_231',['RAPIDJSON_DEFAULT_STACK_ALLOCATOR',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1178cffff7c596922a5ed3fda30c5520',1,'document.h']]], - ['rapidjson_5fdelete_232',['RAPIDJSON_DELETE',['../rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a',1,'rapidjson.h']]], - ['rapidjson_5fdisableif_5freturn_233',['RAPIDJSON_DISABLEIF_RETURN',['../classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0',1,'rapidjson::GenericValue::RAPIDJSON_DISABLEIF_RETURN()'],['../classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81',1,'rapidjson::GenericPointer::RAPIDJSON_DISABLEIF_RETURN()']]], - ['rapidjson_5fendian_234',['RAPIDJSON_ENDIAN',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07',1,'rapidjson.h']]], - ['rapidjson_5ferror_5fchartype_235',['RAPIDJSON_ERROR_CHARTYPE',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7e4636fd48d0148f102b8a13f0539d8c',1,'error.h']]], - ['rapidjson_5ferror_5fstring_236',['RAPIDJSON_ERROR_STRING',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabe2e1bd1349e5a7d6c1af78c05a98f0d',1,'error.h']]], - ['rapidjson_20error_20handling_237',['RapidJSON error handling',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html',1,'']]], - ['rapidjson_5ffree_238',['RAPIDJSON_FREE',['../rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f',1,'rapidjson.h']]], - ['rapidjson_5fhas_5fstdstring_239',['RAPIDJSON_HAS_STDSTRING',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f',1,'rapidjson.h']]], - ['rapidjson_5flikely_240',['RAPIDJSON_LIKELY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1',1,'rapidjson.h']]], - ['rapidjson_5flittleendian_241',['RAPIDJSON_LITTLEENDIAN',['../rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c',1,'rapidjson.h']]], - ['rapidjson_5fmajor_5fversion_242',['RAPIDJSON_MAJOR_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf1ff1685be6cbebb5d4b2ab997776f45',1,'rapidjson.h']]], - ['rapidjson_5fmalloc_243',['RAPIDJSON_MALLOC',['../rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27',1,'rapidjson.h']]], - ['rapidjson_5fminor_5fversion_244',['RAPIDJSON_MINOR_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf9125105c593a636a79f1c2d96835376',1,'rapidjson.h']]], - ['rapidjson_5fnamespace_245',['RAPIDJSON_NAMESPACE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga743a79d3af927391fe3eb5c979136899',1,'rapidjson.h']]], - ['rapidjson_5fnew_246',['RAPIDJSON_NEW',['../rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b',1,'rapidjson.h']]], - ['rapidjson_5fno_5fint64define_247',['RAPIDJSON_NO_INT64DEFINE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c',1,'rapidjson.h']]], - ['rapidjson_5fno_5fsizetypedefine_248',['RAPIDJSON_NO_SIZETYPEDEFINE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f',1,'rapidjson.h']]], - ['rapidjson_5fnoexcept_5fassert_249',['RAPIDJSON_NOEXCEPT_ASSERT',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952',1,'rapidjson.h']]], - ['rapidjson_5fparse_5fdefault_5fflags_250',['RAPIDJSON_PARSE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga77005e892e6601599beaf421b0395c31',1,'reader.h']]], - ['rapidjson_5fparse_5ferror_251',['RAPIDJSON_PARSE_ERROR',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865',1,'reader.h']]], - ['rapidjson_5fparse_5ferror_5fnoreturn_252',['RAPIDJSON_PARSE_ERROR_NORETURN',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7f8c4265b2edda78568ae3338aaf1461',1,'reader.h']]], - ['rapidjson_5fpatch_5fversion_253',['RAPIDJSON_PATCH_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf967d31be43666ce7f53756d73bd1cdf',1,'rapidjson.h']]], - ['rapidjson_5frealloc_254',['RAPIDJSON_REALLOC',['../rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67',1,'rapidjson.h']]], - ['rapidjson_5fsimd_255',['RAPIDJSON_SIMD',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b',1,'rapidjson.h']]], - ['rapidjson_5fstatic_5fassert_256',['RAPIDJSON_STATIC_ASSERT',['../rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4',1,'rapidjson.h']]], - ['rapidjson_5fuint64_5fc2_257',['RAPIDJSON_UINT64_C2',['../rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f',1,'rapidjson.h']]], - ['rapidjson_5funlikely_258',['RAPIDJSON_UNLIKELY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5',1,'rapidjson.h']]], - ['rapidjson_5fvalidate_5fdefault_5fflags_259',['RAPIDJSON_VALIDATE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc',1,'schema.h']]], - ['rapidjson_5fvalue_5fdefault_5farray_5fcapacity_260',['RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7',1,'document.h']]], - ['rapidjson_5fvalue_5fdefault_5fobject_5fcapacity_261',['RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272',1,'document.h']]], - ['rapidjson_5fversion_5fstring_262',['RAPIDJSON_VERSION_STRING',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6',1,'rapidjson.h']]], - ['rapidjson_5fwrite_5fdefault_5fflags_263',['RAPIDJSON_WRITE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6',1,'writer.h']]], - ['rawassign_264',['RawAssign',['../classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e',1,'rapidjson::GenericValue']]], - ['rawnumber_265',['RawNumber',['../structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1',1,'rapidjson::BaseReaderHandler']]], - ['rawvalue_266',['RawValue',['../classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be',1,'rapidjson::PrettyWriter::RawValue()'],['../classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe',1,'rapidjson::Writer::RawValue()']]], - ['reader_267',['Reader',['../namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6',1,'rapidjson']]], - ['reader_2eh_268',['reader.h',['../reader_8h.html',1,'']]], - ['realloc_269',['Realloc',['../classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d',1,'rapidjson::MemoryPoolAllocator']]], - ['rebind_270',['rebind',['../structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html',1,'rapidjson::StdAllocator< void, BaseAllocator >::rebind< U >'],['../structrapidjson_1_1_std_allocator_1_1rebind.html',1,'rapidjson::StdAllocator< T, BaseAllocator >::rebind< U >']]], - ['reference_271',['Reference',['../classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2',1,'rapidjson::GenericMemberIterator']]], - ['reset_272',['Reset',['../classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc',1,'rapidjson::GenericSchemaValidator::Reset()'],['../classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722',1,'rapidjson::Writer::Reset()']]], - ['reseterror_273',['ResetError',['../classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7',1,'rapidjson::GenericSchemaValidator']]] + ['rapidjson_222',['rapidjson',['../namespacerapidjson.html',1,'']]], + ['rapidjson_2eh_223',['rapidjson.h',['../rapidjson_8h.html',1,'']]], + ['rapidjson_5f48bitpointer_5foptimization_224',['RAPIDJSON_48BITPOINTER_OPTIMIZATION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga93fb983f78208d12c822376e1ea6d185',1,'rapidjson.h']]], + ['rapidjson_5f64bit_225',['RAPIDJSON_64BIT',['../rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52',1,'rapidjson.h']]], + ['rapidjson_5falign_226',['RAPIDJSON_ALIGN',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga583915242504c7fdb36e826f02f76242',1,'rapidjson.h']]], + ['rapidjson_5fallocator_5fdefault_5fchunk_5fcapacity_227',['RAPIDJSON_ALLOCATOR_DEFAULT_CHUNK_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga860570d04d489be08b9835d2ec58bac5',1,'allocators.h']]], + ['rapidjson_5fassert_228',['RAPIDJSON_ASSERT',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c',1,'rapidjson.h']]], + ['rapidjson_5fbigendian_229',['RAPIDJSON_BIGENDIAN',['../rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974',1,'rapidjson.h']]], + ['rapidjson_20configuration_230',['RapidJSON configuration',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html',1,'']]], + ['rapidjson_5fdefault_5fallocator_231',['RAPIDJSON_DEFAULT_ALLOCATOR',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga04a88f0b2db9091006eb7fc6deb6077b',1,'document.h']]], + ['rapidjson_5fdefault_5fstack_5fallocator_232',['RAPIDJSON_DEFAULT_STACK_ALLOCATOR',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1178cffff7c596922a5ed3fda30c5520',1,'document.h']]], + ['rapidjson_5fdelete_233',['RAPIDJSON_DELETE',['../rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a',1,'rapidjson.h']]], + ['rapidjson_5fdisableif_5freturn_234',['RAPIDJSON_DISABLEIF_RETURN',['../classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0',1,'rapidjson::GenericValue::RAPIDJSON_DISABLEIF_RETURN()'],['../classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81',1,'rapidjson::GenericPointer::RAPIDJSON_DISABLEIF_RETURN()']]], + ['rapidjson_5fendian_235',['RAPIDJSON_ENDIAN',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaba2445f582142cf918e74c2d22d1aa07',1,'rapidjson.h']]], + ['rapidjson_5ferror_5fchartype_236',['RAPIDJSON_ERROR_CHARTYPE',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7e4636fd48d0148f102b8a13f0539d8c',1,'error.h']]], + ['rapidjson_5ferror_5fstring_237',['RAPIDJSON_ERROR_STRING',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabe2e1bd1349e5a7d6c1af78c05a98f0d',1,'error.h']]], + ['rapidjson_20error_20handling_238',['RapidJSON error handling',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html',1,'']]], + ['rapidjson_5ffree_239',['RAPIDJSON_FREE',['../rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f',1,'rapidjson.h']]], + ['rapidjson_5fhas_5fstdstring_240',['RAPIDJSON_HAS_STDSTRING',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2f2eef0ee4477f3fe5874703a66e997f',1,'rapidjson.h']]], + ['rapidjson_5flikely_241',['RAPIDJSON_LIKELY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1',1,'rapidjson.h']]], + ['rapidjson_5flittleendian_242',['RAPIDJSON_LITTLEENDIAN',['../rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c',1,'rapidjson.h']]], + ['rapidjson_5fmajor_5fversion_243',['RAPIDJSON_MAJOR_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf1ff1685be6cbebb5d4b2ab997776f45',1,'rapidjson.h']]], + ['rapidjson_5fmalloc_244',['RAPIDJSON_MALLOC',['../rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27',1,'rapidjson.h']]], + ['rapidjson_5fminor_5fversion_245',['RAPIDJSON_MINOR_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf9125105c593a636a79f1c2d96835376',1,'rapidjson.h']]], + ['rapidjson_5fnamespace_246',['RAPIDJSON_NAMESPACE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga743a79d3af927391fe3eb5c979136899',1,'rapidjson.h']]], + ['rapidjson_5fnew_247',['RAPIDJSON_NEW',['../rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b',1,'rapidjson.h']]], + ['rapidjson_5fno_5fint64define_248',['RAPIDJSON_NO_INT64DEFINE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga7f4e50c35dae3b015390daa6d48ce23c',1,'rapidjson.h']]], + ['rapidjson_5fno_5fsizetypedefine_249',['RAPIDJSON_NO_SIZETYPEDEFINE',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga250603aa9e2a12429b25ba0c8108ad4f',1,'rapidjson.h']]], + ['rapidjson_5fnoexcept_5fassert_250',['RAPIDJSON_NOEXCEPT_ASSERT',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga2b2a0d9143aa4fb31205a85b34c43952',1,'rapidjson.h']]], + ['rapidjson_5fparse_5fdefault_5fflags_251',['RAPIDJSON_PARSE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga77005e892e6601599beaf421b0395c31',1,'reader.h']]], + ['rapidjson_5fparse_5ferror_252',['RAPIDJSON_PARSE_ERROR',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865',1,'reader.h']]], + ['rapidjson_5fparse_5ferror_5fnoreturn_253',['RAPIDJSON_PARSE_ERROR_NORETURN',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7f8c4265b2edda78568ae3338aaf1461',1,'reader.h']]], + ['rapidjson_5fpatch_5fversion_254',['RAPIDJSON_PATCH_VERSION',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gaf967d31be43666ce7f53756d73bd1cdf',1,'rapidjson.h']]], + ['rapidjson_5frealloc_255',['RAPIDJSON_REALLOC',['../rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67',1,'rapidjson.h']]], + ['rapidjson_5fsimd_256',['RAPIDJSON_SIMD',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga0ccf72f3ebc4b3306ab669f95ca5c64b',1,'rapidjson.h']]], + ['rapidjson_5fstatic_5fassert_257',['RAPIDJSON_STATIC_ASSERT',['../rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4',1,'rapidjson.h']]], + ['rapidjson_5fuint64_5fc2_258',['RAPIDJSON_UINT64_C2',['../rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f',1,'rapidjson.h']]], + ['rapidjson_5funlikely_259',['RAPIDJSON_UNLIKELY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5',1,'rapidjson.h']]], + ['rapidjson_5fuse_5fmembersmap_260',['RAPIDJSON_USE_MEMBERSMAP',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga87dc65109882910388121e1dba15038b',1,'rapidjson.h']]], + ['rapidjson_5fvalidate_5fdefault_5fflags_261',['RAPIDJSON_VALIDATE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga8d06f2d50592811d2890b45243b8adcc',1,'schema.h']]], + ['rapidjson_5fvalue_5fdefault_5farray_5fcapacity_262',['RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga10ba0ee06d0ac2803d0f2290d46b19f7',1,'document.h']]], + ['rapidjson_5fvalue_5fdefault_5fobject_5fcapacity_263',['RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5c88aa612939b592d15d3fc4bdf54272',1,'document.h']]], + ['rapidjson_5fversion_5fstring_264',['RAPIDJSON_VERSION_STRING',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gad283cfde97d9a32b7d8e8107b11f70a6',1,'rapidjson.h']]], + ['rapidjson_5fwrite_5fdefault_5fflags_265',['RAPIDJSON_WRITE_DEFAULT_FLAGS',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6',1,'writer.h']]], + ['rawassign_266',['RawAssign',['../classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e',1,'rapidjson::GenericValue']]], + ['rawnumber_267',['RawNumber',['../structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1',1,'rapidjson::BaseReaderHandler']]], + ['rawvalue_268',['RawValue',['../classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be',1,'rapidjson::PrettyWriter::RawValue()'],['../classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe',1,'rapidjson::Writer::RawValue()']]], + ['reader_269',['Reader',['../namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6',1,'rapidjson']]], + ['reader_2eh_270',['reader.h',['../reader_8h.html',1,'']]], + ['realloc_271',['Realloc',['../classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d',1,'rapidjson::MemoryPoolAllocator']]], + ['rebind_272',['rebind',['../structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html',1,'rapidjson::StdAllocator< void, BaseAllocator >::rebind< U >'],['../structrapidjson_1_1_std_allocator_1_1rebind.html',1,'rapidjson::StdAllocator< T, BaseAllocator >::rebind< U >']]], + ['reference_273',['Reference',['../classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2',1,'rapidjson::GenericMemberIterator']]], + ['reset_274',['Reset',['../classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc',1,'rapidjson::GenericSchemaValidator::Reset()'],['../classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722',1,'rapidjson::Writer::Reset()']]], + ['reseterror_275',['ResetError',['../classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7',1,'rapidjson::GenericSchemaValidator']]] ]; diff --git a/zh-cn/search/classes_0.js b/zh-cn/search/classes_0.js index a8fcc159..cc423661 100644 --- a/zh-cn/search/classes_0.js +++ b/zh-cn/search/classes_0.js @@ -1,9 +1,9 @@ var searchData= [ - ['allocator_342',['Allocator',['../classrapidjson_1_1_allocator.html',1,'']]], - ['arraydata_343',['ArrayData',['../structrapidjson_1_1_generic_value_1_1_array_data.html',1,'rapidjson::GenericValue']]], - ['ascii_344',['ASCII',['../structrapidjson_1_1_a_s_c_i_i.html',1,'rapidjson']]], - ['autoutf_345',['AutoUTF',['../structrapidjson_1_1_auto_u_t_f.html',1,'rapidjson']]], - ['autoutfinputstream_346',['AutoUTFInputStream',['../classrapidjson_1_1_auto_u_t_f_input_stream.html',1,'rapidjson']]], - ['autoutfoutputstream_347',['AutoUTFOutputStream',['../classrapidjson_1_1_auto_u_t_f_output_stream.html',1,'rapidjson']]] + ['allocator_344',['Allocator',['../classrapidjson_1_1_allocator.html',1,'']]], + ['arraydata_345',['ArrayData',['../structrapidjson_1_1_generic_value_1_1_array_data.html',1,'rapidjson::GenericValue']]], + ['ascii_346',['ASCII',['../structrapidjson_1_1_a_s_c_i_i.html',1,'rapidjson']]], + ['autoutf_347',['AutoUTF',['../structrapidjson_1_1_auto_u_t_f.html',1,'rapidjson']]], + ['autoutfinputstream_348',['AutoUTFInputStream',['../classrapidjson_1_1_auto_u_t_f_input_stream.html',1,'rapidjson']]], + ['autoutfoutputstream_349',['AutoUTFOutputStream',['../classrapidjson_1_1_auto_u_t_f_output_stream.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_1.js b/zh-cn/search/classes_1.js index a9b69539..58856293 100644 --- a/zh-cn/search/classes_1.js +++ b/zh-cn/search/classes_1.js @@ -1,6 +1,6 @@ var searchData= [ - ['basereaderhandler_348',['BaseReaderHandler',['../structrapidjson_1_1_base_reader_handler.html',1,'rapidjson']]], - ['basicistreamwrapper_349',['BasicIStreamWrapper',['../classrapidjson_1_1_basic_i_stream_wrapper.html',1,'rapidjson']]], - ['basicostreamwrapper_350',['BasicOStreamWrapper',['../classrapidjson_1_1_basic_o_stream_wrapper.html',1,'rapidjson']]] + ['basereaderhandler_350',['BaseReaderHandler',['../structrapidjson_1_1_base_reader_handler.html',1,'rapidjson']]], + ['basicistreamwrapper_351',['BasicIStreamWrapper',['../classrapidjson_1_1_basic_i_stream_wrapper.html',1,'rapidjson']]], + ['basicostreamwrapper_352',['BasicOStreamWrapper',['../classrapidjson_1_1_basic_o_stream_wrapper.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_10.js b/zh-cn/search/classes_10.js index c03c3e36..303c0830 100644 --- a/zh-cn/search/classes_10.js +++ b/zh-cn/search/classes_10.js @@ -1,6 +1,6 @@ var searchData= [ - ['token_402',['Token',['../structrapidjson_1_1_generic_pointer_1_1_token.html',1,'rapidjson::GenericPointer']]], - ['transcoder_403',['Transcoder',['../structrapidjson_1_1_transcoder.html',1,'rapidjson']]], - ['transcoder_3c_20encoding_2c_20encoding_20_3e_404',['Transcoder< Encoding, Encoding >',['../structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html',1,'rapidjson']]] + ['token_404',['Token',['../structrapidjson_1_1_generic_pointer_1_1_token.html',1,'rapidjson::GenericPointer']]], + ['transcoder_405',['Transcoder',['../structrapidjson_1_1_transcoder.html',1,'rapidjson']]], + ['transcoder_3c_20encoding_2c_20encoding_20_3e_406',['Transcoder< Encoding, Encoding >',['../structrapidjson_1_1_transcoder_3_01_encoding_00_01_encoding_01_4.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_11.js b/zh-cn/search/classes_11.js index 81c7b54a..57cb4fa6 100644 --- a/zh-cn/search/classes_11.js +++ b/zh-cn/search/classes_11.js @@ -1,11 +1,11 @@ var searchData= [ - ['u_405',['U',['../structrapidjson_1_1_generic_value_1_1_number_1_1_u.html',1,'rapidjson::GenericValue::Number']]], - ['utf16_406',['UTF16',['../structrapidjson_1_1_u_t_f16.html',1,'rapidjson']]], - ['utf16be_407',['UTF16BE',['../structrapidjson_1_1_u_t_f16_b_e.html',1,'rapidjson']]], - ['utf16le_408',['UTF16LE',['../structrapidjson_1_1_u_t_f16_l_e.html',1,'rapidjson']]], - ['utf32_409',['UTF32',['../structrapidjson_1_1_u_t_f32.html',1,'rapidjson']]], - ['utf32be_410',['UTF32BE',['../structrapidjson_1_1_u_t_f32_b_e.html',1,'rapidjson']]], - ['utf32le_411',['UTF32LE',['../structrapidjson_1_1_u_t_f32_l_e.html',1,'rapidjson']]], - ['utf8_412',['UTF8',['../structrapidjson_1_1_u_t_f8.html',1,'rapidjson']]] + ['u_407',['U',['../structrapidjson_1_1_generic_value_1_1_number_1_1_u.html',1,'rapidjson::GenericValue::Number']]], + ['utf16_408',['UTF16',['../structrapidjson_1_1_u_t_f16.html',1,'rapidjson']]], + ['utf16be_409',['UTF16BE',['../structrapidjson_1_1_u_t_f16_b_e.html',1,'rapidjson']]], + ['utf16le_410',['UTF16LE',['../structrapidjson_1_1_u_t_f16_l_e.html',1,'rapidjson']]], + ['utf32_411',['UTF32',['../structrapidjson_1_1_u_t_f32.html',1,'rapidjson']]], + ['utf32be_412',['UTF32BE',['../structrapidjson_1_1_u_t_f32_b_e.html',1,'rapidjson']]], + ['utf32le_413',['UTF32LE',['../structrapidjson_1_1_u_t_f32_l_e.html',1,'rapidjson']]], + ['utf8_414',['UTF8',['../structrapidjson_1_1_u_t_f8.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_12.js b/zh-cn/search/classes_12.js index ed4654e5..2f3e3a7a 100644 --- a/zh-cn/search/classes_12.js +++ b/zh-cn/search/classes_12.js @@ -1,4 +1,4 @@ var searchData= [ - ['writer_413',['Writer',['../classrapidjson_1_1_writer.html',1,'rapidjson']]] + ['writer_415',['Writer',['../classrapidjson_1_1_writer.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_2.js b/zh-cn/search/classes_2.js index ddc3d8cf..20858708 100644 --- a/zh-cn/search/classes_2.js +++ b/zh-cn/search/classes_2.js @@ -1,5 +1,5 @@ var searchData= [ - ['crtallocator_351',['CrtAllocator',['../classrapidjson_1_1_crt_allocator.html',1,'rapidjson']]], - ['cursorstreamwrapper_352',['CursorStreamWrapper',['../classrapidjson_1_1_cursor_stream_wrapper.html',1,'rapidjson']]] + ['crtallocator_353',['CrtAllocator',['../classrapidjson_1_1_crt_allocator.html',1,'rapidjson']]], + ['cursorstreamwrapper_354',['CursorStreamWrapper',['../classrapidjson_1_1_cursor_stream_wrapper.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_3.js b/zh-cn/search/classes_3.js index 2c081c74..0b241f03 100644 --- a/zh-cn/search/classes_3.js +++ b/zh-cn/search/classes_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['data_353',['Data',['../unionrapidjson_1_1_generic_value_1_1_data.html',1,'rapidjson::GenericValue']]] + ['data_355',['Data',['../unionrapidjson_1_1_generic_value_1_1_data.html',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/classes_4.js b/zh-cn/search/classes_4.js index ee1d0bc0..dcd35674 100644 --- a/zh-cn/search/classes_4.js +++ b/zh-cn/search/classes_4.js @@ -1,7 +1,7 @@ var searchData= [ - ['encodedinputstream_354',['EncodedInputStream',['../classrapidjson_1_1_encoded_input_stream.html',1,'rapidjson']]], - ['encodedinputstream_3c_20utf8_3c_3e_2c_20memorystream_20_3e_355',['EncodedInputStream< UTF8<>, MemoryStream >',['../classrapidjson_1_1_encoded_input_stream_3_01_u_t_f8_3_4_00_01_memory_stream_01_4.html',1,'rapidjson']]], - ['encodedoutputstream_356',['EncodedOutputStream',['../classrapidjson_1_1_encoded_output_stream.html',1,'rapidjson']]], - ['encoding_357',['Encoding',['../classrapidjson_1_1_encoding.html',1,'']]] + ['encodedinputstream_356',['EncodedInputStream',['../classrapidjson_1_1_encoded_input_stream.html',1,'rapidjson']]], + ['encodedinputstream_3c_20utf8_3c_3e_2c_20memorystream_20_3e_357',['EncodedInputStream< UTF8<>, MemoryStream >',['../classrapidjson_1_1_encoded_input_stream_3_01_u_t_f8_3_4_00_01_memory_stream_01_4.html',1,'rapidjson']]], + ['encodedoutputstream_358',['EncodedOutputStream',['../classrapidjson_1_1_encoded_output_stream.html',1,'rapidjson']]], + ['encoding_359',['Encoding',['../classrapidjson_1_1_encoding.html',1,'']]] ]; diff --git a/zh-cn/search/classes_5.js b/zh-cn/search/classes_5.js index 837c30a6..85898ea1 100644 --- a/zh-cn/search/classes_5.js +++ b/zh-cn/search/classes_5.js @@ -1,6 +1,6 @@ var searchData= [ - ['filereadstream_358',['FileReadStream',['../classrapidjson_1_1_file_read_stream.html',1,'rapidjson']]], - ['filewritestream_359',['FileWriteStream',['../classrapidjson_1_1_file_write_stream.html',1,'rapidjson']]], - ['flag_360',['Flag',['../structrapidjson_1_1_generic_value_1_1_flag.html',1,'rapidjson::GenericValue']]] + ['filereadstream_360',['FileReadStream',['../classrapidjson_1_1_file_read_stream.html',1,'rapidjson']]], + ['filewritestream_361',['FileWriteStream',['../classrapidjson_1_1_file_write_stream.html',1,'rapidjson']]], + ['flag_362',['Flag',['../structrapidjson_1_1_generic_value_1_1_flag.html',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/classes_6.js b/zh-cn/search/classes_6.js index 9dc6d8c2..ca429527 100644 --- a/zh-cn/search/classes_6.js +++ b/zh-cn/search/classes_6.js @@ -1,23 +1,23 @@ var searchData= [ - ['genericarray_361',['GenericArray',['../classrapidjson_1_1_generic_array.html',1,'rapidjson']]], - ['genericdocument_362',['GenericDocument',['../classrapidjson_1_1_generic_document.html',1,'rapidjson']]], - ['genericinsitustringstream_363',['GenericInsituStringStream',['../structrapidjson_1_1_generic_insitu_string_stream.html',1,'rapidjson']]], - ['genericmember_364',['GenericMember',['../classrapidjson_1_1_generic_member.html',1,'rapidjson']]], - ['genericmemberiterator_365',['GenericMemberIterator',['../classrapidjson_1_1_generic_member_iterator.html',1,'rapidjson']]], - ['genericmemorybuffer_366',['GenericMemoryBuffer',['../structrapidjson_1_1_generic_memory_buffer.html',1,'rapidjson']]], - ['genericobject_367',['GenericObject',['../classrapidjson_1_1_generic_object.html',1,'rapidjson']]], - ['genericpointer_368',['GenericPointer',['../classrapidjson_1_1_generic_pointer.html',1,'rapidjson']]], - ['genericreader_369',['GenericReader',['../classrapidjson_1_1_generic_reader.html',1,'rapidjson']]], - ['genericschemadocument_370',['GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html',1,'rapidjson']]], - ['genericschemavalidator_371',['GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html',1,'rapidjson']]], - ['genericstreamwrapper_372',['GenericStreamWrapper',['../classrapidjson_1_1_generic_stream_wrapper.html',1,'rapidjson']]], - ['genericstringbuffer_373',['GenericStringBuffer',['../classrapidjson_1_1_generic_string_buffer.html',1,'rapidjson']]], - ['genericstringref_374',['GenericStringRef',['../structrapidjson_1_1_generic_string_ref.html',1,'rapidjson']]], - ['genericstringstream_375',['GenericStringStream',['../structrapidjson_1_1_generic_string_stream.html',1,'rapidjson']]], - ['genericvalue_376',['GenericValue',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], - ['genericvalue_3c_20encodingtype_2c_20allocator_20_3e_377',['GenericValue< EncodingType, Allocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], - ['genericvalue_3c_20encodingtype_2c_20stateallocator_20_3e_378',['GenericValue< EncodingType, StateAllocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], - ['genericvalue_3c_20rapidjson_3a_3aencoding_2c_20rapidjson_3a_3aallocator_20_3e_379',['GenericValue< rapidjson::Encoding, rapidjson::Allocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], - ['genericvalue_3c_20sourceencoding_2c_20stackallocator_20_3e_380',['GenericValue< SourceEncoding, StackAllocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]] + ['genericarray_363',['GenericArray',['../classrapidjson_1_1_generic_array.html',1,'rapidjson']]], + ['genericdocument_364',['GenericDocument',['../classrapidjson_1_1_generic_document.html',1,'rapidjson']]], + ['genericinsitustringstream_365',['GenericInsituStringStream',['../structrapidjson_1_1_generic_insitu_string_stream.html',1,'rapidjson']]], + ['genericmember_366',['GenericMember',['../classrapidjson_1_1_generic_member.html',1,'rapidjson']]], + ['genericmemberiterator_367',['GenericMemberIterator',['../classrapidjson_1_1_generic_member_iterator.html',1,'rapidjson']]], + ['genericmemorybuffer_368',['GenericMemoryBuffer',['../structrapidjson_1_1_generic_memory_buffer.html',1,'rapidjson']]], + ['genericobject_369',['GenericObject',['../classrapidjson_1_1_generic_object.html',1,'rapidjson']]], + ['genericpointer_370',['GenericPointer',['../classrapidjson_1_1_generic_pointer.html',1,'rapidjson']]], + ['genericreader_371',['GenericReader',['../classrapidjson_1_1_generic_reader.html',1,'rapidjson']]], + ['genericschemadocument_372',['GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html',1,'rapidjson']]], + ['genericschemavalidator_373',['GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html',1,'rapidjson']]], + ['genericstreamwrapper_374',['GenericStreamWrapper',['../classrapidjson_1_1_generic_stream_wrapper.html',1,'rapidjson']]], + ['genericstringbuffer_375',['GenericStringBuffer',['../classrapidjson_1_1_generic_string_buffer.html',1,'rapidjson']]], + ['genericstringref_376',['GenericStringRef',['../structrapidjson_1_1_generic_string_ref.html',1,'rapidjson']]], + ['genericstringstream_377',['GenericStringStream',['../structrapidjson_1_1_generic_string_stream.html',1,'rapidjson']]], + ['genericvalue_378',['GenericValue',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], + ['genericvalue_3c_20encodingtype_2c_20allocator_20_3e_379',['GenericValue< EncodingType, Allocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], + ['genericvalue_3c_20encodingtype_2c_20stateallocator_20_3e_380',['GenericValue< EncodingType, StateAllocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], + ['genericvalue_3c_20rapidjson_3a_3aencoding_2c_20rapidjson_3a_3aallocator_20_3e_381',['GenericValue< rapidjson::Encoding, rapidjson::Allocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]], + ['genericvalue_3c_20sourceencoding_2c_20stackallocator_20_3e_382',['GenericValue< SourceEncoding, StackAllocator >',['../classrapidjson_1_1_generic_value.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_7.js b/zh-cn/search/classes_7.js index 39006bb9..f8f31941 100644 --- a/zh-cn/search/classes_7.js +++ b/zh-cn/search/classes_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['handler_381',['Handler',['../classrapidjson_1_1_handler.html',1,'']]] + ['handler_383',['Handler',['../classrapidjson_1_1_handler.html',1,'']]] ]; diff --git a/zh-cn/search/classes_8.js b/zh-cn/search/classes_8.js index e2cac542..f1e24086 100644 --- a/zh-cn/search/classes_8.js +++ b/zh-cn/search/classes_8.js @@ -1,5 +1,5 @@ var searchData= [ - ['i_382',['I',['../structrapidjson_1_1_generic_value_1_1_number_1_1_i.html',1,'rapidjson::GenericValue::Number']]], - ['igenericremoteschemadocumentprovider_383',['IGenericRemoteSchemaDocumentProvider',['../classrapidjson_1_1_i_generic_remote_schema_document_provider.html',1,'rapidjson']]] + ['i_384',['I',['../structrapidjson_1_1_generic_value_1_1_number_1_1_i.html',1,'rapidjson::GenericValue::Number']]], + ['igenericremoteschemadocumentprovider_385',['IGenericRemoteSchemaDocumentProvider',['../classrapidjson_1_1_i_generic_remote_schema_document_provider.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_9.js b/zh-cn/search/classes_9.js index da233cbb..1e41da15 100644 --- a/zh-cn/search/classes_9.js +++ b/zh-cn/search/classes_9.js @@ -1,4 +1,4 @@ var searchData= [ - ['level_384',['Level',['../structrapidjson_1_1_writer_1_1_level.html',1,'rapidjson::Writer']]] + ['level_386',['Level',['../structrapidjson_1_1_writer_1_1_level.html',1,'rapidjson::Writer']]] ]; diff --git a/zh-cn/search/classes_a.js b/zh-cn/search/classes_a.js index d0cb0cd5..e42221d4 100644 --- a/zh-cn/search/classes_a.js +++ b/zh-cn/search/classes_a.js @@ -1,5 +1,5 @@ var searchData= [ - ['memorypoolallocator_385',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html',1,'rapidjson']]], - ['memorystream_386',['MemoryStream',['../structrapidjson_1_1_memory_stream.html',1,'rapidjson']]] + ['memorypoolallocator_387',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html',1,'rapidjson']]], + ['memorystream_388',['MemoryStream',['../structrapidjson_1_1_memory_stream.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_b.js b/zh-cn/search/classes_b.js index b3a5d890..88fddbf6 100644 --- a/zh-cn/search/classes_b.js +++ b/zh-cn/search/classes_b.js @@ -1,4 +1,4 @@ var searchData= [ - ['number_387',['Number',['../unionrapidjson_1_1_generic_value_1_1_number.html',1,'rapidjson::GenericValue']]] + ['number_389',['Number',['../unionrapidjson_1_1_generic_value_1_1_number.html',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/classes_c.js b/zh-cn/search/classes_c.js index 2702bcbd..83f2203a 100644 --- a/zh-cn/search/classes_c.js +++ b/zh-cn/search/classes_c.js @@ -1,4 +1,4 @@ var searchData= [ - ['objectdata_388',['ObjectData',['../structrapidjson_1_1_generic_value_1_1_object_data.html',1,'rapidjson::GenericValue']]] + ['objectdata_390',['ObjectData',['../structrapidjson_1_1_generic_value_1_1_object_data.html',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/classes_d.js b/zh-cn/search/classes_d.js index 96eb8052..8562ff50 100644 --- a/zh-cn/search/classes_d.js +++ b/zh-cn/search/classes_d.js @@ -1,6 +1,6 @@ var searchData= [ - ['parseresult_389',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result',1,'rapidjson']]], - ['percentencodestream_390',['PercentEncodeStream',['../classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html',1,'rapidjson::GenericPointer']]], - ['prettywriter_391',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html',1,'rapidjson']]] + ['parseresult_391',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#structrapidjson_1_1_parse_result',1,'rapidjson']]], + ['percentencodestream_392',['PercentEncodeStream',['../classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html',1,'rapidjson::GenericPointer']]], + ['prettywriter_393',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html',1,'rapidjson']]] ]; diff --git a/zh-cn/search/classes_e.js b/zh-cn/search/classes_e.js index 3eecdc15..db5ba438 100644 --- a/zh-cn/search/classes_e.js +++ b/zh-cn/search/classes_e.js @@ -1,4 +1,4 @@ var searchData= [ - ['rebind_392',['rebind',['../structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html',1,'rapidjson::StdAllocator< void, BaseAllocator >::rebind< U >'],['../structrapidjson_1_1_std_allocator_1_1rebind.html',1,'rapidjson::StdAllocator< T, BaseAllocator >::rebind< U >']]] + ['rebind_394',['rebind',['../structrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4_1_1rebind.html',1,'rapidjson::StdAllocator< void, BaseAllocator >::rebind< U >'],['../structrapidjson_1_1_std_allocator_1_1rebind.html',1,'rapidjson::StdAllocator< T, BaseAllocator >::rebind< U >']]] ]; diff --git a/zh-cn/search/classes_f.js b/zh-cn/search/classes_f.js index f6f535c9..abd82208 100644 --- a/zh-cn/search/classes_f.js +++ b/zh-cn/search/classes_f.js @@ -1,12 +1,12 @@ var searchData= [ - ['schemavalidatingreader_393',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html',1,'rapidjson']]], - ['shortstring_394',['ShortString',['../structrapidjson_1_1_generic_value_1_1_short_string.html',1,'rapidjson::GenericValue']]], - ['stdallocator_395',['StdAllocator',['../classrapidjson_1_1_std_allocator.html',1,'rapidjson']]], - ['stdallocator_3c_20void_2c_20baseallocator_20_3e_396',['StdAllocator< void, BaseAllocator >',['../classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html',1,'rapidjson']]], - ['stream_397',['Stream',['../classrapidjson_1_1_stream.html',1,'']]], - ['streamtraits_398',['StreamTraits',['../structrapidjson_1_1_stream_traits.html',1,'rapidjson']]], - ['streamtraits_3c_20genericinsitustringstream_3c_20encoding_20_3e_20_3e_399',['StreamTraits< GenericInsituStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], - ['streamtraits_3c_20genericstringstream_3c_20encoding_20_3e_20_3e_400',['StreamTraits< GenericStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], - ['string_401',['String',['../structrapidjson_1_1_generic_value_1_1_string.html',1,'rapidjson::GenericValue']]] + ['schemavalidatingreader_395',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html',1,'rapidjson']]], + ['shortstring_396',['ShortString',['../structrapidjson_1_1_generic_value_1_1_short_string.html',1,'rapidjson::GenericValue']]], + ['stdallocator_397',['StdAllocator',['../classrapidjson_1_1_std_allocator.html',1,'rapidjson']]], + ['stdallocator_3c_20void_2c_20baseallocator_20_3e_398',['StdAllocator< void, BaseAllocator >',['../classrapidjson_1_1_std_allocator_3_01void_00_01_base_allocator_01_4.html',1,'rapidjson']]], + ['stream_399',['Stream',['../classrapidjson_1_1_stream.html',1,'']]], + ['streamtraits_400',['StreamTraits',['../structrapidjson_1_1_stream_traits.html',1,'rapidjson']]], + ['streamtraits_3c_20genericinsitustringstream_3c_20encoding_20_3e_20_3e_401',['StreamTraits< GenericInsituStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_insitu_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], + ['streamtraits_3c_20genericstringstream_3c_20encoding_20_3e_20_3e_402',['StreamTraits< GenericStringStream< Encoding > >',['../structrapidjson_1_1_stream_traits_3_01_generic_string_stream_3_01_encoding_01_4_01_4.html',1,'rapidjson']]], + ['string_403',['String',['../structrapidjson_1_1_generic_value_1_1_string.html',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/defines_0.js b/zh-cn/search/defines_0.js index 17cc9d15..363b12be 100644 --- a/zh-cn/search/defines_0.js +++ b/zh-cn/search/defines_0.js @@ -1,13 +1,13 @@ var searchData= [ - ['rapidjson_5f64bit_652',['RAPIDJSON_64BIT',['../rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52',1,'rapidjson.h']]], - ['rapidjson_5fbigendian_653',['RAPIDJSON_BIGENDIAN',['../rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974',1,'rapidjson.h']]], - ['rapidjson_5fdelete_654',['RAPIDJSON_DELETE',['../rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a',1,'rapidjson.h']]], - ['rapidjson_5ffree_655',['RAPIDJSON_FREE',['../rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f',1,'rapidjson.h']]], - ['rapidjson_5flittleendian_656',['RAPIDJSON_LITTLEENDIAN',['../rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c',1,'rapidjson.h']]], - ['rapidjson_5fmalloc_657',['RAPIDJSON_MALLOC',['../rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27',1,'rapidjson.h']]], - ['rapidjson_5fnew_658',['RAPIDJSON_NEW',['../rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b',1,'rapidjson.h']]], - ['rapidjson_5frealloc_659',['RAPIDJSON_REALLOC',['../rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67',1,'rapidjson.h']]], - ['rapidjson_5fstatic_5fassert_660',['RAPIDJSON_STATIC_ASSERT',['../rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4',1,'rapidjson.h']]], - ['rapidjson_5fuint64_5fc2_661',['RAPIDJSON_UINT64_C2',['../rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f',1,'rapidjson.h']]] + ['rapidjson_5f64bit_655',['RAPIDJSON_64BIT',['../rapidjson_8h.html#a93973847cb99354b6b5bb5605aa7fe52',1,'rapidjson.h']]], + ['rapidjson_5fbigendian_656',['RAPIDJSON_BIGENDIAN',['../rapidjson_8h.html#ac7951ebf8a2624ab85d2dcd3ec7af974',1,'rapidjson.h']]], + ['rapidjson_5fdelete_657',['RAPIDJSON_DELETE',['../rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a',1,'rapidjson.h']]], + ['rapidjson_5ffree_658',['RAPIDJSON_FREE',['../rapidjson_8h.html#aa6d5138eed2c5b311d9862d191393a5f',1,'rapidjson.h']]], + ['rapidjson_5flittleendian_659',['RAPIDJSON_LITTLEENDIAN',['../rapidjson_8h.html#addcc0c3607c5790f35cc4c15885ff97c',1,'rapidjson.h']]], + ['rapidjson_5fmalloc_660',['RAPIDJSON_MALLOC',['../rapidjson_8h.html#a047ad77d620d1ae97c1bc70a9f316f27',1,'rapidjson.h']]], + ['rapidjson_5fnew_661',['RAPIDJSON_NEW',['../rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b',1,'rapidjson.h']]], + ['rapidjson_5frealloc_662',['RAPIDJSON_REALLOC',['../rapidjson_8h.html#aa2c0f2121d7803191a43609ea5d8dd67',1,'rapidjson.h']]], + ['rapidjson_5fstatic_5fassert_663',['RAPIDJSON_STATIC_ASSERT',['../rapidjson_8h.html#af95188da1d8eb6d4b148fe9ce71cd7c4',1,'rapidjson.h']]], + ['rapidjson_5fuint64_5fc2_664',['RAPIDJSON_UINT64_C2',['../rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f',1,'rapidjson.h']]] ]; diff --git a/zh-cn/search/enums_0.js b/zh-cn/search/enums_0.js index 13b5bf01..216c7bc7 100644 --- a/zh-cn/search/enums_0.js +++ b/zh-cn/search/enums_0.js @@ -1,7 +1,7 @@ var searchData= [ - ['parseerrorcode_559',['ParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60',1,'rapidjson']]], - ['parseflag_560',['ParseFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9',1,'rapidjson']]], - ['pointerparseerrorcode_561',['PointerParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b',1,'rapidjson']]], - ['prettyformatoptions_562',['PrettyFormatOptions',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b',1,'rapidjson']]] + ['parseerrorcode_562',['ParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7d3acf640886b1f2552dc8c4cd6dea60',1,'rapidjson']]], + ['parseflag_563',['ParseFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9',1,'rapidjson']]], + ['pointerparseerrorcode_564',['PointerParseErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b',1,'rapidjson']]], + ['prettyformatoptions_565',['PrettyFormatOptions',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4b',1,'rapidjson']]] ]; diff --git a/zh-cn/search/enums_1.js b/zh-cn/search/enums_1.js index 8deda56d..f4bd887d 100644 --- a/zh-cn/search/enums_1.js +++ b/zh-cn/search/enums_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['type_563',['Type',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4',1,'rapidjson']]] + ['type_566',['Type',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4',1,'rapidjson']]] ]; diff --git a/zh-cn/search/enums_2.js b/zh-cn/search/enums_2.js index a4dfcc77..9c496ee5 100644 --- a/zh-cn/search/enums_2.js +++ b/zh-cn/search/enums_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['utftype_564',['UTFType',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb',1,'rapidjson']]] + ['utftype_567',['UTFType',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb',1,'rapidjson']]] ]; diff --git a/zh-cn/search/enums_3.js b/zh-cn/search/enums_3.js index a9cd5208..93cf8638 100644 --- a/zh-cn/search/enums_3.js +++ b/zh-cn/search/enums_3.js @@ -1,5 +1,5 @@ var searchData= [ - ['validateerrorcode_565',['ValidateErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga633f43fd92e6ed5ceb87dbf570647847',1,'rapidjson']]], - ['validateflag_566',['ValidateFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5',1,'rapidjson']]] + ['validateerrorcode_568',['ValidateErrorCode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga633f43fd92e6ed5ceb87dbf570647847',1,'rapidjson']]], + ['validateflag_569',['ValidateFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5',1,'rapidjson']]] ]; diff --git a/zh-cn/search/enums_4.js b/zh-cn/search/enums_4.js index e5d177a6..78695eab 100644 --- a/zh-cn/search/enums_4.js +++ b/zh-cn/search/enums_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['writeflag_567',['WriteFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19',1,'rapidjson']]] + ['writeflag_570',['WriteFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19',1,'rapidjson']]] ]; diff --git a/zh-cn/search/enumvalues_0.js b/zh-cn/search/enumvalues_0.js index bd6fc4ae..5563e43e 100644 --- a/zh-cn/search/enumvalues_0.js +++ b/zh-cn/search/enumvalues_0.js @@ -1,86 +1,86 @@ var searchData= [ - ['karraytype_568',['kArrayType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468',1,'rapidjson']]], - ['kfalsetype_569',['kFalseType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607',1,'rapidjson']]], - ['kformatdefault_570',['kFormatDefault',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba8164b0d4993439856171585b9cf3adc0',1,'rapidjson']]], - ['kformatsinglelinearray_571',['kFormatSingleLineArray',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba64b0f8a37ab3125118682046ff06500f',1,'rapidjson']]], - ['knulltype_572',['kNullType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff',1,'rapidjson']]], - ['knumbertype_573',['kNumberType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a',1,'rapidjson']]], - ['kobjecttype_574',['kObjectType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9',1,'rapidjson']]], - ['kparsecommentsflag_575',['kParseCommentsFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9ab5d719b36aac626135d5d622d0d837c1',1,'rapidjson']]], - ['kparsedefaultflags_576',['kParseDefaultFlags',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a5640cb00db7814b7f22be3683dda9835',1,'rapidjson']]], - ['kparseerrorarraymisscommaorsquarebracket_577',['kParseErrorArrayMissCommaOrSquareBracket',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a1a4ac97731f997e9591b40f98ecd9f93',1,'rapidjson']]], - ['kparseerrordocumentempty_578',['kParseErrorDocumentEmpty',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a06183076357ebd9eca228666f614c286',1,'rapidjson']]], - ['kparseerrordocumentrootnotsingular_579',['kParseErrorDocumentRootNotSingular',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2022599bcd4f64d58885a026f95751d5',1,'rapidjson']]], - ['kparseerrornone_580',['kParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a86a60b723dca32df5debab2c3db4235f',1,'rapidjson']]], - ['kparseerrornumbermissexponent_581',['kParseErrorNumberMissExponent',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a28a1c720ae63560780ccd992dc999ab7',1,'rapidjson']]], - ['kparseerrornumbermissfraction_582',['kParseErrorNumberMissFraction',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f',1,'rapidjson']]], - ['kparseerrornumbertoobig_583',['kParseErrorNumberTooBig',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a240cebadea89f7282ab263b5a22c9805',1,'rapidjson']]], - ['kparseerrorobjectmisscolon_584',['kParseErrorObjectMissColon',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a58e952084a0dfdbc5630f624252aef5c',1,'rapidjson']]], - ['kparseerrorobjectmisscommaorcurlybracket_585',['kParseErrorObjectMissCommaOrCurlyBracket',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2a81a684f39fc882ec99f07e86343f73',1,'rapidjson']]], - ['kparseerrorobjectmissname_586',['kParseErrorObjectMissName',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab707b848425668e765def25554735242',1,'rapidjson']]], - ['kparseerrorstringescapeinvalid_587',['kParseErrorStringEscapeInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a8dd0af5e6103a6503c61c38cb2b0bab9',1,'rapidjson']]], - ['kparseerrorstringinvalidencoding_588',['kParseErrorStringInvalidEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a62ce0f5c74e4ab34ac325d2adda8fa8f',1,'rapidjson']]], - ['kparseerrorstringmissquotationmark_589',['kParseErrorStringMissQuotationMark',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60af7daa91caa53abb881ea231a874a4f40',1,'rapidjson']]], - ['kparseerrorstringunicodeescapeinvalidhex_590',['kParseErrorStringUnicodeEscapeInvalidHex',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a23c38bf88b8448555c0eb41e1735bd92',1,'rapidjson']]], - ['kparseerrorstringunicodesurrogateinvalid_591',['kParseErrorStringUnicodeSurrogateInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a636209a2e516fbdb4db5ad0a83a6b386',1,'rapidjson']]], - ['kparseerrortermination_592',['kParseErrorTermination',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab250f87c3d8454c579364b5a0f697a50',1,'rapidjson']]], - ['kparseerrorunspecificsyntaxerror_593',['kParseErrorUnspecificSyntaxError',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a7abf1a337294d984a3f4d18b5843fb24',1,'rapidjson']]], - ['kparseerrorvalueinvalid_594',['kParseErrorValueInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57',1,'rapidjson']]], - ['kparseescapedapostropheflag_595',['kParseEscapedApostropheFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a9d0cd4c136483497f32f4af366b12d63',1,'rapidjson']]], - ['kparsefullprecisionflag_596',['kParseFullPrecisionFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0',1,'rapidjson']]], - ['kparseinsituflag_597',['kParseInsituFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea',1,'rapidjson']]], - ['kparseiterativeflag_598',['kParseIterativeFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a7923686c8bdb7614699f1fb1bb615bb2',1,'rapidjson']]], - ['kparsenanandinfflag_599',['kParseNanAndInfFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8',1,'rapidjson']]], - ['kparsenoflags_600',['kParseNoFlags',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0',1,'rapidjson']]], - ['kparsenumbersasstringsflag_601',['kParseNumbersAsStringsFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987',1,'rapidjson']]], - ['kparsestopwhendoneflag_602',['kParseStopWhenDoneFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af84c60868704433b80aa51a62e042bb1',1,'rapidjson']]], - ['kparsetrailingcommasflag_603',['kParseTrailingCommasFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec',1,'rapidjson']]], - ['kparsevalidateencodingflag_604',['kParseValidateEncodingFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a3df81f75479da8e052393f92cbec394b',1,'rapidjson']]], - ['kpointerparseerrorcharactermustpercentencode_605',['kPointerParseErrorCharacterMustPercentEncode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7bae244a98f53279fda5a750f847b81c54f',1,'rapidjson']]], - ['kpointerparseerrorinvalidescape_606',['kPointerParseErrorInvalidEscape',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba907c9fe4e541b257513e3a18635379f7',1,'rapidjson']]], - ['kpointerparseerrorinvalidpercentencoding_607',['kPointerParseErrorInvalidPercentEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba29831a02b8ee23a05d552b47f4d64d28',1,'rapidjson']]], - ['kpointerparseerrornone_608',['kPointerParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba9094f236b2ec70c42f1ea91dffc1e39b',1,'rapidjson']]], - ['kpointerparseerrortokenmustbeginwithsolidus_609',['kPointerParseErrorTokenMustBeginWithSolidus',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba2f2f8b238e201b7d540e8914bbfd2bed',1,'rapidjson']]], - ['kstringtype_610',['kStringType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7',1,'rapidjson']]], - ['ktruetype_611',['kTrueType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e',1,'rapidjson']]], - ['kutf16be_612',['kUTF16BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d',1,'rapidjson']]], - ['kutf16le_613',['kUTF16LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebaa7ffda68d3584eb92155daf3cd1d6481',1,'rapidjson']]], - ['kutf32be_614',['kUTF32BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f',1,'rapidjson']]], - ['kutf32le_615',['kUTF32LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4',1,'rapidjson']]], - ['kutf8_616',['kUTF8',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba3bda3a2e3f0ec2b7e8c5a3d5d4f60a81',1,'rapidjson']]], - ['kvalidatecontinueonerrorflag_617',['kValidateContinueOnErrorFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699',1,'rapidjson']]], - ['kvalidatedefaultflags_618',['kValidateDefaultFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5aee88d74111644920cabddc20fe57eb7c',1,'rapidjson']]], - ['kvalidateerroradditionalitems_619',['kValidateErrorAdditionalItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb',1,'rapidjson']]], - ['kvalidateerroradditionalproperties_620',['kValidateErrorAdditionalProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b',1,'rapidjson']]], - ['kvalidateerrorallof_621',['kValidateErrorAllOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666',1,'rapidjson']]], - ['kvalidateerroranyof_622',['kValidateErrorAnyOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aaba92c1f6cbea5e14e5e8d8b86b042d4',1,'rapidjson']]], - ['kvalidateerrordependencies_623',['kValidateErrorDependencies',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962',1,'rapidjson']]], - ['kvalidateerrorenum_624',['kValidateErrorEnum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3',1,'rapidjson']]], - ['kvalidateerrorexclusivemaximum_625',['kValidateErrorExclusiveMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff',1,'rapidjson']]], - ['kvalidateerrorexclusiveminimum_626',['kValidateErrorExclusiveMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b',1,'rapidjson']]], - ['kvalidateerrormaximum_627',['kValidateErrorMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b',1,'rapidjson']]], - ['kvalidateerrormaxitems_628',['kValidateErrorMaxItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa',1,'rapidjson']]], - ['kvalidateerrormaxlength_629',['kValidateErrorMaxLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49',1,'rapidjson']]], - ['kvalidateerrormaxproperties_630',['kValidateErrorMaxProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e',1,'rapidjson']]], - ['kvalidateerrorminimum_631',['kValidateErrorMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad365b8abebe4008652940df0a5add9c4',1,'rapidjson']]], - ['kvalidateerrorminitems_632',['kValidateErrorMinItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adbf02986e366165c0ef1d89697893802',1,'rapidjson']]], - ['kvalidateerrorminlength_633',['kValidateErrorMinLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e',1,'rapidjson']]], - ['kvalidateerrorminproperties_634',['kValidateErrorMinProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f',1,'rapidjson']]], - ['kvalidateerrormultipleof_635',['kValidateErrorMultipleOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aa01437cd68a424643a8d9c12c1a3ff5a',1,'rapidjson']]], - ['kvalidateerrornone_636',['kValidateErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a569afaca49e48ee8bd928284409dcab5',1,'rapidjson']]], - ['kvalidateerrornot_637',['kValidateErrorNot',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429',1,'rapidjson']]], - ['kvalidateerroroneof_638',['kValidateErrorOneOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103',1,'rapidjson']]], - ['kvalidateerroroneofmatch_639',['kValidateErrorOneOfMatch',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d',1,'rapidjson']]], - ['kvalidateerrorpattern_640',['kValidateErrorPattern',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a',1,'rapidjson']]], - ['kvalidateerrorpatternproperties_641',['kValidateErrorPatternProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac6f7c8c63dd5ec2c838f34c49300e0a1',1,'rapidjson']]], - ['kvalidateerrorrequired_642',['kValidateErrorRequired',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446',1,'rapidjson']]], - ['kvalidateerrors_643',['kValidateErrors',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e',1,'rapidjson']]], - ['kvalidateerrortype_644',['kValidateErrorType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a7035a7fc3f6b3a51c91be264537fc504',1,'rapidjson']]], - ['kvalidateerroruniqueitems_645',['kValidateErrorUniqueItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aebecfc4b0017d7ff7eeeb32a8c97b509',1,'rapidjson']]], - ['kvalidatenoflags_646',['kValidateNoFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde',1,'rapidjson']]], - ['kwritedefaultflags_647',['kWriteDefaultFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226',1,'rapidjson']]], - ['kwritenanandinfflag_648',['kWriteNanAndInfFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39',1,'rapidjson']]], - ['kwritenoflags_649',['kWriteNoFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a',1,'rapidjson']]], - ['kwritevalidateencodingflag_650',['kWriteValidateEncodingFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10',1,'rapidjson']]] + ['karraytype_571',['kArrayType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468',1,'rapidjson']]], + ['kfalsetype_572',['kFalseType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607',1,'rapidjson']]], + ['kformatdefault_573',['kFormatDefault',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba8164b0d4993439856171585b9cf3adc0',1,'rapidjson']]], + ['kformatsinglelinearray_574',['kFormatSingleLineArray',['../namespacerapidjson.html#a084b31753ef2edefdeca8a5374eccc4ba64b0f8a37ab3125118682046ff06500f',1,'rapidjson']]], + ['knulltype_575',['kNullType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff',1,'rapidjson']]], + ['knumbertype_576',['kNumberType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a',1,'rapidjson']]], + ['kobjecttype_577',['kObjectType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9',1,'rapidjson']]], + ['kparsecommentsflag_578',['kParseCommentsFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9ab5d719b36aac626135d5d622d0d837c1',1,'rapidjson']]], + ['kparsedefaultflags_579',['kParseDefaultFlags',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a5640cb00db7814b7f22be3683dda9835',1,'rapidjson']]], + ['kparseerrorarraymisscommaorsquarebracket_580',['kParseErrorArrayMissCommaOrSquareBracket',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a1a4ac97731f997e9591b40f98ecd9f93',1,'rapidjson']]], + ['kparseerrordocumentempty_581',['kParseErrorDocumentEmpty',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a06183076357ebd9eca228666f614c286',1,'rapidjson']]], + ['kparseerrordocumentrootnotsingular_582',['kParseErrorDocumentRootNotSingular',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2022599bcd4f64d58885a026f95751d5',1,'rapidjson']]], + ['kparseerrornone_583',['kParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a86a60b723dca32df5debab2c3db4235f',1,'rapidjson']]], + ['kparseerrornumbermissexponent_584',['kParseErrorNumberMissExponent',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a28a1c720ae63560780ccd992dc999ab7',1,'rapidjson']]], + ['kparseerrornumbermissfraction_585',['kParseErrorNumberMissFraction',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ac840ece3ba6874fe6f16c01ebb71031f',1,'rapidjson']]], + ['kparseerrornumbertoobig_586',['kParseErrorNumberTooBig',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a240cebadea89f7282ab263b5a22c9805',1,'rapidjson']]], + ['kparseerrorobjectmisscolon_587',['kParseErrorObjectMissColon',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a58e952084a0dfdbc5630f624252aef5c',1,'rapidjson']]], + ['kparseerrorobjectmisscommaorcurlybracket_588',['kParseErrorObjectMissCommaOrCurlyBracket',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a2a81a684f39fc882ec99f07e86343f73',1,'rapidjson']]], + ['kparseerrorobjectmissname_589',['kParseErrorObjectMissName',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab707b848425668e765def25554735242',1,'rapidjson']]], + ['kparseerrorstringescapeinvalid_590',['kParseErrorStringEscapeInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a8dd0af5e6103a6503c61c38cb2b0bab9',1,'rapidjson']]], + ['kparseerrorstringinvalidencoding_591',['kParseErrorStringInvalidEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a62ce0f5c74e4ab34ac325d2adda8fa8f',1,'rapidjson']]], + ['kparseerrorstringmissquotationmark_592',['kParseErrorStringMissQuotationMark',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60af7daa91caa53abb881ea231a874a4f40',1,'rapidjson']]], + ['kparseerrorstringunicodeescapeinvalidhex_593',['kParseErrorStringUnicodeEscapeInvalidHex',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a23c38bf88b8448555c0eb41e1735bd92',1,'rapidjson']]], + ['kparseerrorstringunicodesurrogateinvalid_594',['kParseErrorStringUnicodeSurrogateInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a636209a2e516fbdb4db5ad0a83a6b386',1,'rapidjson']]], + ['kparseerrortermination_595',['kParseErrorTermination',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab250f87c3d8454c579364b5a0f697a50',1,'rapidjson']]], + ['kparseerrorunspecificsyntaxerror_596',['kParseErrorUnspecificSyntaxError',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60a7abf1a337294d984a3f4d18b5843fb24',1,'rapidjson']]], + ['kparseerrorvalueinvalid_597',['kParseErrorValueInvalid',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga7d3acf640886b1f2552dc8c4cd6dea60ab7fa69bce0c393cf3a2b6065111f2f57',1,'rapidjson']]], + ['kparseescapedapostropheflag_598',['kParseEscapedApostropheFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a9d0cd4c136483497f32f4af366b12d63',1,'rapidjson']]], + ['kparsefullprecisionflag_599',['kParseFullPrecisionFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0',1,'rapidjson']]], + ['kparseinsituflag_600',['kParseInsituFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea',1,'rapidjson']]], + ['kparseiterativeflag_601',['kParseIterativeFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a7923686c8bdb7614699f1fb1bb615bb2',1,'rapidjson']]], + ['kparsenanandinfflag_602',['kParseNanAndInfFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8',1,'rapidjson']]], + ['kparsenoflags_603',['kParseNoFlags',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0',1,'rapidjson']]], + ['kparsenumbersasstringsflag_604',['kParseNumbersAsStringsFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987',1,'rapidjson']]], + ['kparsestopwhendoneflag_605',['kParseStopWhenDoneFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af84c60868704433b80aa51a62e042bb1',1,'rapidjson']]], + ['kparsetrailingcommasflag_606',['kParseTrailingCommasFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec',1,'rapidjson']]], + ['kparsevalidateencodingflag_607',['kParseValidateEncodingFlag',['../namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a3df81f75479da8e052393f92cbec394b',1,'rapidjson']]], + ['kpointerparseerrorcharactermustpercentencode_608',['kPointerParseErrorCharacterMustPercentEncode',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7bae244a98f53279fda5a750f847b81c54f',1,'rapidjson']]], + ['kpointerparseerrorinvalidescape_609',['kPointerParseErrorInvalidEscape',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba907c9fe4e541b257513e3a18635379f7',1,'rapidjson']]], + ['kpointerparseerrorinvalidpercentencoding_610',['kPointerParseErrorInvalidPercentEncoding',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba29831a02b8ee23a05d552b47f4d64d28',1,'rapidjson']]], + ['kpointerparseerrornone_611',['kPointerParseErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba9094f236b2ec70c42f1ea91dffc1e39b',1,'rapidjson']]], + ['kpointerparseerrortokenmustbeginwithsolidus_612',['kPointerParseErrorTokenMustBeginWithSolidus',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ggade540ee4cc2a416c23b8ee2c12393c7ba2f2f8b238e201b7d540e8914bbfd2bed',1,'rapidjson']]], + ['kstringtype_613',['kStringType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7',1,'rapidjson']]], + ['ktruetype_614',['kTrueType',['../namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e',1,'rapidjson']]], + ['kutf16be_615',['kUTF16BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba52c496755de96eee05275a423b36299d',1,'rapidjson']]], + ['kutf16le_616',['kUTF16LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebaa7ffda68d3584eb92155daf3cd1d6481',1,'rapidjson']]], + ['kutf32be_617',['kUTF32BE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773ebad6db204b848081468878ed58bc20ce8f',1,'rapidjson']]], + ['kutf32le_618',['kUTF32LE',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba2ec8c855b2edacca40fa73ad307a66b4',1,'rapidjson']]], + ['kutf8_619',['kUTF8',['../namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eba3bda3a2e3f0ec2b7e8c5a3d5d4f60a81',1,'rapidjson']]], + ['kvalidatecontinueonerrorflag_620',['kValidateContinueOnErrorFlag',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a740ba1fa42d2286fca81a631a0d96699',1,'rapidjson']]], + ['kvalidatedefaultflags_621',['kValidateDefaultFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5aee88d74111644920cabddc20fe57eb7c',1,'rapidjson']]], + ['kvalidateerroradditionalitems_622',['kValidateErrorAdditionalItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac31340c34bc1e59d2b60318dfe665eeb',1,'rapidjson']]], + ['kvalidateerroradditionalproperties_623',['kValidateErrorAdditionalProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a553f149c39aa16541848b04442e1032b',1,'rapidjson']]], + ['kvalidateerrorallof_624',['kValidateErrorAllOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847af47261845396dff12763a9be8c11f666',1,'rapidjson']]], + ['kvalidateerroranyof_625',['kValidateErrorAnyOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aaba92c1f6cbea5e14e5e8d8b86b042d4',1,'rapidjson']]], + ['kvalidateerrordependencies_626',['kValidateErrorDependencies',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad9d2f317eae6e7a8f7eb3526a44c3962',1,'rapidjson']]], + ['kvalidateerrorenum_627',['kValidateErrorEnum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6faf5d2c20183efadf523e10287fd7c3',1,'rapidjson']]], + ['kvalidateerrorexclusivemaximum_628',['kValidateErrorExclusiveMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a88597e022ffccc312d5169a87dff6cff',1,'rapidjson']]], + ['kvalidateerrorexclusiveminimum_629',['kValidateErrorExclusiveMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a82c2d77ca5266afdbdbfef23df14696b',1,'rapidjson']]], + ['kvalidateerrormaximum_630',['kValidateErrorMaximum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a5338314546adf96b80b1da045478c89b',1,'rapidjson']]], + ['kvalidateerrormaxitems_631',['kValidateErrorMaxItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a0aa600c87a97fc3c75f51f99517cfdfa',1,'rapidjson']]], + ['kvalidateerrormaxlength_632',['kValidateErrorMaxLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6fea0335e9dbcd4bc86a4a7acd15cf49',1,'rapidjson']]], + ['kvalidateerrormaxproperties_633',['kValidateErrorMaxProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a79537e77683e3f1c89a4b6327a5f770e',1,'rapidjson']]], + ['kvalidateerrorminimum_634',['kValidateErrorMinimum',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ad365b8abebe4008652940df0a5add9c4',1,'rapidjson']]], + ['kvalidateerrorminitems_635',['kValidateErrorMinItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adbf02986e366165c0ef1d89697893802',1,'rapidjson']]], + ['kvalidateerrorminlength_636',['kValidateErrorMinLength',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847acb06559789b68cb387a9b9985016905e',1,'rapidjson']]], + ['kvalidateerrorminproperties_637',['kValidateErrorMinProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a4b9fec15f21b43bbbd617469989c620f',1,'rapidjson']]], + ['kvalidateerrormultipleof_638',['kValidateErrorMultipleOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aa01437cd68a424643a8d9c12c1a3ff5a',1,'rapidjson']]], + ['kvalidateerrornone_639',['kValidateErrorNone',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a569afaca49e48ee8bd928284409dcab5',1,'rapidjson']]], + ['kvalidateerrornot_640',['kValidateErrorNot',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a825119358f037a9d221d2f5735776429',1,'rapidjson']]], + ['kvalidateerroroneof_641',['kValidateErrorOneOf',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a6e5e5914d33ee2a926362fb445343103',1,'rapidjson']]], + ['kvalidateerroroneofmatch_642',['kValidateErrorOneOfMatch',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847adc0a6461cdb08ae4e4d537774a7e8c6d',1,'rapidjson']]], + ['kvalidateerrorpattern_643',['kValidateErrorPattern',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aef7f31586df8214ffc68309540d81a5a',1,'rapidjson']]], + ['kvalidateerrorpatternproperties_644',['kValidateErrorPatternProperties',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847ac6f7c8c63dd5ec2c838f34c49300e0a1',1,'rapidjson']]], + ['kvalidateerrorrequired_645',['kValidateErrorRequired',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a2d287b50e430269793dd82bb2ae91446',1,'rapidjson']]], + ['kvalidateerrors_646',['kValidateErrors',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a05469e37a2917fef9822eaf9e2dfd60e',1,'rapidjson']]], + ['kvalidateerrortype_647',['kValidateErrorType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847a7035a7fc3f6b3a51c91be264537fc504',1,'rapidjson']]], + ['kvalidateerroruniqueitems_648',['kValidateErrorUniqueItems',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gga633f43fd92e6ed5ceb87dbf570647847aebecfc4b0017d7ff7eeeb32a8c97b509',1,'rapidjson']]], + ['kvalidatenoflags_649',['kValidateNoFlags',['../namespacerapidjson.html#abfd1e973a5f464025877decd4dd6ece5a7f7a93daa1f8497fc89d8ac5a8083bde',1,'rapidjson']]], + ['kwritedefaultflags_650',['kWriteDefaultFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226',1,'rapidjson']]], + ['kwritenanandinfflag_651',['kWriteNanAndInfFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39',1,'rapidjson']]], + ['kwritenoflags_652',['kWriteNoFlags',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a',1,'rapidjson']]], + ['kwritevalidateencodingflag_653',['kWriteValidateEncodingFlag',['../namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10',1,'rapidjson']]] ]; diff --git a/zh-cn/search/files_0.js b/zh-cn/search/files_0.js index 3c185056..38031cb2 100644 --- a/zh-cn/search/files_0.js +++ b/zh-cn/search/files_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['document_2eh_415',['document.h',['../document_8h.html',1,'']]] + ['document_2eh_417',['document.h',['../document_8h.html',1,'']]] ]; diff --git a/zh-cn/search/files_1.js b/zh-cn/search/files_1.js index 8c0c34df..16fcdad8 100644 --- a/zh-cn/search/files_1.js +++ b/zh-cn/search/files_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['error_2eh_416',['error.h',['../error_8h.html',1,'']]] + ['error_2eh_418',['error.h',['../error_8h.html',1,'']]] ]; diff --git a/zh-cn/search/files_2.js b/zh-cn/search/files_2.js index 59f3fc0a..94e2bc9a 100644 --- a/zh-cn/search/files_2.js +++ b/zh-cn/search/files_2.js @@ -1,5 +1,5 @@ var searchData= [ - ['rapidjson_2eh_417',['rapidjson.h',['../rapidjson_8h.html',1,'']]], - ['reader_2eh_418',['reader.h',['../reader_8h.html',1,'']]] + ['rapidjson_2eh_419',['rapidjson.h',['../rapidjson_8h.html',1,'']]], + ['reader_2eh_420',['reader.h',['../reader_8h.html',1,'']]] ]; diff --git a/zh-cn/search/functions_0.js b/zh-cn/search/functions_0.js index 2f088b8f..618e049a 100644 --- a/zh-cn/search/functions_0.js +++ b/zh-cn/search/functions_0.js @@ -1,6 +1,6 @@ var searchData= [ - ['append_419',['Append',['../classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec',1,'rapidjson::GenericPointer::Append(const Token &token, Allocator *allocator=0) const'],['../classrapidjson_1_1_generic_pointer.html#a30f4eac82e9fded60dead3f7d1cb3941',1,'rapidjson::GenericPointer::Append(const Ch *name, SizeType length, Allocator *allocator=0) const']]], - ['autoutfinputstream_420',['AutoUTFInputStream',['../classrapidjson_1_1_auto_u_t_f_input_stream.html#a5c9f041a3b32bf15bc9be888a8731d35',1,'rapidjson::AutoUTFInputStream']]], - ['autoutfoutputstream_421',['AutoUTFOutputStream',['../classrapidjson_1_1_auto_u_t_f_output_stream.html#a39c828ee4c5b052df7338ec7fda1a17d',1,'rapidjson::AutoUTFOutputStream']]] + ['append_421',['Append',['../classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec',1,'rapidjson::GenericPointer::Append(const Token &token, Allocator *allocator=0) const'],['../classrapidjson_1_1_generic_pointer.html#a30f4eac82e9fded60dead3f7d1cb3941',1,'rapidjson::GenericPointer::Append(const Ch *name, SizeType length, Allocator *allocator=0) const']]], + ['autoutfinputstream_422',['AutoUTFInputStream',['../classrapidjson_1_1_auto_u_t_f_input_stream.html#a5c9f041a3b32bf15bc9be888a8731d35',1,'rapidjson::AutoUTFInputStream']]], + ['autoutfoutputstream_423',['AutoUTFOutputStream',['../classrapidjson_1_1_auto_u_t_f_output_stream.html#a39c828ee4c5b052df7338ec7fda1a17d',1,'rapidjson::AutoUTFOutputStream']]] ]; diff --git a/zh-cn/search/functions_1.js b/zh-cn/search/functions_1.js index d35073c2..f5393ec2 100644 --- a/zh-cn/search/functions_1.js +++ b/zh-cn/search/functions_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['basicistreamwrapper_422',['BasicIStreamWrapper',['../classrapidjson_1_1_basic_i_stream_wrapper.html#a2b4e069522fa9119685f1cee836e5cfa',1,'rapidjson::BasicIStreamWrapper::BasicIStreamWrapper(StreamType &stream)'],['../classrapidjson_1_1_basic_i_stream_wrapper.html#acd380a93ccc01d02aef95ea2a926e154',1,'rapidjson::BasicIStreamWrapper::BasicIStreamWrapper(StreamType &stream, char *buffer, size_t bufferSize)']]] + ['basicistreamwrapper_424',['BasicIStreamWrapper',['../classrapidjson_1_1_basic_i_stream_wrapper.html#a2b4e069522fa9119685f1cee836e5cfa',1,'rapidjson::BasicIStreamWrapper::BasicIStreamWrapper(StreamType &stream)'],['../classrapidjson_1_1_basic_i_stream_wrapper.html#acd380a93ccc01d02aef95ea2a926e154',1,'rapidjson::BasicIStreamWrapper::BasicIStreamWrapper(StreamType &stream, char *buffer, size_t bufferSize)']]] ]; diff --git a/zh-cn/search/functions_10.js b/zh-cn/search/functions_10.js index bc073d05..34558779 100644 --- a/zh-cn/search/functions_10.js +++ b/zh-cn/search/functions_10.js @@ -1,8 +1,8 @@ var searchData= [ - ['_7egenericpointer_505',['~GenericPointer',['../classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748',1,'rapidjson::GenericPointer']]], - ['_7egenericschemadocument_506',['~GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf',1,'rapidjson::GenericSchemaDocument']]], - ['_7egenericschemavalidator_507',['~GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572',1,'rapidjson::GenericSchemaValidator']]], - ['_7egenericvalue_508',['~GenericValue',['../classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437',1,'rapidjson::GenericValue']]], - ['_7ememorypoolallocator_509',['~MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700',1,'rapidjson::MemoryPoolAllocator']]] + ['_7egenericpointer_507',['~GenericPointer',['../classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748',1,'rapidjson::GenericPointer']]], + ['_7egenericschemadocument_508',['~GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#adf6f3372013227873ed392dee1e752bf',1,'rapidjson::GenericSchemaDocument']]], + ['_7egenericschemavalidator_509',['~GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#ad9f00d71bf62b8983cf2514c43fb1572',1,'rapidjson::GenericSchemaValidator']]], + ['_7egenericvalue_510',['~GenericValue',['../classrapidjson_1_1_generic_value.html#a433a64b466c80cadf7d1acaa6f065437',1,'rapidjson::GenericValue']]], + ['_7ememorypoolallocator_511',['~MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#aa5b6810e88de0c46390525cd3a0bd700',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/zh-cn/search/functions_2.js b/zh-cn/search/functions_2.js index 4a0884fb..850a3ea8 100644 --- a/zh-cn/search/functions_2.js +++ b/zh-cn/search/functions_2.js @@ -1,6 +1,6 @@ var searchData= [ - ['capacity_423',['Capacity',['../classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd',1,'rapidjson::MemoryPoolAllocator']]], - ['clear_424',['Clear',['../classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840',1,'rapidjson::MemoryPoolAllocator::Clear()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a17c9f7f81675283393222658d613000f',1,'rapidjson::ParseResult::Clear()']]], - ['code_425',['Code',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a3c6a1f7b7dc21363a255eb10a3c0e00e',1,'rapidjson::ParseResult']]] + ['capacity_425',['Capacity',['../classrapidjson_1_1_memory_pool_allocator.html#acf80d2330d6ae72643674a95ac62c0bd',1,'rapidjson::MemoryPoolAllocator']]], + ['clear_426',['Clear',['../classrapidjson_1_1_memory_pool_allocator.html#afa5935b0dc40420085822bdb5a3f2840',1,'rapidjson::MemoryPoolAllocator::Clear()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a17c9f7f81675283393222658d613000f',1,'rapidjson::ParseResult::Clear()']]], + ['code_427',['Code',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a3c6a1f7b7dc21363a255eb10a3c0e00e',1,'rapidjson::ParseResult']]] ]; diff --git a/zh-cn/search/functions_3.js b/zh-cn/search/functions_3.js index 1fc4b361..06456a3d 100644 --- a/zh-cn/search/functions_3.js +++ b/zh-cn/search/functions_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['double_426',['Double',['../classrapidjson_1_1_writer.html#aff66881798d01e932a0b8b8ef97b0373',1,'rapidjson::Writer']]] + ['double_428',['Double',['../classrapidjson_1_1_writer.html#aff66881798d01e932a0b8b8ef97b0373',1,'rapidjson::Writer']]] ]; diff --git a/zh-cn/search/functions_4.js b/zh-cn/search/functions_4.js index d94b3c81..531f3afa 100644 --- a/zh-cn/search/functions_4.js +++ b/zh-cn/search/functions_4.js @@ -1,6 +1,6 @@ var searchData= [ - ['filereadstream_427',['FileReadStream',['../classrapidjson_1_1_file_read_stream.html#a72b610ada5d86e8977a2bc1f2f4c0808',1,'rapidjson::FileReadStream']]], - ['flush_428',['Flush',['../classrapidjson_1_1_writer.html#a72cefd18d176bc12a53adb3185c51ca7',1,'rapidjson::Writer']]], - ['free_429',['Free',['../classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec',1,'rapidjson::MemoryPoolAllocator']]] + ['filereadstream_429',['FileReadStream',['../classrapidjson_1_1_file_read_stream.html#a72b610ada5d86e8977a2bc1f2f4c0808',1,'rapidjson::FileReadStream']]], + ['flush_430',['Flush',['../classrapidjson_1_1_writer.html#a72cefd18d176bc12a53adb3185c51ca7',1,'rapidjson::Writer']]], + ['free_431',['Free',['../classrapidjson_1_1_memory_pool_allocator.html#a199ce203dde7f2b364b6b844a8af04ec',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/zh-cn/search/functions_5.js b/zh-cn/search/functions_5.js index a7992f2c..74d430f5 100644 --- a/zh-cn/search/functions_5.js +++ b/zh-cn/search/functions_5.js @@ -1,28 +1,28 @@ var searchData= [ - ['genericdocument_430',['GenericDocument',['../classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5',1,'rapidjson::GenericDocument::GenericDocument(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)'],['../classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb',1,'rapidjson::GenericDocument::GenericDocument(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)']]], - ['genericmemberiterator_431',['GenericMemberIterator',['../classrapidjson_1_1_generic_member_iterator.html#ac920af483c9e31a6746c22acf0dffc50',1,'rapidjson::GenericMemberIterator::GenericMemberIterator()'],['../classrapidjson_1_1_generic_member_iterator.html#aa30ffef74b3f4978b403024d81b484e4',1,'rapidjson::GenericMemberIterator::GenericMemberIterator(const NonConstIterator &it)']]], - ['genericpointer_432',['GenericPointer',['../classrapidjson_1_1_generic_pointer.html#aa077ce171ea25cf501c12f2d5df7f248',1,'rapidjson::GenericPointer::GenericPointer(Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a8f831aae14afc493a82b5fb6aa9c3c43',1,'rapidjson::GenericPointer::GenericPointer(const Ch *source, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#aeefcd60e5ad37d80ec43f5315ae84809',1,'rapidjson::GenericPointer::GenericPointer(const std::basic_string< Ch > &source, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a00ad17ea227d2556404df7cc64c6aeb5',1,'rapidjson::GenericPointer::GenericPointer(const Ch *source, size_t length, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a6df9f6a01d1b5945811055e1cf8aead6',1,'rapidjson::GenericPointer::GenericPointer(const Token *tokens, size_t tokenCount)'],['../classrapidjson_1_1_generic_pointer.html#ae071847ed3e7389f5b256d26fcc8fd62',1,'rapidjson::GenericPointer::GenericPointer(const GenericPointer &rhs)'],['../classrapidjson_1_1_generic_pointer.html#afedfcaac36fa589a46667825d3d0b763',1,'rapidjson::GenericPointer::GenericPointer(const GenericPointer &rhs, Allocator *allocator)']]], - ['genericreader_433',['GenericReader',['../classrapidjson_1_1_generic_reader.html#a56ab1065ea75167aeacb4802425bf57f',1,'rapidjson::GenericReader']]], - ['genericschemadocument_434',['GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#aeebf51ef6353f6a01d6f6618da6d0865',1,'rapidjson::GenericSchemaDocument']]], - ['genericschemavalidator_435',['GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#acc07bd08b00195d84bb5b83f59c593d3',1,'rapidjson::GenericSchemaValidator::GenericSchemaValidator(const SchemaDocumentType &schemaDocument, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)'],['../classrapidjson_1_1_generic_schema_validator.html#a0e1d8f19381bd53d77cc00a9a6dcd067',1,'rapidjson::GenericSchemaValidator::GenericSchemaValidator(const SchemaDocumentType &schemaDocument, OutputHandler &outputHandler, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)']]], - ['genericstringref_436',['GenericStringRef',['../structrapidjson_1_1_generic_string_ref.html#acd4d5ebac2b610ce647356aa52998002',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType(&str)[N]) RAPIDJSON_NOEXCEPT'],['../structrapidjson_1_1_generic_string_ref.html#a29cf407c6aa2313f13dff78d6ce02687',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#ad9eb120a58cee500ff3bd5706779c4e4',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType *str, SizeType len)']]], - ['genericvalue_437',['GenericValue',['../classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5',1,'rapidjson::GenericValue::GenericValue() RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58',1,'rapidjson::GenericValue::GenericValue(Type type) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac',1,'rapidjson::GenericValue::GenericValue(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)'],['../classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9',1,'rapidjson::GenericValue::GenericValue(bool b) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19',1,'rapidjson::GenericValue::GenericValue(int i) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6',1,'rapidjson::GenericValue::GenericValue(unsigned u) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8',1,'rapidjson::GenericValue::GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563',1,'rapidjson::GenericValue::GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a',1,'rapidjson::GenericValue::GenericValue(double d) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b',1,'rapidjson::GenericValue::GenericValue(float f) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1',1,'rapidjson::GenericValue::GenericValue(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941',1,'rapidjson::GenericValue::GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2',1,'rapidjson::GenericValue::GenericValue(const Ch *s, SizeType length, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f',1,'rapidjson::GenericValue::GenericValue(const Ch *s, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc',1,'rapidjson::GenericValue::GenericValue(const std::basic_string< Ch > &s, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8',1,'rapidjson::GenericValue::GenericValue(Array a) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e',1,'rapidjson::GenericValue::GenericValue(Object o) RAPIDJSON_NOEXCEPT']]], - ['getallocator_438',['GetAllocator',['../classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f',1,'rapidjson::GenericDocument']]], - ['getcolumn_439',['GetColumn',['../classrapidjson_1_1_cursor_stream_wrapper.html#a33002632924bb10108077a22c6aa108d',1,'rapidjson::CursorStreamWrapper']]], - ['geterror_440',['GetError',['../classrapidjson_1_1_generic_schema_validator.html#a422c16457e512835b0d0f64ec1c81ba2',1,'rapidjson::GenericSchemaValidator']]], - ['geterroroffset_441',['GetErrorOffset',['../classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f',1,'rapidjson::GenericDocument::GetErrorOffset()'],['../classrapidjson_1_1_generic_reader.html#ab50019e0a715320f83b7610b83dcef8f',1,'rapidjson::GenericReader::GetErrorOffset()']]], - ['getinvaliddocumentpointer_442',['GetInvalidDocumentPointer',['../classrapidjson_1_1_generic_schema_validator.html#a60dfb4a89593c8d3ca4c89a6202feb52',1,'rapidjson::GenericSchemaValidator']]], - ['getinvalidschemacode_443',['GetInvalidSchemaCode',['../classrapidjson_1_1_generic_schema_validator.html#a317d19322b003b8f4b87cad467775029',1,'rapidjson::GenericSchemaValidator']]], - ['getinvalidschemakeyword_444',['GetInvalidSchemaKeyword',['../classrapidjson_1_1_generic_schema_validator.html#a03bcd5497a574cffbd066d0aec2b5585',1,'rapidjson::GenericSchemaValidator']]], - ['getinvalidschemapointer_445',['GetInvalidSchemaPointer',['../classrapidjson_1_1_generic_schema_validator.html#a3238efb9d9144c2d6577362d8dc5f61b',1,'rapidjson::GenericSchemaValidator']]], - ['getlength_446',['GetLength',['../classrapidjson_1_1_generic_string_buffer.html#a0a114be213152d570a2d9fde7a28fe11',1,'rapidjson::GenericStringBuffer']]], - ['getline_447',['GetLine',['../classrapidjson_1_1_cursor_stream_wrapper.html#a97c6cbbd334911639fe522bbfdd350b7',1,'rapidjson::CursorStreamWrapper']]], - ['getparseerror_448',['GetParseError',['../classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b',1,'rapidjson::GenericDocument']]], - ['getparseerror_5fen_449',['GetParseError_En',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79',1,'rapidjson']]], - ['getparseerrorcode_450',['GetParseErrorCode',['../classrapidjson_1_1_generic_reader.html#a042c621cf745c5ed3a6f5ff9418dd05e',1,'rapidjson::GenericReader']]], - ['getroot_451',['GetRoot',['../classrapidjson_1_1_generic_schema_document.html#a8b2ac6de85dc9c1fb4f4d0be4aeb2d6a',1,'rapidjson::GenericSchemaDocument']]], - ['getsize_452',['GetSize',['../classrapidjson_1_1_generic_string_buffer.html#a9d830ec37a4ba0fba3b523c90aaf8b42',1,'rapidjson::GenericStringBuffer']]], - ['getstackcapacity_453',['GetStackCapacity',['../classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b',1,'rapidjson::GenericDocument']]], - ['getvalidateerror_5fen_454',['GetValidateError_En',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga68345ad2eccb3e7dfec09d188f20fe20',1,'rapidjson']]] + ['genericdocument_432',['GenericDocument',['../classrapidjson_1_1_generic_document.html#aa52c3016961f25ecd989d82839bce4e5',1,'rapidjson::GenericDocument::GenericDocument(Type type, Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)'],['../classrapidjson_1_1_generic_document.html#a82b27e7b228eb46a23f99720063ab4fb',1,'rapidjson::GenericDocument::GenericDocument(Allocator *allocator=0, size_t stackCapacity=kDefaultStackCapacity, StackAllocator *stackAllocator=0)']]], + ['genericmemberiterator_433',['GenericMemberIterator',['../classrapidjson_1_1_generic_member_iterator.html#ac920af483c9e31a6746c22acf0dffc50',1,'rapidjson::GenericMemberIterator::GenericMemberIterator()'],['../classrapidjson_1_1_generic_member_iterator.html#aa30ffef74b3f4978b403024d81b484e4',1,'rapidjson::GenericMemberIterator::GenericMemberIterator(const NonConstIterator &it)']]], + ['genericpointer_434',['GenericPointer',['../classrapidjson_1_1_generic_pointer.html#aa077ce171ea25cf501c12f2d5df7f248',1,'rapidjson::GenericPointer::GenericPointer(Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a8f831aae14afc493a82b5fb6aa9c3c43',1,'rapidjson::GenericPointer::GenericPointer(const Ch *source, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#aeefcd60e5ad37d80ec43f5315ae84809',1,'rapidjson::GenericPointer::GenericPointer(const std::basic_string< Ch > &source, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a00ad17ea227d2556404df7cc64c6aeb5',1,'rapidjson::GenericPointer::GenericPointer(const Ch *source, size_t length, Allocator *allocator=0)'],['../classrapidjson_1_1_generic_pointer.html#a6df9f6a01d1b5945811055e1cf8aead6',1,'rapidjson::GenericPointer::GenericPointer(const Token *tokens, size_t tokenCount)'],['../classrapidjson_1_1_generic_pointer.html#ae071847ed3e7389f5b256d26fcc8fd62',1,'rapidjson::GenericPointer::GenericPointer(const GenericPointer &rhs)'],['../classrapidjson_1_1_generic_pointer.html#afedfcaac36fa589a46667825d3d0b763',1,'rapidjson::GenericPointer::GenericPointer(const GenericPointer &rhs, Allocator *allocator)']]], + ['genericreader_435',['GenericReader',['../classrapidjson_1_1_generic_reader.html#a56ab1065ea75167aeacb4802425bf57f',1,'rapidjson::GenericReader']]], + ['genericschemadocument_436',['GenericSchemaDocument',['../classrapidjson_1_1_generic_schema_document.html#aeebf51ef6353f6a01d6f6618da6d0865',1,'rapidjson::GenericSchemaDocument']]], + ['genericschemavalidator_437',['GenericSchemaValidator',['../classrapidjson_1_1_generic_schema_validator.html#acc07bd08b00195d84bb5b83f59c593d3',1,'rapidjson::GenericSchemaValidator::GenericSchemaValidator(const SchemaDocumentType &schemaDocument, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)'],['../classrapidjson_1_1_generic_schema_validator.html#a0e1d8f19381bd53d77cc00a9a6dcd067',1,'rapidjson::GenericSchemaValidator::GenericSchemaValidator(const SchemaDocumentType &schemaDocument, OutputHandler &outputHandler, StateAllocator *allocator=0, size_t schemaStackCapacity=kDefaultSchemaStackCapacity, size_t documentStackCapacity=kDefaultDocumentStackCapacity)']]], + ['genericstringref_438',['GenericStringRef',['../structrapidjson_1_1_generic_string_ref.html#acd4d5ebac2b610ce647356aa52998002',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType(&str)[N]) RAPIDJSON_NOEXCEPT'],['../structrapidjson_1_1_generic_string_ref.html#a29cf407c6aa2313f13dff78d6ce02687',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#ad9eb120a58cee500ff3bd5706779c4e4',1,'rapidjson::GenericStringRef::GenericStringRef(const CharType *str, SizeType len)']]], + ['genericvalue_439',['GenericValue',['../classrapidjson_1_1_generic_value.html#ad1f8199e65662e0d52a13a1577d4e4a5',1,'rapidjson::GenericValue::GenericValue() RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a646b6d4d3d98799a0926d96ffa127a58',1,'rapidjson::GenericValue::GenericValue(Type type) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#adca019775f68f012643781cd2c2515ac',1,'rapidjson::GenericValue::GenericValue(const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings=false)'],['../classrapidjson_1_1_generic_value.html#ab933ad7ff8c9d08f73cebaecb700dbe9',1,'rapidjson::GenericValue::GenericValue(bool b) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abba0c9ccfd90726f916c36013a2e9e19',1,'rapidjson::GenericValue::GenericValue(int i) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a4a8060a42b7953a2981ad892180ca5a6',1,'rapidjson::GenericValue::GenericValue(unsigned u) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#acd4ae9a8dba4498d1d7cce6667529bb8',1,'rapidjson::GenericValue::GenericValue(int64_t i64) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a1f125e735577aae64c0306345de45563',1,'rapidjson::GenericValue::GenericValue(uint64_t u64) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a71b9e2ec1f7bf9e2f034126ca7b4945a',1,'rapidjson::GenericValue::GenericValue(double d) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#afe94e5e86a5b1a3fb605a9f8422f048b',1,'rapidjson::GenericValue::GenericValue(float f) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a51e93a4fb57f77a39767acb076bf43c1',1,'rapidjson::GenericValue::GenericValue(const Ch *s, SizeType length) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a65bfc3073fa80ee5eba8e985abe2f941',1,'rapidjson::GenericValue::GenericValue(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#ad9553bb9ccbfd19547c473a95405a8b2',1,'rapidjson::GenericValue::GenericValue(const Ch *s, SizeType length, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a83ba61e8a5170c2e172fd60ebc11016f',1,'rapidjson::GenericValue::GenericValue(const Ch *s, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a852788b35257762cd8d6c4bf5c5d77bc',1,'rapidjson::GenericValue::GenericValue(const std::basic_string< Ch > &s, Allocator &allocator)'],['../classrapidjson_1_1_generic_value.html#a77b0f41557b3c34b57a180698312c4a8',1,'rapidjson::GenericValue::GenericValue(Array a) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#a893da1069660536fd3943a0149206a6e',1,'rapidjson::GenericValue::GenericValue(Object o) RAPIDJSON_NOEXCEPT']]], + ['getallocator_440',['GetAllocator',['../classrapidjson_1_1_generic_document.html#ad92c6cd025d411258d1f2ad890e2ee3f',1,'rapidjson::GenericDocument']]], + ['getcolumn_441',['GetColumn',['../classrapidjson_1_1_cursor_stream_wrapper.html#a33002632924bb10108077a22c6aa108d',1,'rapidjson::CursorStreamWrapper']]], + ['geterror_442',['GetError',['../classrapidjson_1_1_generic_schema_validator.html#a422c16457e512835b0d0f64ec1c81ba2',1,'rapidjson::GenericSchemaValidator']]], + ['geterroroffset_443',['GetErrorOffset',['../classrapidjson_1_1_generic_document.html#af532179ca5ad5434a5e8af63f5da4c5f',1,'rapidjson::GenericDocument::GetErrorOffset()'],['../classrapidjson_1_1_generic_reader.html#ab50019e0a715320f83b7610b83dcef8f',1,'rapidjson::GenericReader::GetErrorOffset()']]], + ['getinvaliddocumentpointer_444',['GetInvalidDocumentPointer',['../classrapidjson_1_1_generic_schema_validator.html#a60dfb4a89593c8d3ca4c89a6202feb52',1,'rapidjson::GenericSchemaValidator']]], + ['getinvalidschemacode_445',['GetInvalidSchemaCode',['../classrapidjson_1_1_generic_schema_validator.html#a317d19322b003b8f4b87cad467775029',1,'rapidjson::GenericSchemaValidator']]], + ['getinvalidschemakeyword_446',['GetInvalidSchemaKeyword',['../classrapidjson_1_1_generic_schema_validator.html#a03bcd5497a574cffbd066d0aec2b5585',1,'rapidjson::GenericSchemaValidator']]], + ['getinvalidschemapointer_447',['GetInvalidSchemaPointer',['../classrapidjson_1_1_generic_schema_validator.html#a3238efb9d9144c2d6577362d8dc5f61b',1,'rapidjson::GenericSchemaValidator']]], + ['getlength_448',['GetLength',['../classrapidjson_1_1_generic_string_buffer.html#a0a114be213152d570a2d9fde7a28fe11',1,'rapidjson::GenericStringBuffer']]], + ['getline_449',['GetLine',['../classrapidjson_1_1_cursor_stream_wrapper.html#a97c6cbbd334911639fe522bbfdd350b7',1,'rapidjson::CursorStreamWrapper']]], + ['getparseerror_450',['GetParseError',['../classrapidjson_1_1_generic_document.html#ab94c280c079a6837a24951cb4d8f337b',1,'rapidjson::GenericDocument']]], + ['getparseerror_5fen_451',['GetParseError_En',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gabdaf1a7a4db30fb0e3d927fdf0fabe79',1,'rapidjson']]], + ['getparseerrorcode_452',['GetParseErrorCode',['../classrapidjson_1_1_generic_reader.html#a042c621cf745c5ed3a6f5ff9418dd05e',1,'rapidjson::GenericReader']]], + ['getroot_453',['GetRoot',['../classrapidjson_1_1_generic_schema_document.html#a8b2ac6de85dc9c1fb4f4d0be4aeb2d6a',1,'rapidjson::GenericSchemaDocument']]], + ['getsize_454',['GetSize',['../classrapidjson_1_1_generic_string_buffer.html#a9d830ec37a4ba0fba3b523c90aaf8b42',1,'rapidjson::GenericStringBuffer']]], + ['getstackcapacity_455',['GetStackCapacity',['../classrapidjson_1_1_generic_document.html#a153e5a065ca9660673974f9df203be4b',1,'rapidjson::GenericDocument']]], + ['getvalidateerror_5fen_456',['GetValidateError_En',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga68345ad2eccb3e7dfec09d188f20fe20',1,'rapidjson']]] ]; diff --git a/zh-cn/search/functions_6.js b/zh-cn/search/functions_6.js index 60c9761c..bf8281b4 100644 --- a/zh-cn/search/functions_6.js +++ b/zh-cn/search/functions_6.js @@ -1,4 +1,4 @@ var searchData= [ - ['hasparseerror_455',['HasParseError',['../classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e',1,'rapidjson::GenericDocument::HasParseError()'],['../classrapidjson_1_1_generic_reader.html#ac42370c3497a0e2b6973110f298e3a59',1,'rapidjson::GenericReader::HasParseError()']]] + ['hasparseerror_457',['HasParseError',['../classrapidjson_1_1_generic_document.html#a7607bb42b51547e44bfd4cab35d8f20e',1,'rapidjson::GenericDocument::HasParseError()'],['../classrapidjson_1_1_generic_reader.html#ac42370c3497a0e2b6973110f298e3a59',1,'rapidjson::GenericReader::HasParseError()']]] ]; diff --git a/zh-cn/search/functions_7.js b/zh-cn/search/functions_7.js index 3f98eadc..2b21114d 100644 --- a/zh-cn/search/functions_7.js +++ b/zh-cn/search/functions_7.js @@ -1,9 +1,9 @@ var searchData= [ - ['iscomplete_456',['IsComplete',['../classrapidjson_1_1_writer.html#a190d964d3e62155e87153e858a0b04da',1,'rapidjson::Writer']]], - ['iserror_457',['IsError',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ab6d87c6ce9c849f35e902fbe23f485c4',1,'rapidjson::ParseResult']]], - ['isvalid_458',['IsValid',['../classrapidjson_1_1_generic_schema_validator.html#ad32a9ad31dbb588edaaf038ab053275b',1,'rapidjson::GenericSchemaValidator']]], - ['iterativeparsecomplete_459',['IterativeParseComplete',['../classrapidjson_1_1_generic_reader.html#a037aee35044b894d1487b42365aadc4b',1,'rapidjson::GenericReader']]], - ['iterativeparseinit_460',['IterativeParseInit',['../classrapidjson_1_1_generic_reader.html#a90403a2c55dadf82fd2bb9d4c66b3280',1,'rapidjson::GenericReader']]], - ['iterativeparsenext_461',['IterativeParseNext',['../classrapidjson_1_1_generic_reader.html#abac6611bec17167de50fede5cd5194ca',1,'rapidjson::GenericReader']]] + ['iscomplete_458',['IsComplete',['../classrapidjson_1_1_writer.html#a190d964d3e62155e87153e858a0b04da',1,'rapidjson::Writer']]], + ['iserror_459',['IsError',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ab6d87c6ce9c849f35e902fbe23f485c4',1,'rapidjson::ParseResult']]], + ['isvalid_460',['IsValid',['../classrapidjson_1_1_generic_schema_validator.html#ad32a9ad31dbb588edaaf038ab053275b',1,'rapidjson::GenericSchemaValidator']]], + ['iterativeparsecomplete_461',['IterativeParseComplete',['../classrapidjson_1_1_generic_reader.html#a037aee35044b894d1487b42365aadc4b',1,'rapidjson::GenericReader']]], + ['iterativeparseinit_462',['IterativeParseInit',['../classrapidjson_1_1_generic_reader.html#a90403a2c55dadf82fd2bb9d4c66b3280',1,'rapidjson::GenericReader']]], + ['iterativeparsenext_463',['IterativeParseNext',['../classrapidjson_1_1_generic_reader.html#abac6611bec17167de50fede5cd5194ca',1,'rapidjson::GenericReader']]] ]; diff --git a/zh-cn/search/functions_8.js b/zh-cn/search/functions_8.js index 0d700eb1..7edbf2ce 100644 --- a/zh-cn/search/functions_8.js +++ b/zh-cn/search/functions_8.js @@ -1,5 +1,5 @@ var searchData= [ - ['malloc_462',['Malloc',['../classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344',1,'rapidjson::MemoryPoolAllocator']]], - ['memorypoolallocator_463',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)'],['../classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)']]] + ['malloc_464',['Malloc',['../classrapidjson_1_1_memory_pool_allocator.html#a208c29e04b1d748bfe068444b7044344',1,'rapidjson::MemoryPoolAllocator']]], + ['memorypoolallocator_465',['MemoryPoolAllocator',['../classrapidjson_1_1_memory_pool_allocator.html#a59d783f4feba17dcd35d9f25fcbc09f4',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)'],['../classrapidjson_1_1_memory_pool_allocator.html#abcc572bdb6902c9d69711540db5098a7',1,'rapidjson::MemoryPoolAllocator::MemoryPoolAllocator(void *buffer, size_t size, size_t chunkSize=kDefaultChunkCapacity, BaseAllocator *baseAllocator=0)']]] ]; diff --git a/zh-cn/search/functions_9.js b/zh-cn/search/functions_9.js index bdd3e2e9..a54c1ab0 100644 --- a/zh-cn/search/functions_9.js +++ b/zh-cn/search/functions_9.js @@ -1,11 +1,11 @@ var searchData= [ - ['offset_464',['Offset',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a85036788b0cfd1c676900de6f8260bd6',1,'rapidjson::ParseResult']]], - ['operator_20booleantype_465',['operator BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#af0936ace1dc9b674e9afb75ec6145b32',1,'rapidjson::ParseResult']]], - ['operator_20const_20ch_20_2a_466',['operator const Ch *',['../structrapidjson_1_1_generic_string_ref.html#a86d30bb594a41619a7a5ba6c8dcce2bd',1,'rapidjson::GenericStringRef']]], - ['operator_20parseresult_467',['operator ParseResult',['../classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974',1,'rapidjson::GenericDocument']]], - ['operator_21_3d_468',['operator!=',['../classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99',1,'rapidjson::MemoryPoolAllocator']]], - ['operator_2d_469',['operator-',['../classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2',1,'rapidjson::GenericMemberIterator']]], - ['operator_3d_470',['operator=',['../classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4',1,'rapidjson::GenericMember::operator=()'],['../classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac',1,'rapidjson::GenericValue::operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c',1,'rapidjson::GenericValue::operator=(StringRefType str) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6',1,'rapidjson::GenericPointer::operator=()']]], - ['operator_3d_3d_471',['operator==',['../classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724',1,'rapidjson::MemoryPoolAllocator']]] + ['offset_466',['Offset',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a85036788b0cfd1c676900de6f8260bd6',1,'rapidjson::ParseResult']]], + ['operator_20booleantype_467',['operator BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#af0936ace1dc9b674e9afb75ec6145b32',1,'rapidjson::ParseResult']]], + ['operator_20const_20ch_20_2a_468',['operator const Ch *',['../structrapidjson_1_1_generic_string_ref.html#a86d30bb594a41619a7a5ba6c8dcce2bd',1,'rapidjson::GenericStringRef']]], + ['operator_20parseresult_469',['operator ParseResult',['../classrapidjson_1_1_generic_document.html#a36d19989c9221b27036675455516a974',1,'rapidjson::GenericDocument']]], + ['operator_21_3d_470',['operator!=',['../classrapidjson_1_1_memory_pool_allocator.html#ada927b87fb5640124aefeb07e3e23c99',1,'rapidjson::MemoryPoolAllocator']]], + ['operator_2d_471',['operator-',['../classrapidjson_1_1_generic_member_iterator.html#abfad2c34a97f82178cbf9464e958e2c2',1,'rapidjson::GenericMemberIterator']]], + ['operator_3d_472',['operator=',['../classrapidjson_1_1_generic_member.html#a1e6d0170562775c54613e7825955c1e4',1,'rapidjson::GenericMember::operator=()'],['../classrapidjson_1_1_generic_value.html#ae8bcedd951f50b69786aaaa1828e9fac',1,'rapidjson::GenericValue::operator=(GenericValue &rhs) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#aecc9d0a6aafe31f4fdf9f6e75e5f089c',1,'rapidjson::GenericValue::operator=(StringRefType str) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6',1,'rapidjson::GenericPointer::operator=()']]], + ['operator_3d_3d_473',['operator==',['../classrapidjson_1_1_memory_pool_allocator.html#aaadeb62f04e430ae1254a7e69d54d724',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/zh-cn/search/functions_a.js b/zh-cn/search/functions_a.js index a69a894d..144e5433 100644 --- a/zh-cn/search/functions_a.js +++ b/zh-cn/search/functions_a.js @@ -1,12 +1,12 @@ var searchData= [ - ['parse_472',['Parse',['../classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c',1,'rapidjson::GenericDocument::Parse(const typename SourceEncoding::Ch *str)'],['../classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)'],['../classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)']]], - ['parseinsitu_473',['ParseInsitu',['../classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)'],['../classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)']]], - ['parseresult_474',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1',1,'rapidjson::ParseResult::ParseResult()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ad15710045513f13ba526753c4a2cb59b',1,'rapidjson::ParseResult::ParseResult(ParseErrorCode code, size_t offset)']]], - ['parsestream_475',['ParseStream',['../classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)']]], - ['populate_476',['Populate',['../classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64',1,'rapidjson::GenericDocument']]], - ['prettywriter_477',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0',1,'rapidjson::PrettyWriter']]], - ['putn_478',['PutN',['../namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a',1,'rapidjson::PutN(FileWriteStream &stream, char c, size_t n)'],['../namespacerapidjson.html#aba27b0c8dcf724aa2b288a24fda0811b',1,'rapidjson::PutN(MemoryBuffer &memoryBuffer, char c, size_t n)'],['../namespacerapidjson.html#a1d49d2cab617858b53a1db23b1759f43',1,'rapidjson::PutN(Stream &stream, Ch c, size_t n)'],['../namespacerapidjson.html#a9d43be9c033dc49738b713fe6fbafecf',1,'rapidjson::PutN(GenericStringBuffer< UTF8<> > &stream, char c, size_t n)']]], - ['putreserve_479',['PutReserve',['../namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740',1,'rapidjson']]], - ['putunsafe_480',['PutUnsafe',['../namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20',1,'rapidjson']]] + ['parse_474',['Parse',['../classrapidjson_1_1_generic_document.html#aea842b533a858c9a3861451ad9e8642c',1,'rapidjson::GenericDocument::Parse(const typename SourceEncoding::Ch *str)'],['../classrapidjson_1_1_generic_document.html#a42c35e2f64c288f14b74fec2792500c8',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_document.html#ab031375318d133f83a114314b75703de',1,'rapidjson::GenericDocument::Parse(const Ch *str)'],['../classrapidjson_1_1_generic_reader.html#ac9c540b77de19661f6f45e04b9b0937b',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)'],['../classrapidjson_1_1_generic_reader.html#a2bac14d193873d661d79ad000473a908',1,'rapidjson::GenericReader::Parse(InputStream &is, Handler &handler)']]], + ['parseinsitu_475',['ParseInsitu',['../classrapidjson_1_1_generic_document.html#a7ba626bf84eb45a9bca0b7723bf47f3f',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)'],['../classrapidjson_1_1_generic_document.html#af061c039a990c2970dc31e5626149367',1,'rapidjson::GenericDocument::ParseInsitu(Ch *str)']]], + ['parseresult_476',['ParseResult',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a0f03679d5fa2736d9e351541e767fac1',1,'rapidjson::ParseResult::ParseResult()'],['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ad15710045513f13ba526753c4a2cb59b',1,'rapidjson::ParseResult::ParseResult(ParseErrorCode code, size_t offset)']]], + ['parsestream_477',['ParseStream',['../classrapidjson_1_1_generic_document.html#a3ae97682cf04685c7db9d89ebc399b85',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#ae4ee7d86b8c906c83dbe15e57eb6ac6a',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)'],['../classrapidjson_1_1_generic_document.html#acf96a3c7fd61486d049c701b1fe5d414',1,'rapidjson::GenericDocument::ParseStream(InputStream &is)']]], + ['populate_478',['Populate',['../classrapidjson_1_1_generic_document.html#a63e18887979da500ece6f0bd10d29b64',1,'rapidjson::GenericDocument']]], + ['prettywriter_479',['PrettyWriter',['../classrapidjson_1_1_pretty_writer.html#a688d7ebf5c8015e423b7a970afc8e0a0',1,'rapidjson::PrettyWriter']]], + ['putn_480',['PutN',['../namespacerapidjson.html#a1ac13bac5976fc06587e00fc0bcfb32a',1,'rapidjson::PutN(FileWriteStream &stream, char c, size_t n)'],['../namespacerapidjson.html#aba27b0c8dcf724aa2b288a24fda0811b',1,'rapidjson::PutN(MemoryBuffer &memoryBuffer, char c, size_t n)'],['../namespacerapidjson.html#a1d49d2cab617858b53a1db23b1759f43',1,'rapidjson::PutN(Stream &stream, Ch c, size_t n)'],['../namespacerapidjson.html#a9d43be9c033dc49738b713fe6fbafecf',1,'rapidjson::PutN(GenericStringBuffer< UTF8<> > &stream, char c, size_t n)']]], + ['putreserve_481',['PutReserve',['../namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740',1,'rapidjson']]], + ['putunsafe_482',['PutUnsafe',['../namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20',1,'rapidjson']]] ]; diff --git a/zh-cn/search/functions_b.js b/zh-cn/search/functions_b.js index 6da8e4fd..c2e94a15 100644 --- a/zh-cn/search/functions_b.js +++ b/zh-cn/search/functions_b.js @@ -1,10 +1,10 @@ var searchData= [ - ['rapidjson_5fdisableif_5freturn_481',['RAPIDJSON_DISABLEIF_RETURN',['../classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0',1,'rapidjson::GenericValue::RAPIDJSON_DISABLEIF_RETURN()'],['../classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81',1,'rapidjson::GenericPointer::RAPIDJSON_DISABLEIF_RETURN()']]], - ['rawassign_482',['RawAssign',['../classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e',1,'rapidjson::GenericValue']]], - ['rawnumber_483',['RawNumber',['../structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1',1,'rapidjson::BaseReaderHandler']]], - ['rawvalue_484',['RawValue',['../classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be',1,'rapidjson::PrettyWriter::RawValue()'],['../classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe',1,'rapidjson::Writer::RawValue()']]], - ['realloc_485',['Realloc',['../classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d',1,'rapidjson::MemoryPoolAllocator']]], - ['reset_486',['Reset',['../classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc',1,'rapidjson::GenericSchemaValidator::Reset()'],['../classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722',1,'rapidjson::Writer::Reset()']]], - ['reseterror_487',['ResetError',['../classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7',1,'rapidjson::GenericSchemaValidator']]] + ['rapidjson_5fdisableif_5freturn_483',['RAPIDJSON_DISABLEIF_RETURN',['../classrapidjson_1_1_generic_value.html#a5490b1fdb725744a6defb14ed7c238f0',1,'rapidjson::GenericValue::RAPIDJSON_DISABLEIF_RETURN()'],['../classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81',1,'rapidjson::GenericPointer::RAPIDJSON_DISABLEIF_RETURN()']]], + ['rawassign_484',['RawAssign',['../classrapidjson_1_1_generic_value.html#a00efe429e27f95dca17b19519b3cea9e',1,'rapidjson::GenericValue']]], + ['rawnumber_485',['RawNumber',['../structrapidjson_1_1_base_reader_handler.html#a0de969fd05528960c2a7de51b2265bf1',1,'rapidjson::BaseReaderHandler']]], + ['rawvalue_486',['RawValue',['../classrapidjson_1_1_pretty_writer.html#a3136e3426a5d06e5da50f6e6aab8a5be',1,'rapidjson::PrettyWriter::RawValue()'],['../classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe',1,'rapidjson::Writer::RawValue()']]], + ['realloc_487',['Realloc',['../classrapidjson_1_1_memory_pool_allocator.html#a880524b17bbecb5d2691b8075050d55d',1,'rapidjson::MemoryPoolAllocator']]], + ['reset_488',['Reset',['../classrapidjson_1_1_generic_schema_validator.html#afe6cd0d9088a1d4cf8100c0efc9f76fc',1,'rapidjson::GenericSchemaValidator::Reset()'],['../classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722',1,'rapidjson::Writer::Reset()']]], + ['reseterror_489',['ResetError',['../classrapidjson_1_1_generic_schema_validator.html#aab6478132518857d1bb2bc66c0dd03e7',1,'rapidjson::GenericSchemaValidator']]] ]; diff --git a/zh-cn/search/functions_c.js b/zh-cn/search/functions_c.js index 1a2cc217..8c83ee19 100644 --- a/zh-cn/search/functions_c.js +++ b/zh-cn/search/functions_c.js @@ -1,17 +1,17 @@ var searchData= [ - ['schemavalidatingreader_488',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706',1,'rapidjson::SchemaValidatingReader']]], - ['set_489',['Set',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a40c0bd4d6c535c57acbb5c2e656bea38',1,'rapidjson::ParseResult']]], - ['setformatoptions_490',['SetFormatOptions',['../classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090',1,'rapidjson::PrettyWriter']]], - ['setindent_491',['SetIndent',['../classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0',1,'rapidjson::PrettyWriter']]], - ['setmaxdecimalplaces_492',['SetMaxDecimalPlaces',['../classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634',1,'rapidjson::Writer']]], - ['setobjectraw_493',['SetObjectRaw',['../classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac',1,'rapidjson::GenericValue']]], - ['setstringraw_494',['SetStringRaw',['../classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s, Allocator &allocator)']]], - ['setvalidateflags_495',['SetValidateFlags',['../classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66',1,'rapidjson::GenericSchemaValidator']]], - ['shared_496',['Shared',['../classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc',1,'rapidjson::MemoryPoolAllocator']]], - ['size_497',['Size',['../classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265',1,'rapidjson::MemoryPoolAllocator']]], - ['skipwhitespace_498',['SkipWhitespace',['../namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a',1,'rapidjson::SkipWhitespace(InputStream &is)'],['../namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2',1,'rapidjson::SkipWhitespace(InsituStringStream &is)'],['../namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568',1,'rapidjson::SkipWhitespace(StringStream &is)']]], - ['string_499',['String',['../classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c',1,'rapidjson::PrettyWriter::String()'],['../classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24',1,'rapidjson::Writer::String()']]], - ['stringref_500',['StringRef',['../structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::GenericStringRef::StringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::GenericStringRef::StringRef(const CharType *str, size_t length)'],['../structrapidjson_1_1_generic_string_ref.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::GenericStringRef::StringRef(const std::basic_string< CharType > &str)'],['../namespacerapidjson.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::StringRef(const CharType *str)'],['../namespacerapidjson.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::StringRef(const CharType *str, size_t length)'],['../namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::StringRef(const std::basic_string< CharType > &str)']]], - ['swap_501',['Swap',['../classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b',1,'rapidjson::GenericDocument::Swap()'],['../classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b',1,'rapidjson::GenericPointer::Swap()']]] + ['schemavalidatingreader_490',['SchemaValidatingReader',['../classrapidjson_1_1_schema_validating_reader.html#a1e2bcc66cad23376241cd91e8bf8c706',1,'rapidjson::SchemaValidatingReader']]], + ['set_491',['Set',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#a40c0bd4d6c535c57acbb5c2e656bea38',1,'rapidjson::ParseResult']]], + ['setformatoptions_492',['SetFormatOptions',['../classrapidjson_1_1_pretty_writer.html#acde6176577f29869e28a4f3c4a251090',1,'rapidjson::PrettyWriter']]], + ['setindent_493',['SetIndent',['../classrapidjson_1_1_pretty_writer.html#a121686c29ca7fe071fa4108c46955ff0',1,'rapidjson::PrettyWriter']]], + ['setmaxdecimalplaces_494',['SetMaxDecimalPlaces',['../classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634',1,'rapidjson::Writer']]], + ['setobjectraw_495',['SetObjectRaw',['../classrapidjson_1_1_generic_value.html#a1efc6f69fe809557ae00dd322b7f79ac',1,'rapidjson::GenericValue']]], + ['setstringraw_496',['SetStringRaw',['../classrapidjson_1_1_generic_value.html#a248bab30562a4197cea0474d7f0ce835',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s) RAPIDJSON_NOEXCEPT'],['../classrapidjson_1_1_generic_value.html#abbca9846370d4749cdbb6bab9e44096c',1,'rapidjson::GenericValue::SetStringRaw(StringRefType s, Allocator &allocator)']]], + ['setvalidateflags_497',['SetValidateFlags',['../classrapidjson_1_1_generic_schema_validator.html#ab521826cfc7ca994856323f9f1420d66',1,'rapidjson::GenericSchemaValidator']]], + ['shared_498',['Shared',['../classrapidjson_1_1_memory_pool_allocator.html#af1a56b28d5e0d75b628d448ceacd41fc',1,'rapidjson::MemoryPoolAllocator']]], + ['size_499',['Size',['../classrapidjson_1_1_memory_pool_allocator.html#ab7368f377dafc0ecad2c59814cdfe265',1,'rapidjson::MemoryPoolAllocator']]], + ['skipwhitespace_500',['SkipWhitespace',['../namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a',1,'rapidjson::SkipWhitespace(InputStream &is)'],['../namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2',1,'rapidjson::SkipWhitespace(InsituStringStream &is)'],['../namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568',1,'rapidjson::SkipWhitespace(StringStream &is)']]], + ['string_501',['String',['../classrapidjson_1_1_pretty_writer.html#a363c2280393e27e19bceb8d015c2832c',1,'rapidjson::PrettyWriter::String()'],['../classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24',1,'rapidjson::Writer::String()']]], + ['stringref_502',['StringRef',['../structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::GenericStringRef::StringRef(const CharType *str)'],['../structrapidjson_1_1_generic_string_ref.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::GenericStringRef::StringRef(const CharType *str, size_t length)'],['../structrapidjson_1_1_generic_string_ref.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::GenericStringRef::StringRef(const std::basic_string< CharType > &str)'],['../namespacerapidjson.html#aa6b9fd9f6aa49405a574c362ba9af6b5',1,'rapidjson::StringRef(const CharType *str)'],['../namespacerapidjson.html#a578c51ab574a50a9c760b9da7c7562f2',1,'rapidjson::StringRef(const CharType *str, size_t length)'],['../namespacerapidjson.html#af94951529a5d51e8c4e6e770bb707c1f',1,'rapidjson::StringRef(const std::basic_string< CharType > &str)']]], + ['swap_503',['Swap',['../classrapidjson_1_1_generic_document.html#abf1cbab989b856f9d260787b2575750b',1,'rapidjson::GenericDocument::Swap()'],['../classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b',1,'rapidjson::GenericPointer::Swap()']]] ]; diff --git a/zh-cn/search/functions_d.js b/zh-cn/search/functions_d.js index 0bea8977..5b7e22dd 100644 --- a/zh-cn/search/functions_d.js +++ b/zh-cn/search/functions_d.js @@ -1,4 +1,4 @@ var searchData= [ - ['transcode_502',['Transcode',['../structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664',1,'rapidjson::Transcoder']]] + ['transcode_504',['Transcode',['../structrapidjson_1_1_transcoder.html#a3a1de7069d3cf7f1d4f4e2f96ceb7664',1,'rapidjson::Transcoder']]] ]; diff --git a/zh-cn/search/functions_e.js b/zh-cn/search/functions_e.js index 03a7d8e7..c7cf951c 100644 --- a/zh-cn/search/functions_e.js +++ b/zh-cn/search/functions_e.js @@ -1,4 +1,4 @@ var searchData= [ - ['validate_503',['Validate',['../structrapidjson_1_1_transcoder.html#ae9178e512e99394a38785e73927140da',1,'rapidjson::Transcoder']]] + ['validate_505',['Validate',['../structrapidjson_1_1_transcoder.html#ae9178e512e99394a38785e73927140da',1,'rapidjson::Transcoder']]] ]; diff --git a/zh-cn/search/functions_f.js b/zh-cn/search/functions_f.js index d5f405a1..f03f7a07 100644 --- a/zh-cn/search/functions_f.js +++ b/zh-cn/search/functions_f.js @@ -1,4 +1,4 @@ var searchData= [ - ['writer_504',['Writer',['../classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2',1,'rapidjson::Writer']]] + ['writer_506',['Writer',['../classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2',1,'rapidjson::Writer']]] ]; diff --git a/zh-cn/search/groups_0.js b/zh-cn/search/groups_0.js index 32299413..c5031d55 100644 --- a/zh-cn/search/groups_0.js +++ b/zh-cn/search/groups_0.js @@ -1,5 +1,5 @@ var searchData= [ - ['rapidjson_20configuration_662',['RapidJSON configuration',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html',1,'']]], - ['rapidjson_20error_20handling_663',['RapidJSON error handling',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html',1,'']]] + ['rapidjson_20configuration_665',['RapidJSON configuration',['../group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html',1,'']]], + ['rapidjson_20error_20handling_666',['RapidJSON error handling',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html',1,'']]] ]; diff --git a/zh-cn/search/namespaces_0.js b/zh-cn/search/namespaces_0.js index 269c2520..989ddf29 100644 --- a/zh-cn/search/namespaces_0.js +++ b/zh-cn/search/namespaces_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['rapidjson_414',['rapidjson',['../namespacerapidjson.html',1,'']]] + ['rapidjson_416',['rapidjson',['../namespacerapidjson.html',1,'']]] ]; diff --git a/zh-cn/search/pages_0.js b/zh-cn/search/pages_0.js index a26e4a9e..1b0ea122 100644 --- a/zh-cn/search/pages_0.js +++ b/zh-cn/search/pages_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['change_20log_664',['Change Log',['../md__c_h_a_n_g_e_l_o_g.html',1,'']]] + ['change_20log_667',['Change Log',['../md__c_h_a_n_g_e_l_o_g.html',1,'']]] ]; diff --git a/zh-cn/search/pages_1.js b/zh-cn/search/pages_1.js index 04911975..8e2b0633 100644 --- a/zh-cn/search/pages_1.js +++ b/zh-cn/search/pages_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['dom_665',['DOM',['../md_doc_dom_8zh-cn.html',1,'']]] + ['dom_668',['DOM',['../md_doc_dom_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/pages_2.js b/zh-cn/search/pages_2.js index 8a676c67..baad4f41 100644 --- a/zh-cn/search/pages_2.js +++ b/zh-cn/search/pages_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['pointer_666',['Pointer',['../md_doc_pointer_8zh-cn.html',1,'']]] + ['pointer_669',['Pointer',['../md_doc_pointer_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/pages_3.js b/zh-cn/search/pages_3.js index 77b851d3..5e76c45e 100644 --- a/zh-cn/search/pages_3.js +++ b/zh-cn/search/pages_3.js @@ -1,5 +1,5 @@ var searchData= [ - ['sax_667',['SAX',['../md_doc_sax_8zh-cn.html',1,'']]], - ['schema_668',['Schema',['../md_doc_schema_8zh-cn.html',1,'']]] + ['sax_670',['SAX',['../md_doc_sax_8zh-cn.html',1,'']]], + ['schema_671',['Schema',['../md_doc_schema_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/pages_4.js b/zh-cn/search/pages_4.js index 29594d1f..13c5107f 100644 --- a/zh-cn/search/pages_4.js +++ b/zh-cn/search/pages_4.js @@ -1,5 +1,5 @@ var searchData= [ - ['常见问题_669',['常见问题',['../md_doc_faq_8zh-cn.html',1,'']]], - ['内部架构_670',['内部架构',['../md_doc_internals_8zh-cn.html',1,'']]] + ['常见问题_672',['常见问题',['../md_doc_faq_8zh-cn.html',1,'']]], + ['内部架构_673',['内部架构',['../md_doc_internals_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/pages_5.js b/zh-cn/search/pages_5.js index 99f9f785..8c31c5da 100644 --- a/zh-cn/search/pages_5.js +++ b/zh-cn/search/pages_5.js @@ -1,6 +1,6 @@ var searchData= [ - ['性能_671',['性能',['../md_doc_performance_8zh-cn.html',1,'']]], - ['流_672',['流',['../md_doc_stream_8zh-cn.html',1,'']]], - ['教程_673',['教程',['../md_doc_tutorial_8zh-cn.html',1,'']]] + ['性能_674',['性能',['../md_doc_performance_8zh-cn.html',1,'']]], + ['流_675',['流',['../md_doc_stream_8zh-cn.html',1,'']]], + ['教程_676',['教程',['../md_doc_tutorial_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/pages_6.js b/zh-cn/search/pages_6.js index 4f4bb34b..5d9f6aff 100644 --- a/zh-cn/search/pages_6.js +++ b/zh-cn/search/pages_6.js @@ -1,5 +1,5 @@ var searchData= [ - ['编码_674',['编码',['../md_doc_encoding_8zh-cn.html',1,'']]], - ['特点_675',['特点',['../md_doc_features_8zh-cn.html',1,'']]] + ['编码_677',['编码',['../md_doc_encoding_8zh-cn.html',1,'']]], + ['特点_678',['特点',['../md_doc_features_8zh-cn.html',1,'']]] ]; diff --git a/zh-cn/search/related_0.js b/zh-cn/search/related_0.js index 1e4edd2a..e191aca8 100644 --- a/zh-cn/search/related_0.js +++ b/zh-cn/search/related_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['swap_651',['swap',['../classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d',1,'rapidjson::GenericDocument::swap()'],['../classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937',1,'rapidjson::GenericPointer::swap()']]] + ['swap_654',['swap',['../classrapidjson_1_1_generic_document.html#a0d63efcc43758ac3aed77e868233369d',1,'rapidjson::GenericDocument::swap()'],['../classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937',1,'rapidjson::GenericPointer::swap()']]] ]; diff --git a/zh-cn/search/typedefs_0.js b/zh-cn/search/typedefs_0.js index 55cfbd65..fbcb7fa6 100644 --- a/zh-cn/search/typedefs_0.js +++ b/zh-cn/search/typedefs_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['allocatortype_534',['AllocatorType',['../classrapidjson_1_1_generic_value.html#a5d47340c96346c5028fee4c9068d783d',1,'rapidjson::GenericValue::AllocatorType()'],['../classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773',1,'rapidjson::GenericDocument::AllocatorType()']]] + ['allocatortype_537',['AllocatorType',['../classrapidjson_1_1_generic_value.html#a5d47340c96346c5028fee4c9068d783d',1,'rapidjson::GenericValue::AllocatorType()'],['../classrapidjson_1_1_generic_document.html#a4c85243a28c9dcf2d1357da00fcaa773',1,'rapidjson::GenericDocument::AllocatorType()']]] ]; diff --git a/zh-cn/search/typedefs_1.js b/zh-cn/search/typedefs_1.js index 8df63961..22316dbd 100644 --- a/zh-cn/search/typedefs_1.js +++ b/zh-cn/search/typedefs_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['booleantype_535',['BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#aff2daa285445bba8f76578ea274e34a3',1,'rapidjson::ParseResult']]] + ['booleantype_538',['BooleanType',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#aff2daa285445bba8f76578ea274e34a3',1,'rapidjson::ParseResult']]] ]; diff --git a/zh-cn/search/typedefs_2.js b/zh-cn/search/typedefs_2.js index 82adc7e2..63d858a0 100644 --- a/zh-cn/search/typedefs_2.js +++ b/zh-cn/search/typedefs_2.js @@ -1,6 +1,6 @@ var searchData= [ - ['ch_536',['Ch',['../structrapidjson_1_1_generic_string_ref.html#aa2a8eccae3d7eb14c30bc21afb7d6fba',1,'rapidjson::GenericStringRef::Ch()'],['../classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4',1,'rapidjson::GenericValue::Ch()'],['../classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5',1,'rapidjson::GenericDocument::Ch()'],['../classrapidjson_1_1_file_read_stream.html#a4a5f34875b40d22def206c9a09ecd929',1,'rapidjson::FileReadStream::Ch()'],['../classrapidjson_1_1_file_write_stream.html#afc606cc81f6c3709d81bf99b30566330',1,'rapidjson::FileWriteStream::Ch()'],['../classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7',1,'rapidjson::GenericPointer::Ch()'],['../classrapidjson_1_1_generic_reader.html#a0781d19e8c6bc044d9cc5f5d3dde287e',1,'rapidjson::GenericReader::Ch()']]], - ['constiterator_537',['ConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a61b9a9ba8a5917d90406532f104605cc',1,'rapidjson::GenericMemberIterator']]], - ['constmemberiterator_538',['ConstMemberIterator',['../classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f',1,'rapidjson::GenericValue']]] + ['ch_539',['Ch',['../structrapidjson_1_1_generic_string_ref.html#aa2a8eccae3d7eb14c30bc21afb7d6fba',1,'rapidjson::GenericStringRef::Ch()'],['../classrapidjson_1_1_generic_value.html#adcdbc7fa85a9a41b78966d7e0dcc2ac4',1,'rapidjson::GenericValue::Ch()'],['../classrapidjson_1_1_generic_document.html#a8367a827588dd91d02e21ef945bec9f5',1,'rapidjson::GenericDocument::Ch()'],['../classrapidjson_1_1_file_read_stream.html#a4a5f34875b40d22def206c9a09ecd929',1,'rapidjson::FileReadStream::Ch()'],['../classrapidjson_1_1_file_write_stream.html#afc606cc81f6c3709d81bf99b30566330',1,'rapidjson::FileWriteStream::Ch()'],['../classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7',1,'rapidjson::GenericPointer::Ch()'],['../classrapidjson_1_1_generic_reader.html#a0781d19e8c6bc044d9cc5f5d3dde287e',1,'rapidjson::GenericReader::Ch()']]], + ['constiterator_540',['ConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a61b9a9ba8a5917d90406532f104605cc',1,'rapidjson::GenericMemberIterator']]], + ['constmemberiterator_541',['ConstMemberIterator',['../classrapidjson_1_1_generic_value.html#a6cd2b09795c48d2892bebc0ae350d51f',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/typedefs_3.js b/zh-cn/search/typedefs_3.js index bfa21d66..e02511d8 100644 --- a/zh-cn/search/typedefs_3.js +++ b/zh-cn/search/typedefs_3.js @@ -1,5 +1,5 @@ var searchData= [ - ['differencetype_539',['DifferenceType',['../classrapidjson_1_1_generic_member_iterator.html#aff2739a9265639a7a4be8c3e6216b31a',1,'rapidjson::GenericMemberIterator']]], - ['document_540',['Document',['../namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8',1,'rapidjson']]] + ['differencetype_542',['DifferenceType',['../classrapidjson_1_1_generic_member_iterator.html#aff2739a9265639a7a4be8c3e6216b31a',1,'rapidjson::GenericMemberIterator']]], + ['document_543',['Document',['../namespacerapidjson.html#ace11b5b575baf1cccd5ba5f8586dcdc8',1,'rapidjson']]] ]; diff --git a/zh-cn/search/typedefs_4.js b/zh-cn/search/typedefs_4.js index e566b870..2d38a5c4 100644 --- a/zh-cn/search/typedefs_4.js +++ b/zh-cn/search/typedefs_4.js @@ -1,4 +1,4 @@ var searchData= [ - ['encodingtype_541',['EncodingType',['../classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d',1,'rapidjson::GenericValue::EncodingType()'],['../classrapidjson_1_1_generic_pointer.html#a399790c5fe8076d91a58c621c0c2a79e',1,'rapidjson::GenericPointer::EncodingType()']]] + ['encodingtype_544',['EncodingType',['../classrapidjson_1_1_generic_value.html#a05906384808645a2e798d29a9b2d441d',1,'rapidjson::GenericValue::EncodingType()'],['../classrapidjson_1_1_generic_pointer.html#a399790c5fe8076d91a58c621c0c2a79e',1,'rapidjson::GenericPointer::EncodingType()']]] ]; diff --git a/zh-cn/search/typedefs_5.js b/zh-cn/search/typedefs_5.js index 1ba3a938..54f4693d 100644 --- a/zh-cn/search/typedefs_5.js +++ b/zh-cn/search/typedefs_5.js @@ -1,6 +1,6 @@ var searchData= [ - ['insitustringstream_542',['InsituStringStream',['../namespacerapidjson.html#a64e957c8d9d7cd15b193ffc31410038e',1,'rapidjson']]], - ['iremoteschemadocumentprovider_543',['IRemoteSchemaDocumentProvider',['../namespacerapidjson.html#af91eb8eea47b79d75b23e29fa9c0abb5',1,'rapidjson']]], - ['iterator_544',['Iterator',['../classrapidjson_1_1_generic_member_iterator.html#a37091c3dd8470486ef5188f3c1108653',1,'rapidjson::GenericMemberIterator']]] + ['insitustringstream_545',['InsituStringStream',['../namespacerapidjson.html#a64e957c8d9d7cd15b193ffc31410038e',1,'rapidjson']]], + ['iremoteschemadocumentprovider_546',['IRemoteSchemaDocumentProvider',['../namespacerapidjson.html#af91eb8eea47b79d75b23e29fa9c0abb5',1,'rapidjson']]], + ['iterator_547',['Iterator',['../classrapidjson_1_1_generic_member_iterator.html#a37091c3dd8470486ef5188f3c1108653',1,'rapidjson::GenericMemberIterator']]] ]; diff --git a/zh-cn/search/typedefs_6.js b/zh-cn/search/typedefs_6.js index 3dfca66d..8f4a581c 100644 --- a/zh-cn/search/typedefs_6.js +++ b/zh-cn/search/typedefs_6.js @@ -1,5 +1,5 @@ var searchData= [ - ['member_545',['Member',['../classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559',1,'rapidjson::GenericValue']]], - ['memberiterator_546',['MemberIterator',['../classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b',1,'rapidjson::GenericValue']]] + ['member_548',['Member',['../classrapidjson_1_1_generic_value.html#a0220ddebe2f023fa75b643a50e90e559',1,'rapidjson::GenericValue']]], + ['memberiterator_549',['MemberIterator',['../classrapidjson_1_1_generic_value.html#aca5596987335016c1a7c2a9467baf80b',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/typedefs_7.js b/zh-cn/search/typedefs_7.js index 6ff795e3..fca126af 100644 --- a/zh-cn/search/typedefs_7.js +++ b/zh-cn/search/typedefs_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['nonconstiterator_547',['NonConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb',1,'rapidjson::GenericMemberIterator']]] + ['nonconstiterator_550',['NonConstIterator',['../classrapidjson_1_1_generic_member_iterator.html#a1a91868fa388664bb301061e3e24badb',1,'rapidjson::GenericMemberIterator']]] ]; diff --git a/zh-cn/search/typedefs_8.js b/zh-cn/search/typedefs_8.js index cabbc3ca..1084c372 100644 --- a/zh-cn/search/typedefs_8.js +++ b/zh-cn/search/typedefs_8.js @@ -1,4 +1,4 @@ var searchData= [ - ['pointer_548',['Pointer',['../classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107',1,'rapidjson::GenericMemberIterator::Pointer()'],['../namespacerapidjson.html#a080910f74d2f5046e6724280159cf374',1,'rapidjson::Pointer()']]] + ['pointer_551',['Pointer',['../classrapidjson_1_1_generic_member_iterator.html#aa9d53504374c7c6bdf46775482c5b107',1,'rapidjson::GenericMemberIterator::Pointer()'],['../namespacerapidjson.html#a080910f74d2f5046e6724280159cf374',1,'rapidjson::Pointer()']]] ]; diff --git a/zh-cn/search/typedefs_9.js b/zh-cn/search/typedefs_9.js index 452cbacd..3cbac782 100644 --- a/zh-cn/search/typedefs_9.js +++ b/zh-cn/search/typedefs_9.js @@ -1,5 +1,5 @@ var searchData= [ - ['reader_549',['Reader',['../namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6',1,'rapidjson']]], - ['reference_550',['Reference',['../classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2',1,'rapidjson::GenericMemberIterator']]] + ['reader_552',['Reader',['../namespacerapidjson.html#ad5310edd1226f5b3ea82dc0d4d3740c6',1,'rapidjson']]], + ['reference_553',['Reference',['../classrapidjson_1_1_generic_member_iterator.html#abe27838f8dc71fdb38028ef27ae0b4f2',1,'rapidjson::GenericMemberIterator']]] ]; diff --git a/zh-cn/search/typedefs_a.js b/zh-cn/search/typedefs_a.js index a5c51cd9..2f6074ce 100644 --- a/zh-cn/search/typedefs_a.js +++ b/zh-cn/search/typedefs_a.js @@ -1,8 +1,8 @@ var searchData= [ - ['schemadocument_551',['SchemaDocument',['../namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf',1,'rapidjson']]], - ['sizetype_552',['SizeType',['../namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84',1,'rapidjson']]], - ['stringbuffer_553',['StringBuffer',['../namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21',1,'rapidjson']]], - ['stringreftype_554',['StringRefType',['../classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379',1,'rapidjson::GenericValue']]], - ['stringstream_555',['StringStream',['../namespacerapidjson.html#a021f77051e9f85188fc2f71ff5a15ebc',1,'rapidjson']]] + ['schemadocument_554',['SchemaDocument',['../namespacerapidjson.html#a52bbb5d64d1319495089e1713a0653cf',1,'rapidjson']]], + ['sizetype_555',['SizeType',['../namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84',1,'rapidjson']]], + ['stringbuffer_556',['StringBuffer',['../namespacerapidjson.html#ac0765ea91f41539645c4b78689d03f21',1,'rapidjson']]], + ['stringreftype_557',['StringRefType',['../classrapidjson_1_1_generic_value.html#a559eb9cea54364a35518b02f6d74f379',1,'rapidjson::GenericValue']]], + ['stringstream_558',['StringStream',['../namespacerapidjson.html#a021f77051e9f85188fc2f71ff5a15ebc',1,'rapidjson']]] ]; diff --git a/zh-cn/search/typedefs_b.js b/zh-cn/search/typedefs_b.js index fc44388d..b888d7c7 100644 --- a/zh-cn/search/typedefs_b.js +++ b/zh-cn/search/typedefs_b.js @@ -1,6 +1,6 @@ var searchData= [ - ['value_556',['Value',['../namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505',1,'rapidjson']]], - ['valueiterator_557',['ValueIterator',['../classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e',1,'rapidjson::GenericValue']]], - ['valuetype_558',['ValueType',['../classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202',1,'rapidjson::GenericValue::ValueType()'],['../classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc',1,'rapidjson::GenericDocument::ValueType()']]] + ['value_559',['Value',['../namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505',1,'rapidjson']]], + ['valueiterator_560',['ValueIterator',['../classrapidjson_1_1_generic_value.html#a06ce0e14ec83b53c83e1b1699b53a25e',1,'rapidjson::GenericValue']]], + ['valuetype_561',['ValueType',['../classrapidjson_1_1_generic_value.html#ad2935191ab28c2c2e472b739a9d58202',1,'rapidjson::GenericValue::ValueType()'],['../classrapidjson_1_1_generic_document.html#a41bbec044c421e870a9d355075d741bc',1,'rapidjson::GenericDocument::ValueType()']]] ]; diff --git a/zh-cn/search/variables_0.js b/zh-cn/search/variables_0.js index 89911b30..56b44b94 100644 --- a/zh-cn/search/variables_0.js +++ b/zh-cn/search/variables_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['allocator_5f_510',['allocator_',['../classrapidjson_1_1_generic_pointer.html#a303e16e7d6c391a2afe8669744f79897',1,'rapidjson::GenericPointer']]] + ['allocator_5f_512',['allocator_',['../classrapidjson_1_1_generic_pointer.html#a303e16e7d6c391a2afe8669744f79897',1,'rapidjson::GenericPointer']]] ]; diff --git a/zh-cn/search/variables_1.js b/zh-cn/search/variables_1.js index e767c197..754103b9 100644 --- a/zh-cn/search/variables_1.js +++ b/zh-cn/search/variables_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['begin_5f_511',['begin_',['../structrapidjson_1_1_memory_stream.html#a1cc586e50fbfc0bd5994977b42243b93',1,'rapidjson::MemoryStream']]] + ['begin_5f_513',['begin_',['../structrapidjson_1_1_memory_stream.html#a1cc586e50fbfc0bd5994977b42243b93',1,'rapidjson::MemoryStream']]] ]; diff --git a/zh-cn/search/variables_2.js b/zh-cn/search/variables_2.js index 895583b6..3d12149b 100644 --- a/zh-cn/search/variables_2.js +++ b/zh-cn/search/variables_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['constvalueiterator_512',['ConstValueIterator',['../classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7',1,'rapidjson::GenericValue']]] + ['constvalueiterator_514',['ConstValueIterator',['../classrapidjson_1_1_generic_value.html#a45b0ddd23742e045ffe286f9ead712b7',1,'rapidjson::GenericValue']]] ]; diff --git a/zh-cn/search/variables_3.js b/zh-cn/search/variables_3.js index d152d954..f403539e 100644 --- a/zh-cn/search/variables_3.js +++ b/zh-cn/search/variables_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['end_5f_513',['end_',['../structrapidjson_1_1_memory_stream.html#a47f45298891e8156121b4017954fabe8',1,'rapidjson::MemoryStream']]] + ['end_5f_515',['end_',['../structrapidjson_1_1_memory_stream.html#a47f45298891e8156121b4017954fabe8',1,'rapidjson::MemoryStream']]] ]; diff --git a/zh-cn/search/variables_4.js b/zh-cn/search/variables_4.js index 31a4a94a..b3a73f89 100644 --- a/zh-cn/search/variables_4.js +++ b/zh-cn/search/variables_4.js @@ -1,5 +1,5 @@ var searchData= [ - ['getparseerrorfunc_514',['GetParseErrorFunc',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga9d6e699072f8275623a52c4892005751',1,'rapidjson']]], - ['getvalidateerrorfunc_515',['GetValidateErrorFunc',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga5e4d44bc16d54acb0a9697110a79a83c',1,'rapidjson']]] + ['getparseerrorfunc_516',['GetParseErrorFunc',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga9d6e699072f8275623a52c4892005751',1,'rapidjson']]], + ['getvalidateerrorfunc_517',['GetValidateErrorFunc',['../group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga5e4d44bc16d54acb0a9697110a79a83c',1,'rapidjson']]] ]; diff --git a/zh-cn/search/variables_5.js b/zh-cn/search/variables_5.js index ac33f6ba..2f542867 100644 --- a/zh-cn/search/variables_5.js +++ b/zh-cn/search/variables_5.js @@ -1,5 +1,5 @@ var searchData= [ - ['hashcode_516',['hashcode',['../structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260',1,'rapidjson::GenericValue::String']]], - ['head_5f_517',['head_',['../structrapidjson_1_1_generic_string_stream.html#a2556705b0a0fd6393862efe6db025b32',1,'rapidjson::GenericStringStream']]] + ['hashcode_518',['hashcode',['../structrapidjson_1_1_generic_value_1_1_string.html#ad152cf5021ffbcaa8dcafea401ac5260',1,'rapidjson::GenericValue::String']]], + ['head_5f_519',['head_',['../structrapidjson_1_1_generic_string_stream.html#a2556705b0a0fd6393862efe6db025b32',1,'rapidjson::GenericStringStream']]] ]; diff --git a/zh-cn/search/variables_6.js b/zh-cn/search/variables_6.js index 476d932a..7fc41f20 100644 --- a/zh-cn/search/variables_6.js +++ b/zh-cn/search/variables_6.js @@ -1,5 +1,5 @@ var searchData= [ - ['inarray_518',['inArray',['../structrapidjson_1_1_writer_1_1_level.html#a59255e3b1d371161f7c894503cfd6bec',1,'rapidjson::Writer::Level']]], - ['index_519',['index',['../structrapidjson_1_1_generic_pointer_1_1_token.html#a50331c9e3dedc34d2c79745b2e58fb2d',1,'rapidjson::GenericPointer::Token']]] + ['inarray_520',['inArray',['../structrapidjson_1_1_writer_1_1_level.html#a59255e3b1d371161f7c894503cfd6bec',1,'rapidjson::Writer::Level']]], + ['index_521',['index',['../structrapidjson_1_1_generic_pointer_1_1_token.html#a50331c9e3dedc34d2c79745b2e58fb2d',1,'rapidjson::GenericPointer::Token']]] ]; diff --git a/zh-cn/search/variables_7.js b/zh-cn/search/variables_7.js index 5a7c2069..58d200cf 100644 --- a/zh-cn/search/variables_7.js +++ b/zh-cn/search/variables_7.js @@ -1,4 +1,5 @@ var searchData= [ - ['kneedfree_520',['kNeedFree',['../classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29',1,'rapidjson::MemoryPoolAllocator::kNeedFree()'],['../classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c',1,'rapidjson::StdAllocator::kNeedFree()']]] + ['kneedfree_522',['kNeedFree',['../classrapidjson_1_1_memory_pool_allocator.html#a2606d96e19bcfc9d4bf58aefe55c1b29',1,'rapidjson::MemoryPoolAllocator::kNeedFree()'],['../classrapidjson_1_1_std_allocator.html#a000e9708918f813fc151020c0a03c62c',1,'rapidjson::StdAllocator::kNeedFree()']]], + ['krefcounted_523',['kRefCounted',['../classrapidjson_1_1_memory_pool_allocator.html#a285002fe7283af29c222adf63c9c6496',1,'rapidjson::MemoryPoolAllocator']]] ]; diff --git a/zh-cn/search/variables_8.js b/zh-cn/search/variables_8.js index 2c91c76a..dae9ca17 100644 --- a/zh-cn/search/variables_8.js +++ b/zh-cn/search/variables_8.js @@ -1,4 +1,4 @@ var searchData= [ - ['length_521',['length',['../structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111',1,'rapidjson::GenericStringRef::length()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600',1,'rapidjson::GenericPointer::Token::length()']]] + ['length_524',['length',['../structrapidjson_1_1_generic_string_ref.html#ae223535ec20edf0c1db44a40b7735111',1,'rapidjson::GenericStringRef::length()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#ad866d674dbddf9690ad571b65e968600',1,'rapidjson::GenericPointer::Token::length()']]] ]; diff --git a/zh-cn/search/variables_9.js b/zh-cn/search/variables_9.js index de3416c0..5ebbc5e9 100644 --- a/zh-cn/search/variables_9.js +++ b/zh-cn/search/variables_9.js @@ -1,5 +1,5 @@ var searchData= [ - ['name_522',['name',['../classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607',1,'rapidjson::GenericMember::name()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#aceb59c9796418c20da27b03bf1948fe8',1,'rapidjson::GenericPointer::Token::name()']]], - ['namebuffer_5f_523',['nameBuffer_',['../classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465',1,'rapidjson::GenericPointer']]] + ['name_525',['name',['../classrapidjson_1_1_generic_member.html#ae820eaa74b415a9073f3f3855f6c6607',1,'rapidjson::GenericMember::name()'],['../structrapidjson_1_1_generic_pointer_1_1_token.html#aceb59c9796418c20da27b03bf1948fe8',1,'rapidjson::GenericPointer::Token::name()']]], + ['namebuffer_5f_526',['nameBuffer_',['../classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465',1,'rapidjson::GenericPointer']]] ]; diff --git a/zh-cn/search/variables_a.js b/zh-cn/search/variables_a.js index ce845a7a..24378795 100644 --- a/zh-cn/search/variables_a.js +++ b/zh-cn/search/variables_a.js @@ -1,4 +1,4 @@ var searchData= [ - ['ownallocator_5f_524',['ownAllocator_',['../classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445',1,'rapidjson::GenericPointer']]] + ['ownallocator_5f_527',['ownAllocator_',['../classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445',1,'rapidjson::GenericPointer']]] ]; diff --git a/zh-cn/search/variables_b.js b/zh-cn/search/variables_b.js index 1006b732..3de85b34 100644 --- a/zh-cn/search/variables_b.js +++ b/zh-cn/search/variables_b.js @@ -1,5 +1,5 @@ var searchData= [ - ['parseerrorcode_5f_525',['parseErrorCode_',['../classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34',1,'rapidjson::GenericPointer']]], - ['parseerroroffset_5f_526',['parseErrorOffset_',['../classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a',1,'rapidjson::GenericPointer']]] + ['parseerrorcode_5f_528',['parseErrorCode_',['../classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34',1,'rapidjson::GenericPointer']]], + ['parseerroroffset_5f_529',['parseErrorOffset_',['../classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a',1,'rapidjson::GenericPointer']]] ]; diff --git a/zh-cn/search/variables_c.js b/zh-cn/search/variables_c.js index e0fd0c13..1bea73fd 100644 --- a/zh-cn/search/variables_c.js +++ b/zh-cn/search/variables_c.js @@ -1,6 +1,6 @@ var searchData= [ - ['s_527',['s',['../structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994',1,'rapidjson::GenericStringRef']]], - ['size_5f_528',['size_',['../structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace',1,'rapidjson::MemoryStream']]], - ['src_5f_529',['src_',['../structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722',1,'rapidjson::MemoryStream::src_()'],['../structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d',1,'rapidjson::GenericStringStream::src_()']]] + ['s_530',['s',['../structrapidjson_1_1_generic_string_ref.html#a001276ee57cbcbd3c14449045c71e994',1,'rapidjson::GenericStringRef']]], + ['size_5f_531',['size_',['../structrapidjson_1_1_memory_stream.html#a8c8437d59c32168a74226312d9e96ace',1,'rapidjson::MemoryStream']]], + ['src_5f_532',['src_',['../structrapidjson_1_1_memory_stream.html#ac0b4da6016e5ba6241604fd4258fb722',1,'rapidjson::MemoryStream::src_()'],['../structrapidjson_1_1_generic_string_stream.html#a9a38a9d5b1ce782cacd4ec1bdf87fc2d',1,'rapidjson::GenericStringStream::src_()']]] ]; diff --git a/zh-cn/search/variables_d.js b/zh-cn/search/variables_d.js index 5e55705c..9a2327a5 100644 --- a/zh-cn/search/variables_d.js +++ b/zh-cn/search/variables_d.js @@ -1,5 +1,5 @@ var searchData= [ - ['tokencount_5f_530',['tokenCount_',['../classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b',1,'rapidjson::GenericPointer']]], - ['tokens_5f_531',['tokens_',['../classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7',1,'rapidjson::GenericPointer']]] + ['tokencount_5f_533',['tokenCount_',['../classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b',1,'rapidjson::GenericPointer']]], + ['tokens_5f_534',['tokens_',['../classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7',1,'rapidjson::GenericPointer']]] ]; diff --git a/zh-cn/search/variables_e.js b/zh-cn/search/variables_e.js index 6f1bf467..52bb6c42 100644 --- a/zh-cn/search/variables_e.js +++ b/zh-cn/search/variables_e.js @@ -1,5 +1,5 @@ var searchData= [ - ['value_532',['value',['../classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6',1,'rapidjson::GenericMember']]], - ['valuecount_533',['valueCount',['../structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b',1,'rapidjson::Writer::Level']]] + ['value_535',['value',['../classrapidjson_1_1_generic_member.html#a8ffff2076e62d988a070a136da6ffca6',1,'rapidjson::GenericMember']]], + ['valuecount_536',['valueCount',['../structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b',1,'rapidjson::Writer::Level']]] ]; diff --git a/zh-cn/stack_8h_source.html b/zh-cn/stack_8h_source.html index 05577041..09440cab 100644 --- a/zh-cn/stack_8h_source.html +++ b/zh-cn/stack_8h_source.html @@ -323,10 +323,10 @@ $(document).ready(function(){initNavTree('stack_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="aclassrapidjson_1_1_allocator_html"><div class="ttname"><a href="classrapidjson_1_1_allocator.html">Allocator</a></div><div class="ttdoc">Concept for allocating, resizing and freeing memory block.</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:690</div></div> -<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:694</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_abdc7cd7902748ffe6626d71c59a73c3b"><div class="ttname"><a href="rapidjson_8h.html#abdc7cd7902748ffe6626d71c59a73c3b">RAPIDJSON_NEW</a></div><div class="ttdeci">#define RAPIDJSON_NEW(TypeName)</div><div class="ttdoc">! customization point for global new</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="arapidjson_8h_html_a52c941c3fdd646527cdcd42aa846a28a"><div class="ttname"><a href="rapidjson_8h.html#a52c941c3fdd646527cdcd42aa846a28a">RAPIDJSON_DELETE</a></div><div class="ttdeci">#define RAPIDJSON_DELETE(x)</div><div class="ttdoc">! customization point for global delete</div><div class="ttdef"><b>Definition:</b> rapidjson.h:716</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/stream_8h_source.html b/zh-cn/stream_8h_source.html index ab5ce972..b84e5e3d 100644 --- a/zh-cn/stream_8h_source.html +++ b/zh-cn/stream_8h_source.html @@ -319,7 +319,7 @@ $(document).ready(function(){initNavTree('stream_8h_source.html','');}); <div class="ttc" id="astructrapidjson_1_1_stream_traits_html"><div class="ttname"><a href="structrapidjson_1_1_stream_traits.html">rapidjson::StreamTraits</a></div><div class="ttdoc">Provides additional information for stream.</div><div class="ttdef"><b>Definition:</b> stream.h:73</div></div> <div class="ttc" id="astructrapidjson_1_1_generic_string_stream_html"><div class="ttname"><a href="structrapidjson_1_1_generic_string_stream.html">rapidjson::GenericStringStream</a></div><div class="ttdoc">Read-only string stream.</div><div class="ttdef"><b>Definition:</b> fwd.h:47</div></div> <div class="ttc" id="aclassrapidjson_1_1_generic_stream_wrapper_html"><div class="ttname"><a href="classrapidjson_1_1_generic_stream_wrapper.html">rapidjson::GenericStreamWrapper</a></div><div class="ttdoc">A Stream Wrapper</div><div class="ttdef"><b>Definition:</b> stream.h:119</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="anamespacerapidjson_html_a0a774dcffe8ae07686f459ae017d2f20"><div class="ttname"><a href="namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20">rapidjson::PutUnsafe</a></div><div class="ttdeci">void PutUnsafe(Stream &stream, typename Stream::Ch c)</div><div class="ttdoc">Write character to a stream, presuming buffer is reserved.</div><div class="ttdef"><b>Definition:</b> stream.h:91</div></div> <div class="ttc" id="anamespacerapidjson_html_a4aacabc0f8cea1cd628f466d890773eb"><div class="ttname"><a href="namespacerapidjson.html#a4aacabc0f8cea1cd628f466d890773eb">rapidjson::UTFType</a></div><div class="ttdeci">UTFType</div><div class="ttdoc">Runtime-specified UTF encoding type of a stream.</div><div class="ttdef"><b>Definition:</b> encodings.h:603</div></div> <div class="ttc" id="anamespacerapidjson_html_a820f77efccfbb749bd15fe4822d2c740"><div class="ttname"><a href="namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740">rapidjson::PutReserve</a></div><div class="ttdeci">void PutReserve(Stream &stream, size_t count)</div><div class="ttdoc">Reserve n characters for writing to a stream.</div><div class="ttdef"><b>Definition:</b> stream.h:84</div></div> diff --git a/zh-cn/strfunc_8h_source.html b/zh-cn/strfunc_8h_source.html index 172f382e..c55208c7 100644 --- a/zh-cn/strfunc_8h_source.html +++ b/zh-cn/strfunc_8h_source.html @@ -159,8 +159,8 @@ $(document).ready(function(){initNavTree('strfunc_8h_source.html','');}); <div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor">#endif // RAPIDJSON_INTERNAL_STRFUNC_H_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/strtod_8h_source.html b/zh-cn/strtod_8h_source.html index 6b5aea4a..3b6aac9f 100644 --- a/zh-cn/strtod_8h_source.html +++ b/zh-cn/strtod_8h_source.html @@ -380,8 +380,8 @@ $(document).ready(function(){initNavTree('strtod_8h_source.html','');}); <div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor">#endif // RAPIDJSON_STRTOD_</span></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> -<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:302</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> +<div class="ttc" id="arapidjson_8h_html_aaee1245f375a71be1ac9b8a07ba5fb8f"><div class="ttname"><a href="rapidjson_8h.html#aaee1245f375a71be1ac9b8a07ba5fb8f">RAPIDJSON_UINT64_C2</a></div><div class="ttdeci">#define RAPIDJSON_UINT64_C2(high32, low32)</div><div class="ttdoc">Construct a 64-bit literal by a pair of 32-bit integer.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:320</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/structrapidjson_1_1_generic_string_ref.html b/zh-cn/structrapidjson_1_1_generic_string_ref.html index fcdbd31e..62005416 100644 --- a/zh-cn/structrapidjson_1_1_generic_string_ref.html +++ b/zh-cn/structrapidjson_1_1_generic_string_ref.html @@ -468,7 +468,7 @@ template<typename CharType > </div> </div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="astructrapidjson_1_1_generic_string_ref_html_aa6b9fd9f6aa49405a574c362ba9af6b5"><div class="ttname"><a href="structrapidjson_1_1_generic_string_ref.html#aa6b9fd9f6aa49405a574c362ba9af6b5">rapidjson::GenericStringRef::StringRef</a></div><div class="ttdeci">GenericStringRef< CharType > StringRef(const CharType *str)</div><div class="ttdoc">Mark a character pointer as constant string</div><div class="ttdef"><b>Definition:</b> document.h:445</div></div> -<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2199</div></div> +<div class="ttc" id="anamespacerapidjson_html_aa65fc9fb381b2cbc54f98673eadd6505"><div class="ttname"><a href="namespacerapidjson.html#aa65fc9fb381b2cbc54f98673eadd6505">rapidjson::Value</a></div><div class="ttdeci">GenericValue< UTF8<> > Value</div><div class="ttdoc">GenericValue with UTF8 encoding</div><div class="ttdef"><b>Definition:</b> document.h:2459</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> diff --git a/zh-cn/writer_8h_source.html b/zh-cn/writer_8h_source.html index 5b4cf428..0b2610a5 100644 --- a/zh-cn/writer_8h_source.html +++ b/zh-cn/writer_8h_source.html @@ -801,37 +801,37 @@ $(document).ready(function(){initNavTree('writer_8h_source.html','');}); </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga1975595e2f1dc20a2d4859f340ac88c6"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga1975595e2f1dc20a2d4859f340ac88c6">RAPIDJSON_WRITE_DEFAULT_FLAGS</a></div><div class="ttdeci">#define RAPIDJSON_WRITE_DEFAULT_FLAGS</div><div class="ttdoc">User-defined kWriteDefaultFlags definition.</div><div class="ttdef"><b>Definition:</b> writer.h:62</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:707</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">rapidjson::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Type of JSON value</div><div class="ttdef"><b>Definition:</b> rapidjson.h:729</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19">rapidjson::WriteFlag</a></div><div class="ttdeci">WriteFlag</div><div class="ttdoc">Combination of writeFlags</div><div class="ttdef"><b>Definition:</b> writer.h:66</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:710</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a80d9f25b083abce45edbfdd3ba006c8e">rapidjson::kTrueType</a></div><div class="ttdoc">true</div><div class="ttdef"><b>Definition:</b> rapidjson.h:732</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a190d964d3e62155e87153e858a0b04da"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a190d964d3e62155e87153e858a0b04da">rapidjson::Writer::IsComplete</a></div><div class="ttdeci">bool IsComplete() const</div><div class="ttdoc">Checks whether the output is a complete JSON.</div><div class="ttdef"><b>Definition:</b> writer.h:144</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ac1b5e17278b060e9e866df075c104c10">rapidjson::kWriteValidateEncodingFlag</a></div><div class="ttdoc">Validate encoding of JSON strings.</div><div class="ttdef"><b>Definition:</b> writer.h:68</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19ae971aa1fc0ae64c8f3d2b47fd802846a">rapidjson::kWriteNoFlags</a></div><div class="ttdoc">No flags are set.</div><div class="ttdef"><b>Definition:</b> writer.h:67</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_aff66881798d01e932a0b8b8ef97b0373"><div class="ttname"><a href="classrapidjson_1_1_writer.html#aff66881798d01e932a0b8b8ef97b0373">rapidjson::Writer::Double</a></div><div class="ttdeci">bool Double(double d)</div><div class="ttdoc">Writes the given double value to the stream</div><div class="ttdef"><b>Definition:</b> writer.h:194</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:709</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a9f2e7047832dce1029551b5de0f05607">rapidjson::kFalseType</a></div><div class="ttdoc">false</div><div class="ttdef"><b>Definition:</b> rapidjson.h:731</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_aa7b6967dc237519e2a6d8b3939fb9634"><div class="ttname"><a href="classrapidjson_1_1_writer.html#aa7b6967dc237519e2a6d8b3939fb9634">rapidjson::Writer::SetMaxDecimalPlaces</a></div><div class="ttdeci">void SetMaxDecimalPlaces(int maxDecimalPlaces)</div><div class="ttdoc">Sets the maximum number of decimal places for double output.</div><div class="ttdef"><b>Definition:</b> writer.h:173</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:711</div></div> -<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:397</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4acf030b422a32c3647c7c5973bd4dd0a9">rapidjson::kObjectType</a></div><div class="ttdoc">object</div><div class="ttdef"><b>Definition:</b> rapidjson.h:733</div></div> +<div class="ttc" id="anamespacerapidjson_html_a44eb33eaa523e36d466b1ced64b85c84"><div class="ttname"><a href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">rapidjson::SizeType</a></div><div class="ttdeci">unsigned SizeType</div><div class="ttdoc">Size type (for string lengths, array sizes, etc.)</div><div class="ttdef"><b>Definition:</b> rapidjson.h:415</div></div> <div class="ttc" id="astructrapidjson_1_1_writer_1_1_level_html"><div class="ttname"><a href="structrapidjson_1_1_writer_1_1_level.html">rapidjson::Writer::Level</a></div><div class="ttdoc">Information for each nested level</div><div class="ttdef"><b>Definition:</b> writer.h:290</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:419</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_gabeba18d612187bad2ac62aed9276d47c"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#gabeba18d612187bad2ac62aed9276d47c">RAPIDJSON_ASSERT</a></div><div class="ttdeci">#define RAPIDJSON_ASSERT(x)</div><div class="ttdoc">Assertion.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:437</div></div> <div class="ttc" id="astructrapidjson_1_1_writer_1_1_level_html_a5d17bdfa9ded5de72f5f91175cc3e36b"><div class="ttname"><a href="structrapidjson_1_1_writer_1_1_level.html#a5d17bdfa9ded5de72f5f91175cc3e36b">rapidjson::Writer::Level::valueCount</a></div><div class="ttdeci">size_t valueCount</div><div class="ttdoc">number of values in this level</div><div class="ttdef"><b>Definition:</b> writer.h:292</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:712</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a058c622e1e7d59419ae58b895cbce468">rapidjson::kArrayType</a></div><div class="ttdoc">array</div><div class="ttdef"><b>Definition:</b> rapidjson.h:734</div></div> <div class="ttc" id="anamespacerapidjson_html_a0a774dcffe8ae07686f459ae017d2f20"><div class="ttname"><a href="namespacerapidjson.html#a0a774dcffe8ae07686f459ae017d2f20">rapidjson::PutUnsafe</a></div><div class="ttdeci">void PutUnsafe(Stream &stream, typename Stream::Ch c)</div><div class="ttdoc">Write character to a stream, presuming buffer is reserved.</div><div class="ttdef"><b>Definition:</b> stream.h:91</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:708</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4a952871e4326b527154fc8aac1ac1f6ff">rapidjson::kNullType</a></div><div class="ttdoc">null</div><div class="ttdef"><b>Definition:</b> rapidjson.h:730</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a5b5ca665afdfa828a74ae5755c67a226">rapidjson::kWriteDefaultFlags</a></div><div class="ttdoc">Default write flags. Can be customized by defining RAPIDJSON_WRITE_DEFAULT_FLAGS</div><div class="ttdef"><b>Definition:</b> writer.h:70</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a98a421c806b456688874511f64add1f2"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a98a421c806b456688874511f64add1f2">rapidjson::Writer::Writer</a></div><div class="ttdeci">Writer(OutputStream &os, StackAllocator *stackAllocator=0, size_t levelDepth=kDefaultLevelDepth)</div><div class="ttdoc">Constructor</div><div class="ttdef"><b>Definition:</b> writer.h:102</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:713</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4ad6379da3dc04b83a591992bfb9fabba7">rapidjson::kStringType</a></div><div class="ttdoc">string</div><div class="ttdef"><b>Definition:</b> rapidjson.h:735</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html"><div class="ttname"><a href="classrapidjson_1_1_writer.html">rapidjson::Writer</a></div><div class="ttdoc">JSON writer</div><div class="ttdef"><b>Definition:</b> fwd.h:95</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a8acb89b2bbb1e5f384e6076b65044dbe"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a8acb89b2bbb1e5f384e6076b65044dbe">rapidjson::Writer::RawValue</a></div><div class="ttdeci">bool RawValue(const Ch *json, size_t length, Type type)</div><div class="ttdoc">Write a raw JSON value.</div><div class="ttdef"><b>Definition:</b> writer.h:272</div></div> <div class="ttc" id="astructrapidjson_1_1_writer_1_1_level_html_a59255e3b1d371161f7c894503cfd6bec"><div class="ttname"><a href="structrapidjson_1_1_writer_1_1_level.html#a59255e3b1d371161f7c894503cfd6bec">rapidjson::Writer::Level::inArray</a></div><div class="ttdeci">bool inArray</div><div class="ttdoc">true if in array, otherwise in object</div><div class="ttdef"><b>Definition:</b> writer.h:293</div></div> <div class="ttc" id="anamespacerapidjson_html_a820f77efccfbb749bd15fe4822d2c740"><div class="ttname"><a href="namespacerapidjson.html#a820f77efccfbb749bd15fe4822d2c740">rapidjson::PutReserve</a></div><div class="ttdeci">void PutReserve(Stream &stream, size_t count)</div><div class="ttdoc">Reserve n characters for writing to a stream.</div><div class="ttdef"><b>Definition:</b> stream.h:84</div></div> -<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:714</div></div> +<div class="ttc" id="anamespacerapidjson_html_ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a"><div class="ttname"><a href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4abe572cb44ce198e467ccf9d63d50d82a">rapidjson::kNumberType</a></div><div class="ttdoc">number</div><div class="ttdef"><b>Definition:</b> rapidjson.h:736</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a849e2b675a2b868699a14d45c7396f24"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a849e2b675a2b868699a14d45c7396f24">rapidjson::Writer::String</a></div><div class="ttdeci">bool String(const Ch *const &str)</div><div class="ttdoc">Simpler but slower overload.</div><div class="ttdef"><b>Definition:</b> writer.h:259</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_a72cefd18d176bc12a53adb3185c51ca7"><div class="ttname"><a href="classrapidjson_1_1_writer.html#a72cefd18d176bc12a53adb3185c51ca7">rapidjson::Writer::Flush</a></div><div class="ttdeci">void Flush()</div><div class="ttdoc">Flush the output stream.</div><div class="ttdef"><b>Definition:</b> writer.h:282</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:476</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga5dc14176a9e71ace282404b0bcda57a1"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga5dc14176a9e71ace282404b0bcda57a1">RAPIDJSON_LIKELY</a></div><div class="ttdeci">#define RAPIDJSON_LIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with high probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:494</div></div> <div class="ttc" id="aclassrapidjson_1_1_writer_html_ac4026d3f14b80d6d7fc10004b1972722"><div class="ttname"><a href="classrapidjson_1_1_writer.html#ac4026d3f14b80d6d7fc10004b1972722">rapidjson::Writer::Reset</a></div><div class="ttdeci">void Reset(OutputStream &os)</div><div class="ttdoc">Reset the writer with a new stream.</div><div class="ttdef"><b>Definition:</b> writer.h:134</div></div> <div class="ttc" id="anamespacerapidjson_html_ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39"><div class="ttname"><a href="namespacerapidjson.html#ad28b1de6aee37e92fc31792dd6dd6b19a3adbca1d31ad845ff4e9d742280cce39">rapidjson::kWriteNanAndInfFlag</a></div><div class="ttdoc">Allow writing of Infinity, -Infinity and NaN.</div><div class="ttdef"><b>Definition:</b> writer.h:69</div></div> -<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:489</div></div> +<div class="ttc" id="agroup___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g_html_ga6a2b1695c13e77ae425e3cbac980ccb5"><div class="ttname"><a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga6a2b1695c13e77ae425e3cbac980ccb5">RAPIDJSON_UNLIKELY</a></div><div class="ttdeci">#define RAPIDJSON_UNLIKELY(x)</div><div class="ttdoc">Compiler branching hint for expression with low probability to be true.</div><div class="ttdef"><b>Definition:</b> rapidjson.h:507</div></div> <!-- HTML footer for doxygen 1.8.7--> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> |