| <!-- HTML header for doxygen 1.8.7--> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> |
| <meta http-equiv="X-UA-Compatible" content="IE=9"/> |
| <meta name="generator" content="Doxygen 1.8.16"/> |
| <title>RapidJSON: rapidjson::GenericPointer< ValueType, Allocator > Class Template Reference</title> |
| <link href="tabs.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="jquery.js"></script> |
| <script type="text/javascript" src="dynsections.js"></script> |
| <link href="navtree.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="resize.js"></script> |
| <script type="text/javascript" src="navtreedata.js"></script> |
| <script type="text/javascript" src="navtree.js"></script> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(document).ready(initResizable); |
| /* @license-end */</script> |
| <link href="search/search.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="search/searchdata.js"></script> |
| <script type="text/javascript" src="search/search.js"></script> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(document).ready(function() { init_search(); }); |
| /* @license-end */ |
| </script> |
| <link href="doxygen.css" rel="stylesheet" type="text/css" /> |
| <link href="doxygenextra.css" rel="stylesheet" type="text/css"/> |
| </head> |
| <body> |
| <div id="top"><!-- do not remove this div, it is closed by doxygen! --> |
| <div id="topbanner"><a href="https://github.com/Tencent/rapidjson" title="RapidJSON GitHub"><i class="githublogo"></i></a></div> |
| <div id="MSearchBox" class="MSearchBoxInactive"> |
| <span class="left"> |
| <img id="MSearchSelect" src="search/mag_sel.png" |
| onmouseover="return searchBox.OnSearchSelectShow()" |
| onmouseout="return searchBox.OnSearchSelectHide()" |
| alt=""/> |
| <input type="text" id="MSearchField" value="Search" accesskey="S" |
| onfocus="searchBox.OnSearchFieldFocus(true)" |
| onblur="searchBox.OnSearchFieldFocus(false)" |
| onkeyup="searchBox.OnSearchFieldChange(event)"/> |
| </span><span class="right"> |
| <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> |
| </span> |
| </div> |
| <!-- end header part --> |
| <!-- Generated by Doxygen 1.8.16 --> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| var searchBox = new SearchBox("searchBox", "search",false,'Search'); |
| /* @license-end */ |
| </script> |
| </div><!-- top --> |
| <div id="side-nav" class="ui-resizable side-nav-resizable"> |
| <div id="nav-tree"> |
| <div id="nav-tree-contents"> |
| <div id="nav-sync" class="sync"></div> |
| </div> |
| </div> |
| <div id="splitbar" style="-moz-user-select:none;" |
| class="ui-resizable-handle"> |
| </div> |
| </div> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(document).ready(function(){initNavTree('classrapidjson_1_1_generic_pointer.html','');}); |
| /* @license-end */ |
| </script> |
| <div id="doc-content"> |
| <!-- window showing the filter options --> |
| <div id="MSearchSelectWindow" |
| onmouseover="return searchBox.OnSearchSelectShow()" |
| onmouseout="return searchBox.OnSearchSelectHide()" |
| onkeydown="return searchBox.OnSearchSelectKey(event)"> |
| </div> |
| |
| <!-- iframe showing the search results (closed by default) --> |
| <div id="MSearchResultsWindow"> |
| <iframe src="javascript:void(0)" frameborder="0" |
| name="MSearchResults" id="MSearchResults"> |
| </iframe> |
| </div> |
| |
| <div class="header"> |
| <div class="summary"> |
| <a href="#nested-classes">Classes</a> | |
| <a href="#pub-types">Public Types</a> | |
| <a href="classrapidjson_1_1_generic_pointer-members.html">List of all members</a> </div> |
| <div class="headertitle"> |
| <div class="title">rapidjson::GenericPointer< ValueType, Allocator > Class Template Reference</div> </div> |
| </div><!--header--> |
| <div class="contents"> |
| |
| <p>Represents a JSON Pointer. Use Pointer for <a class="el" href="structrapidjson_1_1_u_t_f8.html" title="UTF-8 encoding.">UTF8</a> encoding and default allocator. |
| <a href="classrapidjson_1_1_generic_pointer.html#details">More...</a></p> |
| |
| <p><code>#include <<a class="el" href="pointer_8h_source.html">pointer.h</a>></code></p> |
| <table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> |
| Classes</h2></td></tr> |
| <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html">PercentEncodeStream</a></td></tr> |
| <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A helper stream to encode character (UTF-8 code unit) into percent-encoded sequence. <a href="classrapidjson_1_1_generic_pointer_1_1_percent_encode_stream.html#details">More...</a><br /></td></tr> |
| <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html">Token</a></td></tr> |
| <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A token is the basic units of internal representation. <a href="structrapidjson_1_1_generic_pointer_1_1_token.html#details">More...</a><br /></td></tr> |
| <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a> |
| Public Types</h2></td></tr> |
| <tr class="memitem:a399790c5fe8076d91a58c621c0c2a79e"><td class="memItemLeft" align="right" valign="top"><a id="a399790c5fe8076d91a58c621c0c2a79e"></a> |
| typedef ValueType::EncodingType </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a399790c5fe8076d91a58c621c0c2a79e">EncodingType</a></td></tr> |
| <tr class="memdesc:a399790c5fe8076d91a58c621c0c2a79e"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="classrapidjson_1_1_encoding.html" title="Concept for encoding of Unicode characters.">Encoding</a> type from Value. <br /></td></tr> |
| <tr class="separator:a399790c5fe8076d91a58c621c0c2a79e"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a850f78846c5548565f8395be5f3427b7"><td class="memItemLeft" align="right" valign="top"><a id="a850f78846c5548565f8395be5f3427b7"></a> |
| typedef ValueType::Ch </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a></td></tr> |
| <tr class="memdesc:a850f78846c5548565f8395be5f3427b7"><td class="mdescLeft"> </td><td class="mdescRight">Character type from Value. <br /></td></tr> |
| <tr class="separator:a850f78846c5548565f8395be5f3427b7"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a> |
| Constructors and destructor.</h2></td></tr> |
| <tr class="memitem:aa077ce171ea25cf501c12f2d5df7f248"><td class="memItemLeft" align="right" valign="top"><a id="aa077ce171ea25cf501c12f2d5df7f248"></a> |
|  </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#aa077ce171ea25cf501c12f2d5df7f248">GenericPointer</a> (<a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> *allocator=0)</td></tr> |
| <tr class="memdesc:aa077ce171ea25cf501c12f2d5df7f248"><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <br /></td></tr> |
| <tr class="separator:aa077ce171ea25cf501c12f2d5df7f248"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a8f831aae14afc493a82b5fb6aa9c3c43"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a8f831aae14afc493a82b5fb6aa9c3c43">GenericPointer</a> (const <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> *source, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> *allocator=0)</td></tr> |
| <tr class="memdesc:a8f831aae14afc493a82b5fb6aa9c3c43"><td class="mdescLeft"> </td><td class="mdescRight">Constructor that parses a string or URI fragment representation. <a href="classrapidjson_1_1_generic_pointer.html#a8f831aae14afc493a82b5fb6aa9c3c43">More...</a><br /></td></tr> |
| <tr class="separator:a8f831aae14afc493a82b5fb6aa9c3c43"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aeefcd60e5ad37d80ec43f5315ae84809"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#aeefcd60e5ad37d80ec43f5315ae84809">GenericPointer</a> (const std::basic_string< <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> > &source, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> *allocator=0)</td></tr> |
| <tr class="memdesc:aeefcd60e5ad37d80ec43f5315ae84809"><td class="mdescLeft"> </td><td class="mdescRight">Constructor that parses a string or URI fragment representation. <a href="classrapidjson_1_1_generic_pointer.html#aeefcd60e5ad37d80ec43f5315ae84809">More...</a><br /></td></tr> |
| <tr class="separator:aeefcd60e5ad37d80ec43f5315ae84809"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a00ad17ea227d2556404df7cc64c6aeb5"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a00ad17ea227d2556404df7cc64c6aeb5">GenericPointer</a> (const <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> *source, size_t length, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> *allocator=0)</td></tr> |
| <tr class="memdesc:a00ad17ea227d2556404df7cc64c6aeb5"><td class="mdescLeft"> </td><td class="mdescRight">Constructor that parses a string or URI fragment representation, with length of the source string. <a href="classrapidjson_1_1_generic_pointer.html#a00ad17ea227d2556404df7cc64c6aeb5">More...</a><br /></td></tr> |
| <tr class="separator:a00ad17ea227d2556404df7cc64c6aeb5"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a6df9f6a01d1b5945811055e1cf8aead6"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a6df9f6a01d1b5945811055e1cf8aead6">GenericPointer</a> (const <a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html">Token</a> *tokens, size_t tokenCount)</td></tr> |
| <tr class="memdesc:a6df9f6a01d1b5945811055e1cf8aead6"><td class="mdescLeft"> </td><td class="mdescRight">Constructor with user-supplied tokens. <a href="classrapidjson_1_1_generic_pointer.html#a6df9f6a01d1b5945811055e1cf8aead6">More...</a><br /></td></tr> |
| <tr class="separator:a6df9f6a01d1b5945811055e1cf8aead6"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ae071847ed3e7389f5b256d26fcc8fd62"><td class="memItemLeft" align="right" valign="top"><a id="ae071847ed3e7389f5b256d26fcc8fd62"></a> |
|  </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#ae071847ed3e7389f5b256d26fcc8fd62">GenericPointer</a> (const <a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> &rhs)</td></tr> |
| <tr class="memdesc:ae071847ed3e7389f5b256d26fcc8fd62"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <br /></td></tr> |
| <tr class="separator:ae071847ed3e7389f5b256d26fcc8fd62"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:afedfcaac36fa589a46667825d3d0b763"><td class="memItemLeft" align="right" valign="top"><a id="afedfcaac36fa589a46667825d3d0b763"></a> |
|  </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#afedfcaac36fa589a46667825d3d0b763">GenericPointer</a> (const <a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> &rhs, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> *allocator)</td></tr> |
| <tr class="memdesc:afedfcaac36fa589a46667825d3d0b763"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <br /></td></tr> |
| <tr class="separator:afedfcaac36fa589a46667825d3d0b763"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0e144b9956a5272c13ceff3b9306e748"><td class="memItemLeft" align="right" valign="top"><a id="a0e144b9956a5272c13ceff3b9306e748"></a> |
|  </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a0e144b9956a5272c13ceff3b9306e748">~GenericPointer</a> ()</td></tr> |
| <tr class="memdesc:a0e144b9956a5272c13ceff3b9306e748"><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <br /></td></tr> |
| <tr class="separator:a0e144b9956a5272c13ceff3b9306e748"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a23194bb6ce6c07c78981344fe80ac3a6"><td class="memItemLeft" align="right" valign="top"><a id="a23194bb6ce6c07c78981344fe80ac3a6"></a> |
| <a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a23194bb6ce6c07c78981344fe80ac3a6">operator=</a> (const <a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> &rhs)</td></tr> |
| <tr class="memdesc:a23194bb6ce6c07c78981344fe80ac3a6"><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator. <br /></td></tr> |
| <tr class="separator:a23194bb6ce6c07c78981344fe80ac3a6"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a91762c063f390c1463eb772dfd1b822b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b">Swap</a> (<a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> &other) RAPIDJSON_NOEXCEPT</td></tr> |
| <tr class="memdesc:a91762c063f390c1463eb772dfd1b822b"><td class="mdescLeft"> </td><td class="mdescRight">Swap the content of this pointer with an other. <a href="classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b">More...</a><br /></td></tr> |
| <tr class="separator:a91762c063f390c1463eb772dfd1b822b"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a249c61b5d4bed20c3f8972c57f46a937"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937">swap</a> (<a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> &a, <a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> &b) RAPIDJSON_NOEXCEPT</td></tr> |
| <tr class="memdesc:a249c61b5d4bed20c3f8972c57f46a937"><td class="mdescLeft"> </td><td class="mdescRight">free-standing swap function helper <a href="classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937">More...</a><br /></td></tr> |
| <tr class="separator:a249c61b5d4bed20c3f8972c57f46a937"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a> |
| Append token</h2></td></tr> |
| <tr class="memitem:a3e671447cf032271956fa984aad23ef7"><td class="memItemLeft" align="right" valign="top"><a id="a3e671447cf032271956fa984aad23ef7"></a> |
| <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> * </td><td class="memItemRight" valign="bottom"><b>allocator</b></td></tr> |
| <tr class="separator:a3e671447cf032271956fa984aad23ef7"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a303e16e7d6c391a2afe8669744f79897"><td class="memItemLeft" align="right" valign="top"><a id="a303e16e7d6c391a2afe8669744f79897"></a> |
| <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a303e16e7d6c391a2afe8669744f79897">allocator_</a></td></tr> |
| <tr class="memdesc:a303e16e7d6c391a2afe8669744f79897"><td class="mdescLeft"> </td><td class="mdescRight">The current allocator. It is either user-supplied or equal to ownAllocator_. <br /></td></tr> |
| <tr class="separator:a303e16e7d6c391a2afe8669744f79897"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a8798d7fdb02cd5b95bf032760aed8445"><td class="memItemLeft" align="right" valign="top"><a id="a8798d7fdb02cd5b95bf032760aed8445"></a> |
| <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a8798d7fdb02cd5b95bf032760aed8445">ownAllocator_</a></td></tr> |
| <tr class="memdesc:a8798d7fdb02cd5b95bf032760aed8445"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> owned by this Pointer. <br /></td></tr> |
| <tr class="separator:a8798d7fdb02cd5b95bf032760aed8445"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a38f23dc869001b53149804e563f6a465"><td class="memItemLeft" align="right" valign="top"><a id="a38f23dc869001b53149804e563f6a465"></a> |
| <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a38f23dc869001b53149804e563f6a465">nameBuffer_</a></td></tr> |
| <tr class="memdesc:a38f23dc869001b53149804e563f6a465"><td class="mdescLeft"> </td><td class="mdescRight">A buffer containing all names in tokens. <br /></td></tr> |
| <tr class="separator:a38f23dc869001b53149804e563f6a465"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad76284430e5e54ed22a4c93dc59e00c7"><td class="memItemLeft" align="right" valign="top"><a id="ad76284430e5e54ed22a4c93dc59e00c7"></a> |
| <a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html">Token</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#ad76284430e5e54ed22a4c93dc59e00c7">tokens_</a></td></tr> |
| <tr class="memdesc:ad76284430e5e54ed22a4c93dc59e00c7"><td class="mdescLeft"> </td><td class="mdescRight">A list of tokens. <br /></td></tr> |
| <tr class="separator:ad76284430e5e54ed22a4c93dc59e00c7"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:acb657759c16fa63da15186db8c29122b"><td class="memItemLeft" align="right" valign="top"><a id="acb657759c16fa63da15186db8c29122b"></a> |
| size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#acb657759c16fa63da15186db8c29122b">tokenCount_</a></td></tr> |
| <tr class="memdesc:acb657759c16fa63da15186db8c29122b"><td class="mdescLeft"> </td><td class="mdescRight">Number of tokens in tokens_. <br /></td></tr> |
| <tr class="separator:acb657759c16fa63da15186db8c29122b"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a28e0ba01bc383d2fe7d54a450e35cd7a"><td class="memItemLeft" align="right" valign="top"><a id="a28e0ba01bc383d2fe7d54a450e35cd7a"></a> |
| size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a28e0ba01bc383d2fe7d54a450e35cd7a">parseErrorOffset_</a></td></tr> |
| <tr class="memdesc:a28e0ba01bc383d2fe7d54a450e35cd7a"><td class="mdescLeft"> </td><td class="mdescRight">Offset in code unit when parsing fail. <br /></td></tr> |
| <tr class="separator:a28e0ba01bc383d2fe7d54a450e35cd7a"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a20d76ef128abbdd0acd87d2f1fb0ae34"><td class="memItemLeft" align="right" valign="top"><a id="a20d76ef128abbdd0acd87d2f1fb0ae34"></a> |
| <a class="el" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gade540ee4cc2a416c23b8ee2c12393c7b">PointerParseErrorCode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a20d76ef128abbdd0acd87d2f1fb0ae34">parseErrorCode_</a></td></tr> |
| <tr class="memdesc:a20d76ef128abbdd0acd87d2f1fb0ae34"><td class="mdescLeft"> </td><td class="mdescRight">Parsing error code. <br /></td></tr> |
| <tr class="separator:a20d76ef128abbdd0acd87d2f1fb0ae34"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a7cb5eda2af1722e52efa591c4103ebec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec">Append</a> (const <a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html">Token</a> &token, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> *allocator=0) const</td></tr> |
| <tr class="memdesc:a7cb5eda2af1722e52efa591c4103ebec"><td class="mdescLeft"> </td><td class="mdescRight">Append a token and return a new Pointer. <a href="classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec">More...</a><br /></td></tr> |
| <tr class="separator:a7cb5eda2af1722e52efa591c4103ebec"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a30f4eac82e9fded60dead3f7d1cb3941"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#a30f4eac82e9fded60dead3f7d1cb3941">Append</a> (const <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> *name, <a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> length, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> *allocator=0) const</td></tr> |
| <tr class="memdesc:a30f4eac82e9fded60dead3f7d1cb3941"><td class="mdescLeft"> </td><td class="mdescRight">Append a name token with length, and return a new Pointer. <a href="classrapidjson_1_1_generic_pointer.html#a30f4eac82e9fded60dead3f7d1cb3941">More...</a><br /></td></tr> |
| <tr class="separator:a30f4eac82e9fded60dead3f7d1cb3941"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aa881255d7b268d819d0f2cc27a4fff81"><td class="memTemplParams" colspan="2">template<typename T > </td></tr> |
| <tr class="memitem:aa881255d7b268d819d0f2cc27a4fff81"><td class="memTemplItemLeft" align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81">RAPIDJSON_DISABLEIF_RETURN</a> ((internal::NotExpr< internal::IsSame< typename internal::RemoveConst< T >::<a class="el" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a>, <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> > >),(<a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a>)) <a class="el" href="classrapidjson_1_1_generic_pointer.html#a7cb5eda2af1722e52efa591c4103ebec">Append</a>(T *name</td></tr> |
| <tr class="memdesc:aa881255d7b268d819d0f2cc27a4fff81"><td class="mdescLeft"> </td><td class="mdescRight">Append a name token without length, and return a new Pointer. <a href="classrapidjson_1_1_generic_pointer.html#aa881255d7b268d819d0f2cc27a4fff81">More...</a><br /></td></tr> |
| <tr class="separator:aa881255d7b268d819d0f2cc27a4fff81"><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 ValueType, typename Allocator = CrtAllocator><br /> |
| class rapidjson::GenericPointer< ValueType, Allocator ></h3> |
| |
| <p>Represents a JSON Pointer. Use Pointer for <a class="el" href="structrapidjson_1_1_u_t_f8.html" title="UTF-8 encoding.">UTF8</a> encoding and default allocator. </p> |
| <p>This class implements RFC 6901 "JavaScript Object Notation (JSON) Pointer" (<a href="https://tools.ietf.org/html/rfc6901">https://tools.ietf.org/html/rfc6901</a>).</p> |
| <p>A JSON pointer is for identifying a specific value in a JSON document (<a class="el" href="classrapidjson_1_1_generic_document.html" title="A document for parsing JSON text as DOM.">GenericDocument</a>). It can simplify coding of DOM tree manipulation, because it can access multiple-level depth of DOM tree with single API call.</p> |
| <p>After it parses a string representation (e.g. "/foo/0" or URI fragment representation (e.g. "#/foo/0") into its internal representation (tokens), it can be used to resolve a specific value in multiple documents, or sub-tree of documents.</p> |
| <p>Contrary to <a class="el" href="classrapidjson_1_1_generic_value.html" title="Represents a JSON value. Use Value for UTF8 encoding and default allocator.">GenericValue</a>, Pointer can be copy constructed and copy assigned. Apart from assignment, a Pointer cannot be modified after construction.</p> |
| <p>Although Pointer is very convenient, please aware that constructing Pointer involves parsing and dynamic memory allocation. A special constructor with user- supplied tokens eliminates these.</p> |
| <p><a class="el" href="classrapidjson_1_1_generic_pointer.html" title="Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.">GenericPointer</a> depends on <a class="el" href="classrapidjson_1_1_generic_document.html" title="A document for parsing JSON text as DOM.">GenericDocument</a> and <a class="el" href="classrapidjson_1_1_generic_value.html" title="Represents a JSON value. Use Value for UTF8 encoding and default allocator.">GenericValue</a>.</p> |
| <dl class="tparams"><dt>Template Parameters</dt><dd> |
| <table class="tparams"> |
| <tr><td class="paramname">ValueType</td><td>The value type of the DOM tree. E.g. <a class="el" href="classrapidjson_1_1_generic_value.html" title="Represents a JSON value. Use Value for UTF8 encoding and default allocator.">GenericValue</a><UTF8<> > </td></tr> |
| <tr><td class="paramname"><a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a></td><td>The allocator type for allocating memory for internal representation.</td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section note"><dt>Note</dt><dd><a class="el" href="classrapidjson_1_1_generic_pointer.html" title="Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.">GenericPointer</a> uses same encoding of ValueType. However, <a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> of <a class="el" href="classrapidjson_1_1_generic_pointer.html" title="Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator.">GenericPointer</a> is independent of <a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> of Value. </dd></dl> |
| </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> |
| <a id="a8f831aae14afc493a82b5fb6aa9c3c43"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a8f831aae14afc493a82b5fb6aa9c3c43">◆ </a></span>GenericPointer() <span class="overload">[1/4]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >::<a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> * </td> |
| <td class="paramname"><em>source</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> * </td> |
| <td class="paramname"><em>allocator</em> = <code>0</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Constructor that parses a string or URI fragment representation. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">source</td><td>A null-terminated, string or URI fragment representation of JSON pointer. </td></tr> |
| <tr><td class="paramname">allocator</td><td>User supplied allocator for this pointer. If no allocator is provided, it creates a self-owned one. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <a id="aeefcd60e5ad37d80ec43f5315ae84809"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#aeefcd60e5ad37d80ec43f5315ae84809">◆ </a></span>GenericPointer() <span class="overload">[2/4]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >::<a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> </td> |
| <td>(</td> |
| <td class="paramtype">const std::basic_string< <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> > & </td> |
| <td class="paramname"><em>source</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> * </td> |
| <td class="paramname"><em>allocator</em> = <code>0</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Constructor that parses a string or URI fragment representation. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">source</td><td>A string or URI fragment representation of JSON pointer. </td></tr> |
| <tr><td class="paramname">allocator</td><td>User supplied allocator for this pointer. If no allocator is provided, it creates a self-owned one. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section note"><dt>Note</dt><dd>Requires the definition of the preprocessor symbol <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>. </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a00ad17ea227d2556404df7cc64c6aeb5"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a00ad17ea227d2556404df7cc64c6aeb5">◆ </a></span>GenericPointer() <span class="overload">[3/4]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >::<a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> * </td> |
| <td class="paramname"><em>source</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">size_t </td> |
| <td class="paramname"><em>length</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> * </td> |
| <td class="paramname"><em>allocator</em> = <code>0</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Constructor that parses a string or URI fragment representation, with length of the source string. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">source</td><td>A string or URI fragment representation of JSON pointer. </td></tr> |
| <tr><td class="paramname">length</td><td>Length of source. </td></tr> |
| <tr><td class="paramname">allocator</td><td>User supplied allocator for this pointer. If no allocator is provided, it creates a self-owned one. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section note"><dt>Note</dt><dd>Slightly faster than the overload without length. </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a6df9f6a01d1b5945811055e1cf8aead6"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a6df9f6a01d1b5945811055e1cf8aead6">◆ </a></span>GenericPointer() <span class="overload">[4/4]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >::<a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html">Token</a> * </td> |
| <td class="paramname"><em>tokens</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">size_t </td> |
| <td class="paramname"><em>tokenCount</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Constructor with user-supplied tokens. </p> |
| <p>This constructor let user supplies const array of tokens. This prevents the parsing process and eliminates allocation. This is preferred for memory constrained environments.</p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">tokens</td><td>An constant array of tokens representing the JSON pointer. </td></tr> |
| <tr><td class="paramname">tokenCount</td><td>Number of tokens.</td></tr> |
| </table> |
| </dd> |
| </dl> |
| <p><b>Example</b> </p><div class="fragment"><div class="line"><span class="preprocessor">#define NAME(s) { s, sizeof(s) / sizeof(s[0]) - 1, kPointerInvalidIndex }</span></div> |
| <div class="line"><span class="preprocessor">#define INDEX(i) { #i, sizeof(#i) - 1, i }</span></div> |
| <div class="line"> </div> |
| <div class="line"><span class="keyword">static</span> <span class="keyword">const</span> Pointer::Token kTokens[] = { NAME(<span class="stringliteral">"foo"</span>), INDEX(123) };</div> |
| <div class="line"><span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespacerapidjson.html#a080910f74d2f5046e6724280159cf374">Pointer</a> p(kTokens, <span class="keyword">sizeof</span>(kTokens) / <span class="keyword">sizeof</span>(kTokens[0]));</div> |
| <div class="line"><span class="comment">// Equivalent to static const Pointer p("/foo/123");</span></div> |
| <div class="line"> </div> |
| <div class="line"><span class="preprocessor">#undef NAME</span></div> |
| <div class="line"><span class="preprocessor">#undef INDEX</span></div> |
| </div><!-- fragment --> |
| </div> |
| </div> |
| <h2 class="groupheader">Member Function Documentation</h2> |
| <a id="a30f4eac82e9fded60dead3f7d1cb3941"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a30f4eac82e9fded60dead3f7d1cb3941">◆ </a></span>Append() <span class="overload">[1/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> <a class="el" href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >::Append </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> * </td> |
| <td class="paramname"><em>name</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="namespacerapidjson.html#a44eb33eaa523e36d466b1ced64b85c84">SizeType</a> </td> |
| <td class="paramname"><em>length</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> * </td> |
| <td class="paramname"><em>allocator</em> = <code>0</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Append a name token with length, and return a new Pointer. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">name</td><td>Name to be appended. </td></tr> |
| <tr><td class="paramname">length</td><td>Length of name. </td></tr> |
| <tr><td class="paramname">allocator</td><td><a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for the newly return Pointer. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>A new Pointer with appended token. </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a7cb5eda2af1722e52efa591c4103ebec"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a7cb5eda2af1722e52efa591c4103ebec">◆ </a></span>Append() <span class="overload">[2/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a> <a class="el" href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >::Append </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html">Token</a> & </td> |
| <td class="paramname"><em>token</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> * </td> |
| <td class="paramname"><em>allocator</em> = <code>0</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Append a token and return a new Pointer. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">token</td><td><a class="el" href="structrapidjson_1_1_generic_pointer_1_1_token.html" title="A token is the basic units of internal representation.">Token</a> to be appended. </td></tr> |
| <tr><td class="paramname">allocator</td><td><a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for the newly return Pointer. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>A new Pointer with appended token. </dd></dl> |
| |
| </div> |
| </div> |
| <a id="aa881255d7b268d819d0f2cc27a4fff81"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#aa881255d7b268d819d0f2cc27a4fff81">◆ </a></span>RAPIDJSON_DISABLEIF_RETURN()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <div class="memtemplate"> |
| template<typename T > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >::RAPIDJSON_DISABLEIF_RETURN </td> |
| <td>(</td> |
| <td class="paramtype">(internal::NotExpr< internal::IsSame< typename internal::RemoveConst< T >::<a class="el" href="namespacerapidjson.html#ae79a4751c1c460ff0de5ecc07874f3e4">Type</a>, <a class="el" href="classrapidjson_1_1_generic_pointer.html#a850f78846c5548565f8395be5f3427b7">Ch</a> > >) </td> |
| <td class="paramname">, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">(<a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >) </td> |
| <td class="paramname"> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Append a name token without length, and return a new Pointer. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">name</td><td>Name (const Ch*) to be appended. </td></tr> |
| <tr><td class="paramname">allocator</td><td><a class="el" href="classrapidjson_1_1_allocator.html" title="Concept for allocating, resizing and freeing memory block.">Allocator</a> for the newly return Pointer. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>A new Pointer with appended token. </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a91762c063f390c1463eb772dfd1b822b"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a91762c063f390c1463eb772dfd1b822b">◆ </a></span>Swap()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a>& <a class="el" href="classrapidjson_1_1_generic_pointer.html">rapidjson::GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> >::Swap </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> > & </td> |
| <td class="paramname"><em>other</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Swap the content of this pointer with an other. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">other</td><td>The pointer to swap with. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section note"><dt>Note</dt><dd>Constant complexity. </dd></dl> |
| |
| </div> |
| </div> |
| <h2 class="groupheader">Friends And Related Function Documentation</h2> |
| <a id="a249c61b5d4bed20c3f8972c57f46a937"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a249c61b5d4bed20c3f8972c57f46a937">◆ </a></span>swap</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename ValueType , typename Allocator = CrtAllocator> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void swap </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> > & </td> |
| <td class="paramname"><em>a</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a>< ValueType, <a class="el" href="classrapidjson_1_1_allocator.html">Allocator</a> > & </td> |
| <td class="paramname"><em>b</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>free-standing swap function helper </p> |
| <p>Helper function to enable support for common swap implementation pattern based on <code>std::swap:</code> </p><div class="fragment"><div class="line"><span class="keywordtype">void</span> <a class="code" href="classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937">swap</a>(MyClass& a, MyClass& b) {</div> |
| <div class="line"> <span class="keyword">using</span> std::swap;</div> |
| <div class="line"> <a class="code" href="classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937">swap</a>(a.pointer, b.pointer);</div> |
| <div class="line"> <span class="comment">// ...</span></div> |
| <div class="line">}</div> |
| </div><!-- fragment --> <dl class="section see"><dt>See also</dt><dd><a class="el" href="classrapidjson_1_1_generic_pointer.html#a91762c063f390c1463eb772dfd1b822b" title="Swap the content of this pointer with an other.">Swap()</a> </dd></dl> |
| |
| </div> |
| </div> |
| <hr/>The documentation for this class was generated from the following files:<ul> |
| <li>include/rapidjson/<a class="el" href="fwd_8h_source.html">fwd.h</a></li> |
| <li>include/rapidjson/<a class="el" href="pointer_8h_source.html">pointer.h</a></li> |
| </ul> |
| </div><!-- contents --> |
| </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="aclassrapidjson_1_1_generic_pointer_html_a249c61b5d4bed20c3f8972c57f46a937"><div class="ttname"><a href="classrapidjson_1_1_generic_pointer.html#a249c61b5d4bed20c3f8972c57f46a937">rapidjson::GenericPointer::swap</a></div><div class="ttdeci">friend void swap(GenericPointer &a, GenericPointer &b) RAPIDJSON_NOEXCEPT</div><div class="ttdoc">free-standing swap function helper</div><div class="ttdef"><b>Definition:</b> pointer.h:231</div></div> |
| <!-- HTML footer for doxygen 1.8.7--> |
| <!-- start footer part --> |
| <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> |
| <ul> |
| <li class="navelem"><a class="el" href="namespacerapidjson.html">rapidjson</a></li><li class="navelem"><a class="el" href="classrapidjson_1_1_generic_pointer.html">GenericPointer</a></li> |
| </ul> |
| </div> |
| </body> |
| </html> |