Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-updates > by-pkgid > bd101116f928b2ceb5c9a929b33f1ee3 > files > 481

libjsoncpp-devel-1.6.5-1.mga5.i586.rpm

<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="https://github.com/open-source-parsers/jsoncpp">
      JsonCpp project page
      </a>
    </td>
    <td width="40%" align="right" valign="center">
      <a href="http://open-source-parsers.github.io/jsoncpp-docs/doxygen/">JsonCpp home page</a>
    </td>
  </tr>
</table>
<hr>
<!-- Generated by Doxygen 1.8.8 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;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&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;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="headertitle">
<div class="title">json_valueiterator.inl</div>  </div>
</div><!--header-->
<div class="contents">
<a href="json__valueiterator_8inl.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright 2007-2010 Baptiste Lepilleur</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Distributed under MIT license, or public domain if desired and</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// recognized in your jurisdiction.</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;</div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// included by json_value.cpp</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespace_json.html">Json</a> {</div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">// class ValueIteratorBase</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#af45b028d9ff9cbd2554a87878b42dd75">   18</a></span>&#160;<a class="code" href="class_json_1_1_value_iterator_base.html#af45b028d9ff9cbd2554a87878b42dd75">ValueIteratorBase::ValueIteratorBase</a>()</div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    : current_(), isNull_(true) {</div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;}</div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#a640e990e5f03a96fd650122a2906f59d">   22</a></span>&#160;<a class="code" href="class_json_1_1_value_iterator_base.html#af45b028d9ff9cbd2554a87878b42dd75">ValueIteratorBase::ValueIteratorBase</a>(</div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    <span class="keyword">const</span> Value::ObjectValues::iterator&amp; current)</div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    : current_(current), isNull_(false) {}</div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#a40a20c65abc423a26e3aae68d9a0525c">   26</a></span>&#160;<a class="code" href="class_json_1_1_value.html">Value</a>&amp; <a class="code" href="class_json_1_1_value_iterator_base.html#a40a20c65abc423a26e3aae68d9a0525c">ValueIteratorBase::deref</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;  <span class="keywordflow">return</span> current_-&gt;second;</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;}</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#afe58f9534e1fd2033419fd9fe244551e">   30</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_json_1_1_value_iterator_base.html#afe58f9534e1fd2033419fd9fe244551e">ValueIteratorBase::increment</a>() {</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;  ++current_;</div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;}</div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#affc8cf5ff54a9f432cc693362c153fa6">   34</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_json_1_1_value_iterator_base.html#affc8cf5ff54a9f432cc693362c153fa6">ValueIteratorBase::decrement</a>() {</div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;  --current_;</div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;}</div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<a class="code" href="class_json_1_1_value_iterator_base.html#a4e44bf8cbd17ec8d6e2c185904a15ebd">ValueIteratorBase::difference_type</a></div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#ad6c553b249e89e3dc9933e100ccbe064">   39</a></span>&#160;<a class="code" href="class_json_1_1_value_iterator_base.html#ad6c553b249e89e3dc9933e100ccbe064">ValueIteratorBase::computeDistance</a>(<span class="keyword">const</span> <a class="code" href="class_json_1_1_value_iterator_base.html">SelfType</a>&amp; other)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#ifdef JSON_USE_CPPTL_SMALLMAP</span></div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;  <span class="keywordflow">return</span> other.current_ - current_;</div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;  <span class="comment">// Iterator for null value are initialized using the default</span></div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;  <span class="comment">// constructor, which initialize current_ to the default</span></div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;  <span class="comment">// std::map::iterator. As begin() and end() are two instance</span></div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;  <span class="comment">// of the default std::map::iterator, they can not be compared.</span></div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  <span class="comment">// To allow this, we handle this comparison specifically.</span></div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;  <span class="keywordflow">if</span> (isNull_ &amp;&amp; other.isNull_) {</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;  }</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;  <span class="comment">// Usage of std::distance is not portable (does not compile with Sun Studio 12</span></div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;  <span class="comment">// RogueWave STL,</span></div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;  <span class="comment">// which is the one used by default).</span></div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;  <span class="comment">// Using a portable hand-made version for non random iterator instead:</span></div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;  <span class="comment">//   return difference_type( std::distance( current_, other.current_ ) );</span></div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;  <a class="code" href="class_json_1_1_value_iterator_base.html#a4e44bf8cbd17ec8d6e2c185904a15ebd">difference_type</a> myDistance = 0;</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  <span class="keywordflow">for</span> (Value::ObjectValues::iterator it = current_; it != other.current_;</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;       ++it) {</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    ++myDistance;</div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;  }</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  <span class="keywordflow">return</span> myDistance;</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;}</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#a21820d6ee564e541bd118b21e4741962">   66</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="class_json_1_1_value_iterator_base.html#a21820d6ee564e541bd118b21e4741962">ValueIteratorBase::isEqual</a>(<span class="keyword">const</span> <a class="code" href="class_json_1_1_value_iterator_base.html">SelfType</a>&amp; other)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;  <span class="keywordflow">if</span> (isNull_) {</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="keywordflow">return</span> other.isNull_;</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;  }</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;  <span class="keywordflow">return</span> current_ == other.current_;</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;}</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#a496e6aba44808433ec5858c178be5719">   73</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_json_1_1_value_iterator_base.html#a496e6aba44808433ec5858c178be5719">ValueIteratorBase::copy</a>(<span class="keyword">const</span> <a class="code" href="class_json_1_1_value_iterator_base.html">SelfType</a>&amp; other) {</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;  current_ = other.current_;</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;  isNull_ = other.isNull_;</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;}</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#aa2ff5e79fc96acd4c3cd288e92614fc7">   78</a></span>&#160;<a class="code" href="class_json_1_1_value.html">Value</a> <a class="code" href="class_json_1_1_value_iterator_base.html#aa2ff5e79fc96acd4c3cd288e92614fc7">ValueIteratorBase::key</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;  <span class="keyword">const</span> Value::CZString czstring = (*current_).first;</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;  <span class="keywordflow">if</span> (czstring.data()) {</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="keywordflow">if</span> (czstring.isStaticString())</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;      <span class="keywordflow">return</span> <a class="code" href="class_json_1_1_value.html">Value</a>(<a class="code" href="class_json_1_1_static_string.html">StaticString</a>(czstring.data()));</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="class_json_1_1_value.html">Value</a>(czstring.data(), czstring.data() + czstring.length());</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;  }</div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;  <span class="keywordflow">return</span> <a class="code" href="class_json_1_1_value.html">Value</a>(czstring.index());</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;}</div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#aa90591f5f7f8d2f06cc4605816b53738">   88</a></span>&#160;<a class="code" href="namespace_json.html#a800fb90eb6ee8d5d62b600c06f87f7d4">UInt</a> <a class="code" href="class_json_1_1_value_iterator_base.html#aa90591f5f7f8d2f06cc4605816b53738">ValueIteratorBase::index</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;  <span class="keyword">const</span> Value::CZString czstring = (*current_).first;</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;  <span class="keywordflow">if</span> (!czstring.data())</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <span class="keywordflow">return</span> czstring.index();</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;  <span class="keywordflow">return</span> <a class="code" href="class_json_1_1_value.html#a0933d59b45793ae4aade1757c322a98d">Value::UInt</a>(-1);</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;}</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#a46a67081a5ef8d83f25ec15035403ce0">   95</a></span>&#160;std::string <a class="code" href="class_json_1_1_value_iterator_base.html#a46a67081a5ef8d83f25ec15035403ce0">ValueIteratorBase::name</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;  <span class="keywordtype">char</span> <span class="keyword">const</span>* keey;</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;  <span class="keywordtype">char</span> <span class="keyword">const</span>* end;</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  keey = <a class="code" href="class_json_1_1_value_iterator_base.html#ac3aa3870761342e47c6486d81f643c6c">memberName</a>(&amp;end);</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;  <span class="keywordflow">if</span> (!keey) <span class="keywordflow">return</span> std::string();</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;  <span class="keywordflow">return</span> std::string(keey, end);</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;}</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#ac3aa3870761342e47c6486d81f643c6c">  103</a></span>&#160;<span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="class_json_1_1_value_iterator_base.html#ac3aa3870761342e47c6486d81f643c6c">ValueIteratorBase::memberName</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">char</span>* cname = (*current_).first.data();</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;  <span class="keywordflow">return</span> cname ? cname : <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;}</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator_base.html#a543d4e73e3d2d121bc287b24231386c3">  108</a></span>&#160;<span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="class_json_1_1_value_iterator_base.html#ac3aa3870761342e47c6486d81f643c6c">ValueIteratorBase::memberName</a>(<span class="keywordtype">char</span> <span class="keyword">const</span>** end)<span class="keyword"> const </span>{</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">char</span>* cname = (*current_).first.data();</div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  <span class="keywordflow">if</span> (!cname) {</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    *end = NULL;</div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;  }</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;  *end = cname + (*current_).first.length();</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  <span class="keywordflow">return</span> cname;</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;}</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">// class ValueConstIterator</span></div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="class_json_1_1_value_const_iterator.html#a1b10a46f1606421b0663492a5f9a2aad">  126</a></span>&#160;<a class="code" href="class_json_1_1_value_const_iterator.html#a1b10a46f1606421b0663492a5f9a2aad">ValueConstIterator::ValueConstIterator</a>() {}</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<a class="code" href="class_json_1_1_value_const_iterator.html#a1b10a46f1606421b0663492a5f9a2aad">ValueConstIterator::ValueConstIterator</a>(</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <span class="keyword">const</span> Value::ObjectValues::iterator&amp; current)</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    : <a class="code" href="class_json_1_1_value_iterator_base.html">ValueIteratorBase</a>(current) {}</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;ValueConstIterator&amp; <a class="code" href="class_json_1_1_value_const_iterator.html#ad1b1c11f8d7fb22d4d3c231915f2b15b">ValueConstIterator::</a></div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="class_json_1_1_value_const_iterator.html#ad1b1c11f8d7fb22d4d3c231915f2b15b">  133</a></span>&#160;<a class="code" href="class_json_1_1_value_const_iterator.html#ad1b1c11f8d7fb22d4d3c231915f2b15b">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_json_1_1_value_iterator_base.html">ValueIteratorBase</a>&amp; other) {</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;  <a class="code" href="class_json_1_1_value_iterator_base.html#a496e6aba44808433ec5858c178be5719">copy</a>(other);</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;}</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="comment">// class ValueIterator</span></div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="comment">// //////////////////////////////////////////////////////////////////</span></div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator.html#a09425cf4dc12244072a942f290a5c0ec">  146</a></span>&#160;<a class="code" href="class_json_1_1_value_iterator.html#a09425cf4dc12244072a942f290a5c0ec">ValueIterator::ValueIterator</a>() {}</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<a class="code" href="class_json_1_1_value_iterator.html#a09425cf4dc12244072a942f290a5c0ec">ValueIterator::ValueIterator</a>(<span class="keyword">const</span> Value::ObjectValues::iterator&amp; current)</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    : <a class="code" href="class_json_1_1_value_iterator_base.html">ValueIteratorBase</a>(current) {}</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;</div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator.html#aa85aa208670891670392259efa0143bb">  151</a></span>&#160;<a class="code" href="class_json_1_1_value_iterator.html#a09425cf4dc12244072a942f290a5c0ec">ValueIterator::ValueIterator</a>(<span class="keyword">const</span> <a class="code" href="class_json_1_1_value_const_iterator.html">ValueConstIterator</a>&amp; other)</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    : <a class="code" href="class_json_1_1_value_iterator_base.html">ValueIteratorBase</a>(other) {}</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div>
<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator.html#a7d5e58a9a4a553968acdf3064b39d21c">  154</a></span>&#160;<a class="code" href="class_json_1_1_value_iterator.html#a09425cf4dc12244072a942f290a5c0ec">ValueIterator::ValueIterator</a>(<span class="keyword">const</span> <a class="code" href="class_json_1_1_value_iterator.html">ValueIterator</a>&amp; other)</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    : <a class="code" href="class_json_1_1_value_iterator_base.html">ValueIteratorBase</a>(other) {}</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="class_json_1_1_value_iterator.html#a8e23312b1db874f7e403fd7e76611bdc">  157</a></span>&#160;<a class="code" href="class_json_1_1_value_iterator.html">ValueIterator</a>&amp; <a class="code" href="class_json_1_1_value_iterator.html#a8e23312b1db874f7e403fd7e76611bdc">ValueIterator::operator=</a>(<span class="keyword">const</span> <a class="code" href="class_json_1_1_value_iterator_base.html">SelfType</a>&amp; other) {</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;  <a class="code" href="class_json_1_1_value_iterator_base.html#a496e6aba44808433ec5858c178be5719">copy</a>(other);</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;}</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;} <span class="comment">// namespace Json</span></div>
<div class="ttc" id="class_json_1_1_value_iterator_html_a09425cf4dc12244072a942f290a5c0ec"><div class="ttname"><a href="class_json_1_1_value_iterator.html#a09425cf4dc12244072a942f290a5c0ec">Json::ValueIterator::ValueIterator</a></div><div class="ttdeci">ValueIterator()</div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00146">json_valueiterator.inl:146</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html">Json::ValueIteratorBase</a></div><div class="ttdoc">base class for Value iterators. </div><div class="ttdef"><b>Definition:</b> <a href="value_8h_source.html#l00664">value.h:664</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_a4e44bf8cbd17ec8d6e2c185904a15ebd"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#a4e44bf8cbd17ec8d6e2c185904a15ebd">Json::ValueIteratorBase::difference_type</a></div><div class="ttdeci">int difference_type</div><div class="ttdef"><b>Definition:</b> <a href="value_8h_source.html#l00668">value.h:668</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_ac3aa3870761342e47c6486d81f643c6c"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#ac3aa3870761342e47c6486d81f643c6c">Json::ValueIteratorBase::memberName</a></div><div class="ttdeci">char const * memberName() const </div><div class="ttdoc">Return the member name of the referenced Value. </div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00103">json_valueiterator.inl:103</a></div></div>
<div class="ttc" id="class_json_1_1_value_const_iterator_html_a1b10a46f1606421b0663492a5f9a2aad"><div class="ttname"><a href="class_json_1_1_value_const_iterator.html#a1b10a46f1606421b0663492a5f9a2aad">Json::ValueConstIterator::ValueConstIterator</a></div><div class="ttdeci">ValueConstIterator()</div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00126">json_valueiterator.inl:126</a></div></div>
<div class="ttc" id="class_json_1_1_static_string_html"><div class="ttname"><a href="class_json_1_1_static_string.html">Json::StaticString</a></div><div class="ttdoc">Lightweight wrapper to tag static string. </div><div class="ttdef"><b>Definition:</b> <a href="value_8h_source.html#l00116">value.h:116</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_a21820d6ee564e541bd118b21e4741962"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#a21820d6ee564e541bd118b21e4741962">Json::ValueIteratorBase::isEqual</a></div><div class="ttdeci">bool isEqual(const SelfType &amp;other) const </div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00066">json_valueiterator.inl:66</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_ad6c553b249e89e3dc9933e100ccbe064"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#ad6c553b249e89e3dc9933e100ccbe064">Json::ValueIteratorBase::computeDistance</a></div><div class="ttdeci">difference_type computeDistance(const SelfType &amp;other) const </div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00039">json_valueiterator.inl:39</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_a496e6aba44808433ec5858c178be5719"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#a496e6aba44808433ec5858c178be5719">Json::ValueIteratorBase::copy</a></div><div class="ttdeci">void copy(const SelfType &amp;other)</div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00073">json_valueiterator.inl:73</a></div></div>
<div class="ttc" id="class_json_1_1_value_const_iterator_html"><div class="ttname"><a href="class_json_1_1_value_const_iterator.html">Json::ValueConstIterator</a></div><div class="ttdoc">const iterator for object and array value. </div><div class="ttdef"><b>Definition:</b> <a href="value_8h_source.html#l00729">value.h:729</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_html_a8e23312b1db874f7e403fd7e76611bdc"><div class="ttname"><a href="class_json_1_1_value_iterator.html#a8e23312b1db874f7e403fd7e76611bdc">Json::ValueIterator::operator=</a></div><div class="ttdeci">SelfType &amp; operator=(const SelfType &amp;other)</div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00157">json_valueiterator.inl:157</a></div></div>
<div class="ttc" id="namespace_json_html"><div class="ttname"><a href="namespace_json.html">Json</a></div><div class="ttdoc">JSON (JavaScript Object Notation). </div><div class="ttdef"><b>Definition:</b> <a href="config_8h_source.html#l00087">config.h:87</a></div></div>
<div class="ttc" id="class_json_1_1_value_html_a0933d59b45793ae4aade1757c322a98d"><div class="ttname"><a href="class_json_1_1_value.html#a0933d59b45793ae4aade1757c322a98d">Json::Value::UInt</a></div><div class="ttdeci">Json::UInt UInt</div><div class="ttdef"><b>Definition:</b> <a href="value_8h_source.html#l00168">value.h:168</a></div></div>
<div class="ttc" id="class_json_1_1_value_const_iterator_html_ad1b1c11f8d7fb22d4d3c231915f2b15b"><div class="ttname"><a href="class_json_1_1_value_const_iterator.html#ad1b1c11f8d7fb22d4d3c231915f2b15b">Json::ValueConstIterator::operator=</a></div><div class="ttdeci">SelfType &amp; operator=(const ValueIteratorBase &amp;other)</div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00133">json_valueiterator.inl:133</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_a46a67081a5ef8d83f25ec15035403ce0"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#a46a67081a5ef8d83f25ec15035403ce0">Json::ValueIteratorBase::name</a></div><div class="ttdeci">std::string name() const </div><div class="ttdoc">Return the member name of the referenced Value, or "" if it is not an objectValue. </div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00095">json_valueiterator.inl:95</a></div></div>
<div class="ttc" id="class_json_1_1_value_html"><div class="ttname"><a href="class_json_1_1_value.html">Json::Value</a></div><div class="ttdoc">Represents a JSON value. </div><div class="ttdef"><b>Definition:</b> <a href="value_8h_source.html#l00162">value.h:162</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_aa90591f5f7f8d2f06cc4605816b53738"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#aa90591f5f7f8d2f06cc4605816b53738">Json::ValueIteratorBase::index</a></div><div class="ttdeci">UInt index() const </div><div class="ttdoc">Return the index of the referenced Value, or -1 if it is not an arrayValue. </div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00088">json_valueiterator.inl:88</a></div></div>
<div class="ttc" id="namespace_json_html_a800fb90eb6ee8d5d62b600c06f87f7d4"><div class="ttname"><a href="namespace_json.html#a800fb90eb6ee8d5d62b600c06f87f7d4">Json::UInt</a></div><div class="ttdeci">unsigned int UInt</div><div class="ttdef"><b>Definition:</b> <a href="config_8h_source.html#l00089">config.h:89</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_aa2ff5e79fc96acd4c3cd288e92614fc7"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#aa2ff5e79fc96acd4c3cd288e92614fc7">Json::ValueIteratorBase::key</a></div><div class="ttdeci">Value key() const </div><div class="ttdoc">Return either the index or the member name of the referenced value as a Value. </div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00078">json_valueiterator.inl:78</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_afe58f9534e1fd2033419fd9fe244551e"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#afe58f9534e1fd2033419fd9fe244551e">Json::ValueIteratorBase::increment</a></div><div class="ttdeci">void increment()</div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00030">json_valueiterator.inl:30</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_html"><div class="ttname"><a href="class_json_1_1_value_iterator.html">Json::ValueIterator</a></div><div class="ttdoc">Iterator for object and array value. </div><div class="ttdef"><b>Definition:</b> <a href="value_8h_source.html#l00778">value.h:778</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_af45b028d9ff9cbd2554a87878b42dd75"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#af45b028d9ff9cbd2554a87878b42dd75">Json::ValueIteratorBase::ValueIteratorBase</a></div><div class="ttdeci">ValueIteratorBase()</div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00018">json_valueiterator.inl:18</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_a40a20c65abc423a26e3aae68d9a0525c"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#a40a20c65abc423a26e3aae68d9a0525c">Json::ValueIteratorBase::deref</a></div><div class="ttdeci">Value &amp; deref() const </div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00026">json_valueiterator.inl:26</a></div></div>
<div class="ttc" id="class_json_1_1_value_iterator_base_html_affc8cf5ff54a9f432cc693362c153fa6"><div class="ttname"><a href="class_json_1_1_value_iterator_base.html#affc8cf5ff54a9f432cc693362c153fa6">Json::ValueIteratorBase::decrement</a></div><div class="ttdeci">void decrement()</div><div class="ttdef"><b>Definition:</b> <a href="json__valueiterator_8inl_source.html#l00034">json_valueiterator.inl:34</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<hr>
</body> 
</html>