blob: 61171933d7dc39eace63040c75ed6be0d8e66022 [file] [log] [blame]
<!-- 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: include/rapidjson/reader.h File 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&amp;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&amp;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&amp;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&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('reader_8h.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> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">reader.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;allocators.h&quot;</code><br />
<code>#include &quot;stream.h&quot;</code><br />
<code>#include &quot;encodedstream.h&quot;</code><br />
<code>#include &quot;internal/clzll.h&quot;</code><br />
<code>#include &quot;internal/meta.h&quot;</code><br />
<code>#include &quot;internal/stack.h&quot;</code><br />
<code>#include &quot;internal/strtod.h&quot;</code><br />
<code>#include &lt;limits&gt;</code><br />
<code>#include &quot;<a class="el" href="error_8h_source.html">error/error.h</a>&quot;</code><br />
</div>
<p><a href="reader_8h_source.html">Go to the source code of this file.</a></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">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrapidjson_1_1_base_reader_handler.html">rapidjson::BaseReaderHandler&lt; Encoding, Derived &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default implementation of <a class="el" href="classrapidjson_1_1_handler.html" title="Concept for receiving events from GenericReader upon parsing. The functions return true if no error o...">Handler</a>. <a href="structrapidjson_1_1_base_reader_handler.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classrapidjson_1_1_generic_reader.html">rapidjson::GenericReader&lt; SourceEncoding, TargetEncoding, StackAllocator &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SAX-style JSON parser. Use <a class="el" href="md_doc_sax.html#Reader">Reader</a> 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_reader.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacerapidjson"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacerapidjson.html">rapidjson</a></td></tr>
<tr class="memdesc:namespacerapidjson"><td class="mdescLeft">&#160;</td><td class="mdescRight">main RapidJSON namespace <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga7f8c4265b2edda78568ae3338aaf1461"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7f8c4265b2edda78568ae3338aaf1461">RAPIDJSON_PARSE_ERROR_NORETURN</a>(parseErrorCode, offset)</td></tr>
<tr class="memdesc:ga7f8c4265b2edda78568ae3338aaf1461"><td class="mdescLeft">&#160;</td><td class="mdescRight">Macro to indicate a parse error. <a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#ga7f8c4265b2edda78568ae3338aaf1461">More...</a><br /></td></tr>
<tr class="separator:ga7f8c4265b2edda78568ae3338aaf1461"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3689840fa6e89a241313f33b602f865"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865">RAPIDJSON_PARSE_ERROR</a>(parseErrorCode, offset)</td></tr>
<tr class="memdesc:gae3689840fa6e89a241313f33b602f865"><td class="mdescLeft">&#160;</td><td class="mdescRight">(Internal) macro to indicate and handle a parse error. <a href="group___r_a_p_i_d_j_s_o_n___e_r_r_o_r_s.html#gae3689840fa6e89a241313f33b602f865">More...</a><br /></td></tr>
<tr class="separator:gae3689840fa6e89a241313f33b602f865"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga77005e892e6601599beaf421b0395c31"><td class="memItemLeft" align="right" valign="top">#define&#160;</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#ga77005e892e6601599beaf421b0395c31">RAPIDJSON_PARSE_DEFAULT_FLAGS</a>&#160;&#160;&#160;kParseNoFlags</td></tr>
<tr class="memdesc:ga77005e892e6601599beaf421b0395c31"><td class="mdescLeft">&#160;</td><td class="mdescRight">User-defined kParseDefaultFlags definition. <a href="group___r_a_p_i_d_j_s_o_n___c_o_n_f_i_g.html#ga77005e892e6601599beaf421b0395c31">More...</a><br /></td></tr>
<tr class="separator:ga77005e892e6601599beaf421b0395c31"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a81379eb4e94a0386d71d15fda882ebc9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9">rapidjson::ParseFlag</a> { <br />
&#160;&#160;<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af2c7fa21e9e7656e467bd71079ac8fb0">rapidjson::kParseNoFlags</a> = 0,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a02748971d6ea0c5e22c69b8aa7f344ea">rapidjson::kParseInsituFlag</a> = 1,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a3df81f75479da8e052393f92cbec394b">rapidjson::kParseValidateEncodingFlag</a> = 2,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a7923686c8bdb7614699f1fb1bb615bb2">rapidjson::kParseIterativeFlag</a> = 4,
<br />
&#160;&#160;<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af84c60868704433b80aa51a62e042bb1">rapidjson::kParseStopWhenDoneFlag</a> = 8,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9adf80892cdfa076b2d1a7dd9530e15cb0">rapidjson::kParseFullPrecisionFlag</a> = 16,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9ab5d719b36aac626135d5d622d0d837c1">rapidjson::kParseCommentsFlag</a> = 32,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a13981c0b803803f59d7a01aef3dfc987">rapidjson::kParseNumbersAsStringsFlag</a> = 64,
<br />
&#160;&#160;<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9af8b8470221dbc6046a40ff31d758ceec">rapidjson::kParseTrailingCommasFlag</a> = 128,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a857894ab51cafa62956e9c9f0dafc4d8">rapidjson::kParseNanAndInfFlag</a> = 256,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a9d0cd4c136483497f32f4af366b12d63">rapidjson::kParseEscapedApostropheFlag</a> = 512,
<a class="el" href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9a5640cb00db7814b7f22be3683dda9835">rapidjson::kParseDefaultFlags</a> = RAPIDJSON_PARSE_DEFAULT_FLAGS
<br />
}</td></tr>
<tr class="memdesc:a81379eb4e94a0386d71d15fda882ebc9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Combination of parseFlags. <a href="namespacerapidjson.html#a81379eb4e94a0386d71d15fda882ebc9">More...</a><br /></td></tr>
<tr class="separator:a81379eb4e94a0386d71d15fda882ebc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a6efb0f4d2a6f81477a59718d42e9464a"><td class="memTemplParams" colspan="2">template&lt;typename InputStream &gt; </td></tr>
<tr class="memitem:a6efb0f4d2a6f81477a59718d42e9464a"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a">rapidjson::SkipWhitespace</a> (InputStream &amp;is)</td></tr>
<tr class="memdesc:a6efb0f4d2a6f81477a59718d42e9464a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Skip the JSON white spaces in a stream. <a href="namespacerapidjson.html#a6efb0f4d2a6f81477a59718d42e9464a">More...</a><br /></td></tr>
<tr class="separator:a6efb0f4d2a6f81477a59718d42e9464a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a946a04b733bc148c13e7b3b0721cabcc"><td class="memItemLeft" align="right" valign="top"><a id="a946a04b733bc148c13e7b3b0721cabcc"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><b>rapidjson::SkipWhitespace</b> (const char *p, const char *end)</td></tr>
<tr class="separator:a946a04b733bc148c13e7b3b0721cabcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3caa6f393c9940e6525d5f1c21ed9ea2"><td class="memTemplParams" colspan="2"><a id="a3caa6f393c9940e6525d5f1c21ed9ea2"></a>
template&lt;&gt; </td></tr>
<tr class="memitem:a3caa6f393c9940e6525d5f1c21ed9ea2"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerapidjson.html#a3caa6f393c9940e6525d5f1c21ed9ea2">rapidjson::SkipWhitespace</a> (InsituStringStream &amp;is)</td></tr>
<tr class="memdesc:a3caa6f393c9940e6525d5f1c21ed9ea2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template function specialization for InsituStringStream. <br /></td></tr>
<tr class="separator:a3caa6f393c9940e6525d5f1c21ed9ea2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a791735c27e073a70d720c2775ddf9568"><td class="memTemplParams" colspan="2"><a id="a791735c27e073a70d720c2775ddf9568"></a>
template&lt;&gt; </td></tr>
<tr class="memitem:a791735c27e073a70d720c2775ddf9568"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacerapidjson.html#a791735c27e073a70d720c2775ddf9568">rapidjson::SkipWhitespace</a> (StringStream &amp;is)</td></tr>
<tr class="memdesc:a791735c27e073a70d720c2775ddf9568"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template function specialization for StringStream. <br /></td></tr>
<tr class="separator:a791735c27e073a70d720c2775ddf9568"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bb4c8ff395f8962f7df38a5467ee2ed"><td class="memTemplParams" colspan="2"><a id="a6bb4c8ff395f8962f7df38a5467ee2ed"></a>
template&lt;&gt; </td></tr>
<tr class="memitem:a6bb4c8ff395f8962f7df38a5467ee2ed"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>rapidjson::SkipWhitespace</b> (EncodedInputStream&lt; UTF8&lt;&gt;, MemoryStream &gt; &amp;is)</td></tr>
<tr class="separator:a6bb4c8ff395f8962f7df38a5467ee2ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- 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="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_32fb88e4d38e67d524aa70efbc36f66b.html">rapidjson</a></li><li class="navelem"><a class="el" href="reader_8h.html">reader.h</a></li>
</ul>
</div>
</body>
</html>