You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by jr...@apache.org on 2016/03/24 13:41:40 UTC

svn commit: r1736439 [9/49] - in /qpid/site: docs/releases/qpid-proton-master/ docs/releases/qpid-proton-master/messenger/c/examples/ docs/releases/qpid-proton-master/messenger/perl/examples/ docs/releases/qpid-proton-master/messenger/php/examples/ doc...

Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/decoder_8hpp_source.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/decoder_8hpp_source.html?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/decoder_8hpp_source.html (original)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/decoder_8hpp_source.html Thu Mar 24 12:41:32 2016
@@ -93,8 +93,8 @@ $(document).ready(function(){initNavTree
 <div class="title">decoder.hpp</div>  </div>
 </div><!--header-->
 <div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef DECODER_H</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define DECODER_H</span></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef PROTON_DECODER_HPP</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define PROTON_DECODER_HPP</span></div>
 <div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">/*</span></div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one</span></div>
 <div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * or more contributor license agreements.  See the NOTICE file</span></div>
@@ -114,201 +114,138 @@ $(document).ready(function(){initNavTree
 <div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> * under the License.</span></div>
 <div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> */</span></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">   22</span>&#160;<span class="preprocessor">#include &lt;proton/data.hpp&gt;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &lt;proton/type_traits.hpp&gt;</span></div>
 <div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;proton/error.hpp&quot;</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;proton/type_traits.hpp&quot;</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="types_8hpp.html">proton/types.hpp</a>&quot;</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;proton/object.hpp&quot;</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;proton/timestamp.hpp&quot;</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;proton/uuid.hpp&quot;</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &lt;iosfwd&gt;</span></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;<span class="preprocessor">#include &lt;vector&gt;</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &lt;deque&gt;</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></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;<span class="preprocessor">#if PN_CPP_HAS_CPP11</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &lt;array&gt;</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &lt;forward_list&gt;</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#include &lt;unordered_map&gt;</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#endif // PN_CPP_HAS_CPP11</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keyword">struct </span>pn_data_t;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &lt;utility&gt;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceproton.html">proton</a> {</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;<span class="keyword">class </span>annotation_key;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">class </span>message_id;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">class </span>scalar;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keyword">class </span>value;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">class </span>value_base;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">namespace </span>codec {</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keyword">class </span>decoder : <span class="keyword">public</span> data {</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;  <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    <span class="keyword">explicit</span> decoder(<span class="keyword">const</span> data&amp; d) : data(d) {}</div>
 <div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceproton.html">proton</a> {</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="keyword">class </span>scalar;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="keyword">class </span>message_id;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="keyword">class </span>annotation_key;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="keyword">class </span>value;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="keyword">namespace </span>internal {</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="keyword">class </span>data;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="keyword">struct </span>skip{};</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="keyword">struct </span>assert_type {</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    type_id type;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    assert_type(type_id t) : type(t) {}</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">   66</span>&#160;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="keyword">struct </span>rewind{};</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="keyword">class </span>decoder : <span class="keyword">public</span> object&lt;pn_data_t&gt; {</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;  <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    decoder(pn_data_t* d) : object&lt;pn_data_t&gt;(d) {}</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    PN_CPP_EXTERN decoder(<span class="keyword">const</span> <span class="keywordtype">char</span>* buffer, <span class="keywordtype">size_t</span> size);</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    PN_CPP_EXTERN decoder(<span class="keyword">const</span> std::string&amp;);</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">void</span> decode(<span class="keyword">const</span> <span class="keywordtype">char</span>* buffer, <span class="keywordtype">size_t</span> size);</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">void</span> decode(<span class="keyword">const</span> std::string&amp;);</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">bool</span> more() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    PN_CPP_EXTERN type_id type() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">void</span> rewind();</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">void</span> skip();</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">void</span> backup();</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    PN_CPP_EXTERN <span class="keyword">explicit</span> decoder(<span class="keyword">const</span> value_base&amp;);</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">void</span> decode(<span class="keyword">const</span> <span class="keywordtype">char</span>* buffer, <span class="keywordtype">size_t</span> size);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">void</span> decode(<span class="keyword">const</span> std::string&amp;);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">bool</span> more();</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    PN_CPP_EXTERN type_id next_type();</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(<span class="keywordtype">bool</span>&amp;);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(uint8_t&amp;);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(int8_t&amp;);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(uint16_t&amp;);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(int16_t&amp;);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(uint32_t&amp;);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(int32_t&amp;);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(<span class="keywordtype">wchar_t</span>&amp;);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(uint64_t&amp;);</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(int64_t&amp;);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(timestamp&amp;);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(<span class="keywordtype">float</span>&amp;);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(<span class="keywordtype">double</span>&amp;);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(decimal32&amp;);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(decimal64&amp;);</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(decimal128&amp;);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(uuid&amp;);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(std::string&amp;);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(symbol&amp;);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(binary&amp;);</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(message_id&amp;);</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(annotation_key&amp;);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(scalar&amp;);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(value_base&amp;);</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(null&amp;);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(start&amp;);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <span class="comment">// Finish decoding a container type, and move on to the next value in the stream.</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    PN_CPP_EXTERN decoder&amp; operator&gt;&gt;(<span class="keyword">const</span> finish&amp;);</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;    <span class="comment">// XXX doc</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span>sequence_ref { T&amp; ref; sequence_ref(T&amp; r) : ref(r) {} };</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span>associative_ref { T&amp; ref; associative_ref(T&amp; r) : ref(r) {} };</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span>pair_sequence_ref { T&amp; ref;  pair_sequence_ref(T&amp; r) : ref(r) {} };</div>
 <div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(<span class="keywordtype">bool</span>&amp;);</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(uint8_t&amp;);</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(int8_t&amp;);</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(uint16_t&amp;);</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(int16_t&amp;);</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(uint32_t&amp;);</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(int32_t&amp;);</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(<span class="keywordtype">wchar_t</span>&amp;);</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(uint64_t&amp;);</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(int64_t&amp;);</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(timestamp&amp;);</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(<span class="keywordtype">float</span>&amp;);</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(<span class="keywordtype">double</span>&amp;);</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(decimal32&amp;);</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(decimal64&amp;);</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(decimal128&amp;);</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(uuid&amp;);</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(std::string&amp;);</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(message_id&amp;);</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(annotation_key&amp;);</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(scalar&amp;);</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(value&amp;);</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <span class="comment">// start extracting complex type.</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(start&amp;);</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(finish);</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(<span class="keyword">struct</span> skip);</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(assert_type);</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    PN_CPP_EXTERN decoder operator&gt;&gt;(<span class="keyword">struct</span> rewind);</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">  151</span>&#160;  <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    PN_CPP_EXTERN <span class="keywordtype">void</span> check_type(type_id);</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">  154</span>&#160;</div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="keyword">struct </span>scope : <span class="keyword">public</span> start {</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    decoder decoder_;</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;    scope(decoder d) : decoder_(d) { decoder_ &gt;&gt; *<span class="keyword">this</span>; }</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    ~scope() { decoder_ &gt;&gt; finish(); }</div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;};</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">static</span> sequence_ref&lt;T&gt; sequence(T&amp; x) { <span class="keywordflow">return</span> sequence_ref&lt;T&gt;(x); }</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">static</span> associative_ref&lt;T&gt; associative(T&amp; x) { <span class="keywordflow">return</span> associative_ref&lt;T&gt;(x); }</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">static</span> pair_sequence_ref&lt;T&gt; pair_sequence(T&amp; x) { <span class="keywordflow">return</span> pair_sequence_ref&lt;T&gt;(x); }</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; decoder&amp; operator&gt;&gt;(sequence_ref&lt;T&gt; r)  {</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        start s;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        *<span class="keyword">this</span> &gt;&gt; s;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        <span class="keywordflow">if</span> (s.is_described) next();</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        r.ref.resize(s.size);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        <span class="keywordflow">for</span> (<span class="keyword">typename</span> T::iterator i = r.ref.begin(); i != r.ref.end(); ++i)</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;            *<span class="keyword">this</span> &gt;&gt; *i;</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    }</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; decoder&amp; operator&gt;&gt;(associative_ref&lt;T&gt; r)  {</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        start s;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        *<span class="keyword">this</span> &gt;&gt; s;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        assert_type_equal(MAP, s.type);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        r.ref.clear();</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; s.size/2; ++i) {</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;            <span class="keyword">typename</span> remove_const&lt;typename T::key_type&gt;::type k;</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;            <span class="keyword">typename</span> remove_const&lt;typename T::mapped_type&gt;::type v;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;            *<span class="keyword">this</span> &gt;&gt; k &gt;&gt; v;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;            r.ref[k] = v;</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;        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    }</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; decoder&amp; operator&gt;&gt;(pair_sequence_ref&lt;T&gt; r)  {</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        start s;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        *<span class="keyword">this</span> &gt;&gt; s;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        assert_type_equal(MAP, s.type);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        r.ref.clear();</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; s.size/2; ++i) {</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;            <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type value_type;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;            <span class="keyword">typename</span> remove_const&lt;typename value_type::first_type&gt;::type k;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;            <span class="keyword">typename</span> remove_const&lt;typename value_type::second_type&gt;::type v;</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;            *<span class="keyword">this</span> &gt;&gt; k &gt;&gt; v;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;            r.ref.push_back(value_type(k, v));</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">  154</span>&#160;        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    }</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; T extract() { T x; *<span class="keyword">this</span> &gt;&gt; x; <span class="keywordflow">return</span> x; }</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;  <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    type_id pre_get();</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">class</span> T, <span class="keyword">class</span> U&gt; decoder&amp; extract(T&amp; x, U (*<span class="keyword">get</span>)(pn_data_t*));</div>
 <div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;</div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="comment">// operator &gt;&gt; for integer types that are not covered by the standard overrides.</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">typename</span> enable_integer&lt;T, decoder&gt;::type</div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;operator&gt;&gt;(decoder d, T&amp; i)  {</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    <span class="keyword">typename</span> integer_type&lt;sizeof(T), is_signed&lt;T&gt;::value&gt;::type v;</div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    d &gt;&gt; v;                     <span class="comment">// Extract as a known integer type</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    i = v;                      <span class="comment">// C++ conversion to the target type.</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    <span class="keywordflow">return</span> d;</div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;}</div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span>ref {</div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    ref(T&amp; v) : value(v) {}</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    T&amp; value;</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;};</div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span>sequence_ref : <span class="keyword">public</span> ref&lt;T&gt; { sequence_ref(T&amp; v) : ref&lt;T&gt;(v) {} };</div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span>map_ref : <span class="keyword">public</span> ref&lt;T&gt; { map_ref(T&amp; v) : ref&lt;T&gt;(v) {} };</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span>pairs_ref : <span class="keyword">public</span> ref&lt;T&gt; { pairs_ref(T&amp; v) : ref&lt;T&gt;(v) {} };</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<span class="comment">// FIXME aconway 2016-03-03: rename</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; sequence_ref&lt;T&gt; to_sequence(T&amp; v) { <span class="keywordflow">return</span> sequence_ref&lt;T&gt;(v); }</div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;</div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; map_ref&lt;T&gt; to_map(T&amp; v) { <span class="keywordflow">return</span> map_ref&lt;T&gt;(v); }</div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; pairs_ref&lt;T&gt; to_pairs(T&amp; v) { <span class="keywordflow">return</span> pairs_ref&lt;T&gt;(v); }</div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;</div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; decoder operator&gt;&gt;(decoder d, sequence_ref&lt;T&gt; ref)  {</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;    scope s(d);</div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    <span class="keywordflow">if</span> (s.is_described) d &gt;&gt; skip();</div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    T&amp; v = ref.value;</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    v.clear();</div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    v.resize(s.size);</div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;    <span class="keywordflow">for</span> (<span class="keyword">typename</span> T::iterator i = v.begin(); i != v.end(); ++i)</div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        d &gt;&gt; *i;</div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    <span class="keywordflow">return</span> d;</div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;}</div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;PN_CPP_EXTERN <span class="keywordtype">void</span> assert_map_scope(<span class="keyword">const</span> scope&amp; s);</div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; decoder operator&gt;&gt;(decoder d, map_ref&lt;T&gt; ref)  {</div>
-<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    scope s(d);</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    assert_map_scope(s);</div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    T&amp; m = ref.value;</div>
-<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    m.clear();</div>
-<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; s.size/2; ++i) {</div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;        <span class="keyword">typename</span> remove_const&lt;typename T::key_type&gt;::type k;</div>
-<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        <span class="keyword">typename</span> remove_const&lt;typename T::mapped_type&gt;::type v;</div>
-<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;        d &gt;&gt; k &gt;&gt; v;</div>
-<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;        m[k] = v;</div>
-<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    }</div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    <span class="keywordflow">return</span> d;</div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;}</div>
-<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;</div>
-<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; decoder operator&gt;&gt;(decoder d, pairs_ref&lt;T&gt; ref)  {</div>
-<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    scope s(d);</div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    assert_map_scope(s);</div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    T&amp; m = ref.value;</div>
-<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;    m.clear();</div>
-<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    m.resize(s.size/2);</div>
-<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;    <span class="keywordflow">for</span> (<span class="keyword">typename</span> T::iterator i = m.begin(); i != m.end(); ++i) {</div>
-<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        d &gt;&gt; i-&gt;first &gt;&gt; i-&gt;second;</div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    }</div>
-<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    <span class="keywordflow">return</span> d;</div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;}</div>
-<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;</div>
-<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="comment">// Decode to sequence.</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T, <span class="keyword">class</span> A&gt; decoder operator&gt;&gt;(decoder d, std::vector&lt;T, A&gt;&amp; v) { <span class="keywordflow">return</span> d &gt;&gt; to_sequence(v); }</div>
-<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T, <span class="keyword">class</span> A&gt; decoder operator&gt;&gt;(decoder d, std::deque&lt;T, A&gt;&amp; v) { <span class="keywordflow">return</span> d &gt;&gt; to_sequence(v); }</div>
-<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T, <span class="keyword">class</span> A&gt; decoder operator&gt;&gt;(decoder d, std::list&lt;T, A&gt;&amp; v) { <span class="keywordflow">return</span> d &gt;&gt; to_sequence(v); }</div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div>
-<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="comment">// Decode to map.</span></div>
-<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> K, <span class="keyword">class</span> T, <span class="keyword">class</span> C, <span class="keyword">class</span> A&gt; decoder operator&gt;&gt;(decoder d, std::map&lt;K, T, C, A&gt;&amp; v) { <span class="keywordflow">return</span> d &gt;&gt; to_map(v); }</div>
-<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;</div>
-<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;<span class="preprocessor">#if PN_CPP_HAS_CPP11</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;</div>
-<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;<span class="comment">// Decode to sequence.</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T, <span class="keyword">class</span> A&gt; decoder operator&gt;&gt;(decoder d, std::forward_list&lt;T, A&gt;&amp; v) { <span class="keywordflow">return</span> d &gt;&gt; to_sequence(v); }</div>
-<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T, std::<span class="keywordtype">size_t</span> N&gt; decoder operator&gt;&gt;(decoder d, std::array&lt;T, N&gt;&amp; v) { <span class="keywordflow">return</span> d &gt;&gt; to_sequence(v); }</div>
-<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;</div>
-<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;<span class="comment">// Decode to map.</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> K, <span class="keyword">class</span> T, <span class="keyword">class</span> C, <span class="keyword">class</span> A&gt; decoder operator&gt;&gt;(decoder d, std::unordered_map&lt;K, T, C, A&gt;&amp; v) { <span class="keywordflow">return</span> d &gt;&gt; to_map(v); }</div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;</div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;<span class="preprocessor">#endif // PN_CPP_HAS_CPP11</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;}</div>
-<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;}</div>
-<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;</div>
-<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;</div>
-<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;<span class="preprocessor">#endif // DECODER_H</span></div>
-<div class="ttc" id="types_8hpp_html"><div class="ttname"><a href="types_8hpp.html">types.hpp</a></div><div class="ttdoc">Defines C++ types representing AMQP types. </div></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>message;</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;};</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment">// operator &gt;&gt; for integer types that are not covered by the standard overrides.</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">typename</span> codec::enable_unknown_integer&lt;T, decoder&amp;&gt;::type</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;operator&gt;&gt;(decoder&amp; d, T&amp; i)  {</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    <span class="keyword">typename</span> integer_type&lt;sizeof(T), is_signed&lt;T&gt;::value&gt;::type v;</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    d &gt;&gt; v;                     <span class="comment">// Extract as a known integer type</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    i = v;                      <span class="comment">// C++ conversion to the target type.</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;    <span class="keywordflow">return</span> d;</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;}</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;} <span class="comment">// internal</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;} <span class="comment">// proton</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;<span class="preprocessor">#endif // PROTON_DECODER_HPP</span></div>
 <div class="ttc" id="namespaceproton_html"><div class="ttname"><a href="namespaceproton.html">proton</a></div><div class="ttdef"><b>Definition:</b> acceptor.hpp:31</div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->

Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/delivery_8hpp_source.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/delivery_8hpp_source.html?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/delivery_8hpp_source.html (original)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/delivery_8hpp_source.html Thu Mar 24 12:41:32 2016
@@ -184,7 +184,7 @@ $(document).ready(function(){initNavTree
 <div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div>
 <div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">#endif // PROTON_CPP_DELIVERY_H</span></div>
 <div class="ttc" id="classproton_1_1sender_html"><div class="ttname"><a href="classproton_1_1sender.html">proton::sender</a></div><div class="ttdoc">A link for sending messages. </div><div class="ttdef"><b>Definition:</b> sender.hpp:38</div></div>
-<div class="ttc" id="classproton_1_1link_html"><div class="ttname"><a href="classproton_1_1link.html">proton::link</a></div><div class="ttdoc">A named channel for sending or receiving messages. </div><div class="ttdef"><b>Definition:</b> link.hpp:43</div></div>
+<div class="ttc" id="classproton_1_1link_html"><div class="ttname"><a href="classproton_1_1link.html">proton::link</a></div><div class="ttdoc">A named channel for sending or receiving messages. </div><div class="ttdef"><b>Definition:</b> link.hpp:45</div></div>
 <div class="ttc" id="classproton_1_1delivery_html_adc6e5733fc3c22f0a7b2914188c49c90a1cf265da0334753368223d47f242a8df"><div class="ttname"><a href="classproton_1_1delivery.html#adc6e5733fc3c22f0a7b2914188c49c90a1cf265da0334753368223d47f242a8df">proton::delivery::RECEIVED</a></div><div class="ttdoc">Received but not yet settled. </div><div class="ttdef"><b>Definition:</b> delivery.hpp:50</div></div>
 <div class="ttc" id="classproton_1_1delivery_html"><div class="ttname"><a href="classproton_1_1delivery.html">proton::delivery</a></div><div class="ttdoc">A message transfer. </div><div class="ttdef"><b>Definition:</b> delivery.hpp:36</div></div>
 <div class="ttc" id="classproton_1_1delivery_html_adc6e5733fc3c22f0a7b2914188c49c90aa38d18fe73a7fc82c112b6917d0b5cd0"><div class="ttname"><a href="classproton_1_1delivery.html#adc6e5733fc3c22f0a7b2914188c49c90aa38d18fe73a7fc82c112b6917d0b5cd0">proton::delivery::RELEASED</a></div><div class="ttdoc">Settled as released. </div><div class="ttdef"><b>Definition:</b> delivery.hpp:53</div></div>

Added: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/deque_8hpp_source.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/deque_8hpp_source.html?rev=1736439&view=auto
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/deque_8hpp_source.html (added)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/deque_8hpp_source.html Thu Mar 24 12:41:32 2016
@@ -0,0 +1,160 @@
+<!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.10"/>
+<title>Qpid Proton C++ API: proton/deque.hpp Source File</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">
+  $(document).ready(initResizable);
+  $(window).load(resizeHeight);
+</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">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Qpid Proton C++ API
+   &#160;<span id="projectnumber">master</span>
+   </div>
+  </td>
+   <td>        <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>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.10 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</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">
+$(document).ready(function(){initNavTree('deque_8hpp_source.html','');});
+</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="headertitle">
+<div class="title">deque.hpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef PROTON_DEQUE_HPP</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#define PROTON_DEQUE_HPP</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * or more contributor license agreements.  See the NOTICE file</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> * distributed with this work for additional information</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> * regarding copyright ownership.  The ASF licenses this file</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> * to you under the Apache License, Version 2.0 (the</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> * &quot;License&quot;); you may not use this file except in compliance</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> * with the License.  You may obtain a copy of the License at</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"> *   http://www.apache.org/licenses/LICENSE-2.0</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> * Unless required by applicable law or agreed to in writing,</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> * software distributed under the License is distributed on an</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> * &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> * KIND, either express or implied.  See the License for the</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> * specific language governing permissions and limitations</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> * under the License.</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> */</span></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">   22</span>&#160;<span class="preprocessor">#include &lt;deque&gt;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &lt;utility&gt;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &lt;proton/encoder.hpp&gt;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &lt;proton/decoder.hpp&gt;</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceproton.html">proton</a> {</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">namespace </span>codec {</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T, <span class="keyword">class</span> A&gt;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;encoder&amp; operator&lt;&lt;(encoder&amp; e, const std::deque&lt;T, A&gt;&amp; x) {</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keywordflow">return</span> e &lt;&lt; encoder::array(x, type_id_of&lt;T&gt;::value);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;}</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> A&gt;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;encoder&amp; operator&lt;&lt;(encoder&amp; e, const std::deque&lt;value, A&gt;&amp; x) { <span class="keywordflow">return</span> e &lt;&lt; encoder::list(x); }</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> A&gt;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;encoder&amp; operator&lt;&lt;(encoder&amp; e, const std::deque&lt;scalar, A&gt;&amp; x) { <span class="keywordflow">return</span> e &lt;&lt; encoder::list(x); }</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> A, <span class="keyword">class</span> K, <span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;encoder&amp; operator&lt;&lt;(encoder&amp; e, const std::deque&lt;std::pair&lt;K,T&gt;, A&gt;&amp; x) { <span class="keywordflow">return</span> e &lt;&lt; encoder::map(x); }</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T, <span class="keyword">class</span> A&gt; decoder&amp; operator&gt;&gt;(decoder&amp; d, std::deque&lt;T, A&gt;&amp; x) { <span class="keywordflow">return</span> d &gt;&gt; decoder::sequence(x); }</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> A, <span class="keyword">class</span> K, <span class="keyword">class</span> T&gt; decoder&amp; operator&gt;&gt;(decoder&amp; d, std::deque&lt;std::pair&lt;K, T&gt; , A&gt;&amp; x) { <span class="keywordflow">return</span> d &gt;&gt; decoder::pair_sequence(x); }</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;}</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;}</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#endif // PROTON_DEQUE_HPP</span></div>
+<div class="ttc" id="namespaceproton_html"><div class="ttname"><a href="namespaceproton.html">proton</a></div><div class="ttdef"><b>Definition:</b> acceptor.hpp:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_659b8f7bed25fad65524af70d45ab193.html">proton</a></li><li class="navelem"><b>deque.hpp</b></li>
+    <li class="footer">Generated by
+    <a href="http://www.doxygen.org/index.html">
+    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.10 </li>
+  </ul>
+</div>
+</body>
+</html>

Propchange: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/deque_8hpp_source.html
------------------------------------------------------------------------------
    svn:executable = *

Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/dir_659b8f7bed25fad65524af70d45ab193.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/dir_659b8f7bed25fad65524af70d45ab193.html?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/dir_659b8f7bed25fad65524af70d45ab193.html (original)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/dir_659b8f7bed25fad65524af70d45ab193.html Thu Mar 24 12:41:32 2016
@@ -128,6 +128,8 @@ Files</h2></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:delivery_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>delivery.hpp</b> <a href="delivery_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:deque_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>deque.hpp</b> <a href="deque_8hpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:duration_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>duration.hpp</b> <a href="duration_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:encoder_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>encoder.hpp</b> <a href="encoder_8hpp_source.html">[code]</a></td></tr>
@@ -140,6 +142,8 @@ Files</h2></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:export_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>export.hpp</b> <a href="export_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:forward__list_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>forward_list.hpp</b> <a href="forward__list_8hpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:handler_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>handler.hpp</b> <a href="handler_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:io_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>io.hpp</b> <a href="io_8hpp_source.html">[code]</a></td></tr>
@@ -148,6 +152,10 @@ Files</h2></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:link__options_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>link_options.hpp</b> <a href="link__options_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:list_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>list.hpp</b> <a href="list_8hpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:map_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>map.hpp</b> <a href="map_8hpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:message_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>message.hpp</b> <a href="message_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:message__id_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>message_id.hpp</b> <a href="message__id_8hpp_source.html">[code]</a></td></tr>
@@ -180,10 +188,17 @@ Files</h2></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:transport_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>transport.hpp</b> <a href="transport_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:type__id_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>type_id.hpp</b> <a href="type__id_8hpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:type__traits_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>type_traits.hpp</b> <a href="type__traits_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:types_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8hpp.html">types.hpp</a> <a href="types_8hpp_source.html">[code]</a></td></tr>
-<tr class="memdesc:types_8hpp"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines C++ types representing AMQP types. <br /></td></tr>
+<tr class="memdesc:types_8hpp"><td class="mdescLeft">&#160;</td><td class="mdescRight">Include the definitions of all proton types used to represent AMQP types. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:types__fwd_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types__fwd_8hpp.html">types_fwd.hpp</a> <a href="types__fwd_8hpp_source.html">[code]</a></td></tr>
+<tr class="memdesc:types__fwd_8hpp"><td class="mdescLeft">&#160;</td><td class="mdescRight">Forward declarations for all the C++ types used by proton to represent AMQP types. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:unordered__map_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>unordered_map.hpp</b> <a href="unordered__map_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:url_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>url.hpp</b> <a href="url_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -191,6 +206,8 @@ Files</h2></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:value_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>value.hpp</b> <a href="value_8hpp_source.html">[code]</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:vector_8hpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>vector.hpp</b> <a href="vector_8hpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 </div><!-- contents -->
 </div><!-- doc-content -->

Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/dir_659b8f7bed25fad65524af70d45ab193.js
URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/dir_659b8f7bed25fad65524af70d45ab193.js?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/dir_659b8f7bed25fad65524af70d45ab193.js (original)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/dir_659b8f7bed25fad65524af70d45ab193.js Thu Mar 24 12:41:32 2016
@@ -16,16 +16,20 @@ var dir_659b8f7bed25fad65524af70d45ab193
     [ "decimal.hpp", "decimal_8hpp_source.html", null ],
     [ "decoder.hpp", "decoder_8hpp_source.html", null ],
     [ "delivery.hpp", "delivery_8hpp_source.html", null ],
+    [ "deque.hpp", "deque_8hpp_source.html", null ],
     [ "duration.hpp", "duration_8hpp_source.html", null ],
     [ "encoder.hpp", "encoder_8hpp_source.html", null ],
     [ "endpoint.hpp", "endpoint_8hpp_source.html", null ],
     [ "error.hpp", "error_8hpp_source.html", null ],
     [ "event.hpp", "event_8hpp_source.html", null ],
     [ "export.hpp", "export_8hpp_source.html", null ],
+    [ "forward_list.hpp", "forward__list_8hpp_source.html", null ],
     [ "handler.hpp", "handler_8hpp_source.html", null ],
     [ "io.hpp", "io_8hpp_source.html", null ],
     [ "link.hpp", "link_8hpp_source.html", null ],
     [ "link_options.hpp", "link__options_8hpp_source.html", null ],
+    [ "list.hpp", "list_8hpp_source.html", null ],
+    [ "map.hpp", "map_8hpp_source.html", null ],
     [ "message.hpp", "message_8hpp_source.html", null ],
     [ "message_id.hpp", "message__id_8hpp_source.html", null ],
     [ "object.hpp", "object_8hpp_source.html", null ],
@@ -42,9 +46,13 @@ var dir_659b8f7bed25fad65524af70d45ab193
     [ "terminus.hpp", "terminus_8hpp_source.html", null ],
     [ "timestamp.hpp", "timestamp_8hpp_source.html", null ],
     [ "transport.hpp", "transport_8hpp_source.html", null ],
+    [ "type_id.hpp", "type__id_8hpp_source.html", null ],
     [ "type_traits.hpp", "type__traits_8hpp_source.html", null ],
-    [ "types.hpp", "types_8hpp.html", "types_8hpp" ],
+    [ "types.hpp", "types_8hpp.html", null ],
+    [ "types_fwd.hpp", "types__fwd_8hpp.html", null ],
+    [ "unordered_map.hpp", "unordered__map_8hpp_source.html", null ],
     [ "url.hpp", "url_8hpp_source.html", null ],
     [ "uuid.hpp", "uuid_8hpp_source.html", null ],
-    [ "value.hpp", "value_8hpp_source.html", null ]
+    [ "value.hpp", "value_8hpp_source.html", null ],
+    [ "vector.hpp", "vector_8hpp_source.html", null ]
 ];
\ No newline at end of file

Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/direct_recv_8cpp-example.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/direct_recv_8cpp-example.html?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/direct_recv_8cpp-example.html (original)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/direct_recv_8cpp-example.html Thu Mar 24 12:41:32 2016
@@ -151,7 +151,7 @@ $(document).ready(function(){initNavTree
 <div class="line">        }</div>
 <div class="line">        </div>
 <div class="line">        <span class="keywordflow">if</span> (expected == 0 || received &lt; expected) {</div>
-<div class="line">            std::cout &lt;&lt; msg.<a name="a11"></a><a class="code" href="classproton_1_1message.html#ab28bab8ae43f7d731696cd717a65922c">body</a>() &lt;&lt; std::endl;</div>
+<div class="line">            std::cout &lt;&lt; msg.<a name="a11"></a><a class="code" href="classproton_1_1message.html#ae9af642f154a68ec0eb8e715ecaf95ae">body</a>() &lt;&lt; std::endl;</div>
 <div class="line">            received++;</div>
 <div class="line">        }</div>
 <div class="line">        </div>

Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/direct_send_8cpp-example.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/direct_send_8cpp-example.html?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/direct_send_8cpp-example.html (original)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/direct_send_8cpp-example.html Thu Mar 24 12:41:32 2016
@@ -152,7 +152,7 @@ $(document).ready(function(){initNavTree
 <div class="line">            m[<span class="stringliteral">&quot;sequence&quot;</span>] = sent + 1;</div>
 <div class="line"></div>
 <div class="line">            msg.<a name="a12"></a>id(sent + 1);</div>
-<div class="line">            msg.<a name="a13"></a><a class="code" href="classproton_1_1message.html#ab28bab8ae43f7d731696cd717a65922c">body</a>(m);</div>
+<div class="line">            msg.<a name="a13"></a><a class="code" href="classproton_1_1message.html#ae9af642f154a68ec0eb8e715ecaf95ae">body</a>(m);</div>
 <div class="line"></div>
 <div class="line">            sender.<a name="a14"></a><a class="code" href="classproton_1_1sender.html#aefaf5ace497245ca76c6c9d629ae7bee">send</a>(msg);</div>
 <div class="line">            sent++;</div>

Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/duration_8hpp_source.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/duration_8hpp_source.html?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/duration_8hpp_source.html (original)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/duration_8hpp_source.html Thu Mar 24 12:41:32 2016
@@ -117,9 +117,9 @@ $(document).ready(function(){initNavTree
 <div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment"> *</span></div>
 <div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment"> */</span></div>
 <div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;proton/export.hpp&quot;</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;proton/comparable.hpp&quot;</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="types_8hpp.html">proton/types.hpp</a>&quot;</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &lt;proton/export.hpp&gt;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &lt;proton/comparable.hpp&gt;</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="types__fwd_8hpp.html">proton/types_fwd.hpp</a>&gt;</span></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;<span class="preprocessor">#include &lt;iosfwd&gt;</span></div>
 <div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
@@ -158,7 +158,7 @@ $(document).ready(function(){initNavTree
 <div class="ttc" id="classproton_1_1duration_html"><div class="ttname"><a href="classproton_1_1duration.html">proton::duration</a></div><div class="ttdoc">A span of time in milliseconds. </div><div class="ttdef"><b>Definition:</b> duration.hpp:34</div></div>
 <div class="ttc" id="classproton_1_1comparable_html"><div class="ttname"><a href="classproton_1_1comparable.html">proton::comparable</a></div><div class="ttdoc">Base class for comparable types with operator< and operator==. </div><div class="ttdef"><b>Definition:</b> comparable.hpp:27</div></div>
 <div class="ttc" id="classproton_1_1duration_html_ab804de8e95dd6203d6e72e797440055e"><div class="ttname"><a href="classproton_1_1duration.html#ab804de8e95dd6203d6e72e797440055e">proton::duration::IMMEDIATE</a></div><div class="ttdeci">static const duration IMMEDIATE</div><div class="ttdoc">Don&#39;t wait at all. </div><div class="ttdef"><b>Definition:</b> duration.hpp:43</div></div>
-<div class="ttc" id="types_8hpp_html"><div class="ttname"><a href="types_8hpp.html">types.hpp</a></div><div class="ttdoc">Defines C++ types representing AMQP types. </div></div>
+<div class="ttc" id="types__fwd_8hpp_html"><div class="ttname"><a href="types__fwd_8hpp.html">types_fwd.hpp</a></div><div class="ttdoc">Forward declarations for all the C++ types used by proton to represent AMQP types. </div></div>
 <div class="ttc" id="classproton_1_1duration_html_aced1c394edccf069b2748d46965fb562"><div class="ttname"><a href="classproton_1_1duration.html#aced1c394edccf069b2748d46965fb562">proton::duration::SECOND</a></div><div class="ttdeci">static const duration SECOND</div><div class="ttdoc">One second. </div><div class="ttdef"><b>Definition:</b> duration.hpp:44</div></div>
 <div class="ttc" id="classproton_1_1duration_html_a437a5e5f6a7d0c8780f3594b2272cba0"><div class="ttname"><a href="classproton_1_1duration.html#a437a5e5f6a7d0c8780f3594b2272cba0">proton::duration::MINUTE</a></div><div class="ttdeci">static const duration MINUTE</div><div class="ttdoc">One minute. </div><div class="ttdef"><b>Definition:</b> duration.hpp:45</div></div>
 <div class="ttc" id="namespaceproton_html"><div class="ttname"><a href="namespaceproton.html">proton</a></div><div class="ttdef"><b>Definition:</b> acceptor.hpp:31</div></div>



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org