<html> <head> <title> JsonCpp - JSON data format manipulation library </title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="#ffffff"> <table width="100%"> <tr> <td width="40%" align="left" valign="center"> <a href="http://sourceforge.net/projects/jsoncpp/"> JsonCpp project page </a> </td> <td width="40%" align="right" valign="center"> <a href="http://jsoncpp.sourceforge.net">JsonCpp home page</a> </td> </tr> </table> <hr> <!-- Generated by Doxygen 1.8.3.1 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_558a3a6fe8f26971847c96e209994c71.html">lib_json</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#namespaces">Namespaces</a> | <a href="#define-members">Macros</a> | <a href="#func-members">Functions</a> | <a href="#var-members">Variables</a> </div> <div class="headertitle"> <div class="title">json_value.cpp File Reference</div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><code>#include <<a class="el" href="value_8h_source.html">json/value.h</a>></code><br/> <code>#include <<a class="el" href="writer_8h_source.html">json/writer.h</a>></code><br/> <code>#include "<a class="el" href="json__batchallocator_8h_source.html">json_batchallocator.h</a>"</code><br/> <code>#include <iostream></code><br/> <code>#include <utility></code><br/> <code>#include <stdexcept></code><br/> <code>#include <cstring></code><br/> <code>#include <cassert></code><br/> <code>#include <cstddef></code><br/> <code>#include "<a class="el" href="json__internalarray_8inl_source.html">json_internalarray.inl</a>"</code><br/> <code>#include "<a class="el" href="json__internalmap_8inl_source.html">json_internalmap.inl</a>"</code><br/> <code>#include "<a class="el" href="json__valueiterator_8inl_source.html">json_valueiterator.inl</a>"</code><br/> </div><div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"> <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for json_value.cpp:</div> <div id="dynsection-0-summary" class="dynsummary" style="display:block;"> </div> <div id="dynsection-0-content" class="dyncontent" style="display:none;"> <div class="center"><img src="json__value_8cpp__incl.png" border="0" usemap="#src_2lib__json_2json__value_8cpp" alt=""/></div> <map name="src_2lib__json_2json__value_8cpp" id="src_2lib__json_2json__value_8cpp"> <area shape="rect" id="node3" href="value_8h.html" title="json/value.h" alt="" coords="101,155,192,181"/><area shape="rect" id="node15" href="writer_8h.html" title="json/writer.h" alt="" coords="219,80,312,107"/><area shape="rect" id="node22" href="json__batchallocator_8h.html" title="json_batchallocator.h" alt="" coords="387,80,532,107"/><area shape="rect" id="node39" href="json__internalarray_8inl.html" title="json_internalarray.inl" alt="" coords="1004,80,1145,107"/><area shape="rect" id="node41" href="json__internalmap_8inl.html" title="json_internalmap.inl" alt="" coords="1170,80,1307,107"/><area shape="rect" id="node43" href="json__valueiterator_8inl.html" title="json_valueiterator.inl" alt="" coords="1332,80,1473,107"/><area shape="rect" id="node5" href="forwards_8h.html" title="forwards.h" alt="" coords="5,229,88,256"/><area shape="rect" id="node7" href="config_8h.html" title="config.h" alt="" coords="13,304,80,331"/></map> </div> </div> <p><a href="json__value_8cpp_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="namespaces"></a> Namespaces</h2></td></tr> <tr class="memitem:namespace_json"><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_json.html">Json</a></td></tr> <tr class="memdesc:namespace_json"><td class="mdescLeft"> </td><td class="mdescRight">JSON (JavaScript Object Notation). <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="define-members"></a> Macros</h2></td></tr> <tr class="memitem:aa5e619e3e9388f6376a344dd8462c9cc"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="json__value_8cpp.html#aa5e619e3e9388f6376a344dd8462c9cc">JSON_ASSERT_UNREACHABLE</a>   assert( false )</td></tr> <tr class="separator:aa5e619e3e9388f6376a344dd8462c9cc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a188941dcc789ccb6539c3d6f41405582"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="json__value_8cpp.html#a188941dcc789ccb6539c3d6f41405582">JSON_ASSERT</a>(condition)   assert( condition );</td></tr> <tr class="separator:a188941dcc789ccb6539c3d6f41405582"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a67007439f94bc6afc465923f56147ba1"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="json__value_8cpp.html#a67007439f94bc6afc465923f56147ba1">JSON_FAIL_MESSAGE</a>(message)   throw std::runtime_error( message );</td></tr> <tr class="separator:a67007439f94bc6afc465923f56147ba1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad7facdeeca0f495765e3b204c265eadb"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="json__value_8cpp.html#ad7facdeeca0f495765e3b204c265eadb">JSON_ASSERT_MESSAGE</a>(condition, message)   if (!( condition )) <a class="el" href="json__value_8cpp.html#a67007439f94bc6afc465923f56147ba1">JSON_FAIL_MESSAGE</a>( message )</td></tr> <tr class="separator:ad7facdeeca0f495765e3b204c265eadb"><td class="memSeparator" colspan="2"> </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:a9e2c18331f84669e6194dcfc124afcd2"><td class="memItemLeft" align="right" valign="top">static char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_json.html#a9e2c18331f84669e6194dcfc124afcd2">Json::duplicateStringValue</a> (const char *value, unsigned int length=unknown)</td></tr> <tr class="memdesc:a9e2c18331f84669e6194dcfc124afcd2"><td class="mdescLeft"> </td><td class="mdescRight">Duplicates the specified string value. <a href="#a9e2c18331f84669e6194dcfc124afcd2">More...</a><br/></td></tr> <tr class="separator:a9e2c18331f84669e6194dcfc124afcd2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acf8dd162c01e37846e129556c50e4037"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_json.html#acf8dd162c01e37846e129556c50e4037">Json::releaseStringValue</a> (char *value)</td></tr> <tr class="memdesc:acf8dd162c01e37846e129556c50e4037"><td class="mdescLeft"> </td><td class="mdescRight">Free the string duplicated by <a class="el" href="namespace_json.html#a9e2c18331f84669e6194dcfc124afcd2" title="Duplicates the specified string value.">duplicateStringValue()</a>. <a href="#acf8dd162c01e37846e129556c50e4037">More...</a><br/></td></tr> <tr class="separator:acf8dd162c01e37846e129556c50e4037"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a> Variables</h2></td></tr> <tr class="memitem:a54414e1e582b6a3769a61e049103fd11"><td class="memItemLeft" align="right" valign="top">static const unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_json.html#a54414e1e582b6a3769a61e049103fd11">Json::unknown</a> = (unsigned)-1</td></tr> <tr class="memdesc:a54414e1e582b6a3769a61e049103fd11"><td class="mdescLeft"> </td><td class="mdescRight">Unknown size marker. <a href="#a54414e1e582b6a3769a61e049103fd11">More...</a><br/></td></tr> <tr class="separator:a54414e1e582b6a3769a61e049103fd11"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Macro Definition Documentation</h2> <a class="anchor" id="a188941dcc789ccb6539c3d6f41405582"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define JSON_ASSERT</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">condition</td><td>)</td> <td>   assert( condition );</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="json__value_8cpp_source.html#l00024">24</a> of file <a class="el" href="json__value_8cpp_source.html">json_value.cpp</a>.</p> <p>Referenced by <a class="el" href="json__value_8cpp_source.html#l00650">Json::Value::asCString()</a>, <a class="el" href="json__value_8cpp_source.html#l01019">Json::Value::clear()</a>, <a class="el" href="json__value_8cpp_source.html#l01316">Json::Value::getMemberNames()</a>, <a class="el" href="json__value_8cpp_source.html#l01070">Json::Value::operator[]()</a>, <a class="el" href="json__value_8cpp_source.html#l01252">Json::Value::removeMember()</a>, and <a class="el" href="json__value_8cpp_source.html#l01044">Json::Value::resize()</a>.</p> </div> </div> <a class="anchor" id="ad7facdeeca0f495765e3b204c265eadb"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define JSON_ASSERT_MESSAGE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">condition, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">message </td> </tr> <tr> <td></td> <td>)</td> <td></td><td>   if (!( condition )) <a class="el" href="json__value_8cpp.html#a67007439f94bc6afc465923f56147ba1">JSON_FAIL_MESSAGE</a>( message )</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="json__value_8cpp_source.html#l00026">26</a> of file <a class="el" href="json__value_8cpp_source.html">json_value.cpp</a>.</p> <p>Referenced by <a class="el" href="json__value_8cpp_source.html#l00690">Json::Value::asInt()</a>, <a class="el" href="json__value_8cpp_source.html#l00751">Json::Value::asInt64()</a>, <a class="el" href="json__value_8cpp_source.html#l00719">Json::Value::asUInt()</a>, <a class="el" href="json__value_8cpp_source.html#l00779">Json::Value::asUInt64()</a>, <a class="el" href="json__value_8cpp_source.html#l00054">Json::duplicateStringValue()</a>, <a class="el" href="json__internalmap_8inl_source.html#l00434">Json::ValueInternalMap::unsafeAdd()</a>, and <a class="el" href="json__internalarray_8inl_source.html#l00259">Json::ValueInternalArray::ValueInternalArray()</a>.</p> </div> </div> <a class="anchor" id="aa5e619e3e9388f6376a344dd8462c9cc"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define JSON_ASSERT_UNREACHABLE   assert( false )</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="json__value_8cpp_source.html#l00023">23</a> of file <a class="el" href="json__value_8cpp_source.html">json_value.cpp</a>.</p> <p>Referenced by <a class="el" href="json__value_8cpp_source.html#l00888">Json::Value::asBool()</a>, <a class="el" href="json__value_8cpp_source.html#l00830">Json::Value::asDouble()</a>, <a class="el" href="json__value_8cpp_source.html#l00859">Json::Value::asFloat()</a>, <a class="el" href="json__value_8cpp_source.html#l00690">Json::Value::asInt()</a>, <a class="el" href="json__value_8cpp_source.html#l00751">Json::Value::asInt64()</a>, <a class="el" href="json__value_8cpp_source.html#l00658">Json::Value::asString()</a>, <a class="el" href="json__value_8cpp_source.html#l00719">Json::Value::asUInt()</a>, <a class="el" href="json__value_8cpp_source.html#l00779">Json::Value::asUInt64()</a>, <a class="el" href="json__value_8cpp_source.html#l00914">Json::Value::isConvertibleTo()</a>, <a class="el" href="json__value_8cpp_source.html#l00538">Json::Value::operator<()</a>, <a class="el" href="json__value_8cpp_source.html#l00600">Json::Value::operator==()</a>, <a class="el" href="json__value_8cpp_source.html#l00966">Json::Value::size()</a>, <a class="el" href="json__value_8cpp_source.html#l00236">Json::Value::Value()</a>, and <a class="el" href="json__value_8cpp_source.html#l00464">Json::Value::~Value()</a>.</p> </div> </div> <a class="anchor" id="a67007439f94bc6afc465923f56147ba1"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define JSON_FAIL_MESSAGE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">message</td><td>)</td> <td>   throw std::runtime_error( message );</td> </tr> </table> </div><div class="memdoc"> <p>Definition at line <a class="el" href="json__value_8cpp_source.html#l00025">25</a> of file <a class="el" href="json__value_8cpp_source.html">json_value.cpp</a>.</p> <p>Referenced by <a class="el" href="json__value_8cpp_source.html#l00830">Json::Value::asDouble()</a>, <a class="el" href="json__value_8cpp_source.html#l00859">Json::Value::asFloat()</a>, <a class="el" href="json__value_8cpp_source.html#l00690">Json::Value::asInt()</a>, <a class="el" href="json__value_8cpp_source.html#l00751">Json::Value::asInt64()</a>, <a class="el" href="json__value_8cpp_source.html#l00658">Json::Value::asString()</a>, <a class="el" href="json__value_8cpp_source.html#l00719">Json::Value::asUInt()</a>, and <a class="el" href="json__value_8cpp_source.html#l00779">Json::Value::asUInt64()</a>.</p> </div> </div> </div><!-- contents --> <hr> <table width="100%"> <tr> <td width="10%" align="left" valign="center"> <a href="http://sourceforge.net"> <img src="http://sourceforge.net/sflogo.php?group_id=144446" width="88" height="31" border="0" alt="SourceForge Logo"></a> </td> <td width="20%" align="left" valign="center"> hosts this site. </td> <td> </td> <td align="right" valign="center"> Send comments to:<br> <a href="mailto:jsoncpp-devel@lists.sourceforge.net">Json-cpp Developers</a> </td> </tr> </table> </body> </html>