Modified: 
qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/type__traits_8hpp_source.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/type__traits_8hpp_source.html?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- 
qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/type__traits_8hpp_source.html
 (original)
+++ 
qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/type__traits_8hpp_source.html
 Thu Mar 24 12:41:32 2016
@@ -93,8 +93,8 @@ $(document).ready(function(){initNavTree
 <div class="title">type_traits.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 
TYPE_TRAITS_HPP</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    
2</span>&#160;<span class="preprocessor">#define TYPE_TRAITS_HPP</span></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span 
class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef 
PROTON_TYPE_TRAITS_HPP</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    
2</span>&#160;<span class="preprocessor">#define 
PROTON_TYPE_TRAITS_HPP</span></div>
 <div class="line"><a name="l00003"></a><span class="lineno">    
3</span>&#160;</div>
 <div class="line"><a name="l00004"></a><span class="lineno">    
4</span>&#160;<span class="comment">/*</span></div>
 <div class="line"><a name="l00005"></a><span class="lineno">    
5</span>&#160;<span class="comment"> * Licensed to the Apache Software 
Foundation (ASF) under one</span></div>
@@ -117,186 +117,142 @@ $(document).ready(function(){initNavTree
 <div class="line"><a name="l00022"></a><span class="lineno">   
22</span>&#160;</div>
 <div class="line"><a name="l00024"></a><span class="lineno">   
24</span>&#160;</div>
 <div class="line"><a name="l00031"></a><span class="lineno">   
31</span>&#160;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   
32</span>&#160;<span class="preprocessor">#include 
&quot;proton/config.hpp&quot;</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   
33</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="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><a class="code" 
href="namespaceproton.html">proton</a> {</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;<span class="keyword">class </span>binary;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   
38</span>&#160;<span class="keyword">class </span>decimal128;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   
39</span>&#160;<span class="keyword">class </span>decimal32;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   
40</span>&#160;<span class="keyword">class </span>decimal64;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   
41</span>&#160;<span class="keyword">class </span>scalar;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   
42</span>&#160;<span class="keyword">class </span>symbol;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   
43</span>&#160;<span class="keyword">class </span>timestamp;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   
44</span>&#160;<span class="keyword">class </span>uuid;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   
45</span>&#160;<span class="keyword">class </span>value;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   
46</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   
47</span>&#160;<span class="keyword">namespace </span>internal {</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   
48</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   
49</span>&#160;<span class="keyword">class </span>decoder;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   
50</span>&#160;<span class="keyword">class </span>encoder;</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="keyword">template</span> &lt;<span 
class="keywordtype">bool</span>, <span class="keyword">class</span> T=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>enable_if {};</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   
53</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>enable_if&lt;true, T&gt; { <span class="keyword">typedef</span> T type; 
};</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   
54</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   
55</span>&#160;<span class="keyword">struct </span>true_type { <span 
class="keyword">static</span> <span class="keyword">const</span> <span 
class="keywordtype">bool</span> value = <span class="keyword">true</span>; 
};</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   
56</span>&#160;<span class="keyword">struct </span>false_type { <span 
class="keyword">static</span> <span class="keyword">const</span> <span 
class="keywordtype">bool</span> value = <span class="keyword">false</span>; 
};</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="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>is_integral : <span class="keyword">public</span> false_type {};</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   
59</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>is_signed : <span class="keyword">public</span> false_type {};</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   
60</span>&#160;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   
61</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;char&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   
62</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;char&gt; : <span 
class="keyword">public</span> false_type {};</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   
32</span>&#160;<span class="preprocessor">#include 
&lt;proton/config.hpp&gt;</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   
33</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="l00034"></a><span class="lineno">   
34</span>&#160;<span class="preprocessor">#include 
&lt;proton/type_id.hpp&gt;</span></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;<span class="keyword">namespace </span><a class="code" 
href="namespaceproton.html">proton</a> {</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   
37</span>&#160;<span class="keyword">namespace </span>codec {</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   
38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   
39</span>&#160;<span class="keyword">class </span>decoder;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   
40</span>&#160;<span class="keyword">class </span>encoder;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   
41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   
42</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keywordtype">bool</span>, <span class="keyword">class</span> T=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>enable_if {};</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   
43</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>enable_if&lt;true, T&gt; { <span class="keyword">typedef</span> T type; 
};</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   
44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   
45</span>&#160;<span class="keyword">struct </span>true_type { <span 
class="keyword">static</span> <span class="keyword">const</span> <span 
class="keywordtype">bool</span> value = <span class="keyword">true</span>; 
};</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   
46</span>&#160;<span class="keyword">struct </span>false_type { <span 
class="keyword">static</span> <span class="keyword">const</span> <span 
class="keywordtype">bool</span> value = <span class="keyword">false</span>; 
};</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">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>is_integral : <span class="keyword">public</span> false_type {};</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   
49</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>is_signed : <span class="keyword">public</span> false_type {};</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;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;char&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   
52</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;char&gt; : <span 
class="keyword">public</span> false_type {};</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   
53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   
54</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned char&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   
55</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned short&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   
56</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned int&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   
57</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned long&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   
58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   
59</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed char&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   
60</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed short&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   
61</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed int&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   
62</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed long&gt; : <span 
class="keyword">public</span> true_type {};</div>
 <div class="line"><a name="l00063"></a><span class="lineno">   
63</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   
64</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned char&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   
65</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned short&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   
66</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned int&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   
67</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned long&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   
68</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   
69</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed char&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   
70</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed short&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   
71</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed int&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   
72</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed long&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   
73</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   
74</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;unsigned short&gt; : <span 
class="keyword">public</span> false_type {};</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   
75</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;unsigned int&gt; : <span 
class="keyword">public</span> false_type {};</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   
76</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;unsigned long&gt; : <span 
class="keyword">public</span> false_type {};</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">   
78</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed char&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   
79</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed short&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   
80</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed int&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   
81</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed long&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   
64</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;unsigned short&gt; : <span 
class="keyword">public</span> false_type {};</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   
65</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;unsigned int&gt; : <span 
class="keyword">public</span> false_type {};</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   
66</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;unsigned long&gt; : <span 
class="keyword">public</span> false_type {};</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   
67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   
68</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed char&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   
69</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed short&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   
70</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed int&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   
71</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed long&gt; : <span 
class="keyword">public</span> true_type {};</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">   
73</span>&#160;<span class="preprocessor">#if PN_CPP_HAS_LONG_LONG</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   
74</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned long long&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   
75</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed long long&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   
76</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;unsigned long long&gt; : <span 
class="keyword">public</span> false_type {};</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   
77</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed long long&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   
78</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   
79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   
80</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> U&gt; <span 
class="keyword">struct </span>is_same { <span class="keyword">static</span> 
<span class="keyword">const</span> <span class="keywordtype">bool</span> 
value=<span class="keyword">false</span>; };</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   
81</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>is_same&lt;T,T&gt; { <span class="keyword">static</span> <span 
class="keyword">const</span> <span class="keywordtype">bool</span> value=<span 
class="keyword">true</span>; };</div>
 <div class="line"><a name="l00082"></a><span class="lineno">   
82</span>&#160;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   
83</span>&#160;<span class="preprocessor">#if PN_CPP_HAS_LONG_LONG</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   
84</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;unsigned long long&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   
85</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_integral&lt;signed long long&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   
86</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;unsigned long long&gt; : <span 
class="keyword">public</span> false_type {};</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   
87</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_signed&lt;signed long long&gt; : <span 
class="keyword">public</span> true_type {};</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   
88</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno">   
89</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   
90</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> U&gt; <span 
class="keyword">struct </span>is_same { <span class="keyword">static</span> 
<span class="keyword">const</span> <span class="keywordtype">bool</span> 
value=<span class="keyword">false</span>; };</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   
91</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>is_same&lt;T,T&gt; { <span class="keyword">static</span> <span 
class="keyword">const</span> <span class="keywordtype">bool</span> value=<span 
class="keyword">true</span>; };</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   
92</span>&#160;</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   
93</span>&#160;<span class="keyword">template</span>&lt; <span 
class="keyword">class</span> T &gt; <span class="keyword">struct 
</span>remove_const          { <span class="keyword">typedef</span> T type; 
};</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   
94</span>&#160;<span class="keyword">template</span>&lt; <span 
class="keyword">class</span> T &gt; <span class="keyword">struct 
</span>remove_const&lt;const T&gt; { <span class="keyword">typedef</span> T 
type; };</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   
95</span>&#160;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   
96</span>&#160;<span class="keyword">template</span> &lt;type_<span 
class="keywordtype">id</span> ID&gt; <span class="keyword">struct 
</span>type_id_constant { <span class="keyword">static</span> <span 
class="keyword">const</span> type_id value = ID; };</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   
97</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   
98</span>&#160;<span class="comment">// Metafunction returning AMQP type for 
scalar C++ types.</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno">   
99</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> Enable=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>type_id_of;</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  
100</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;bool&gt; : <span 
class="keyword">public</span> type_id_constant&lt;BOOLEAN&gt; {};</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  
101</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uint8_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;UBYTE&gt; {};</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  
102</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;int8_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;BYTE&gt; {};</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  
103</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uint16_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;USHORT&gt; {};</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  
104</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;int16_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;SHORT&gt; {};</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  
105</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uint32_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;UINT&gt; {};</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  
106</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;int32_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;INT&gt; {};</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  
107</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uint64_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;ULONG&gt; {};</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  
108</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;int64_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;LONG&gt; {};</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  
109</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;wchar_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;CHAR&gt; {};</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  
110</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;timestamp&gt; : <span 
class="keyword">public</span> type_id_constant&lt;TIMESTAMP&gt; {};</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  
111</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;float&gt; : <span 
class="keyword">public</span> type_id_constant&lt;FLOAT&gt; {};</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  
112</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;double&gt; : <span 
class="keyword">public</span> type_id_constant&lt;DOUBLE&gt; {};</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  
113</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;decimal32&gt; : <span 
class="keyword">public</span> type_id_constant&lt;DECIMAL32&gt; {};</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  
114</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;decimal64&gt; : <span 
class="keyword">public</span> type_id_constant&lt;DECIMAL64&gt; {};</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  
115</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;decimal128&gt; : <span 
class="keyword">public</span> type_id_constant&lt;DECIMAL128&gt; {};</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  
116</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uuid&gt; : <span 
class="keyword">public</span> type_id_constant&lt;UUID&gt; {};</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  
117</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;binary&gt; : <span 
class="keyword">public</span> type_id_constant&lt;BINARY&gt; {};</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  
118</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;<a class="code" 
href="namespacestd.html">std</a>::string&gt; : <span 
class="keyword">public</span> type_id_constant&lt;STRING&gt; {};</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  
119</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;symbol&gt; : <span 
class="keyword">public</span> type_id_constant&lt;SYMBOL&gt; {};</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  
120</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;const char*&gt; : <span 
class="keyword">public</span> type_id_constant&lt;STRING&gt; {};</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  
121</span>&#160;</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  
122</span>&#160;<span class="comment">// Metafunction to test if a class has a 
type_id.</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno">  
123</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> Enable=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>has_type_id : <span class="keyword">public</span> false_type {};</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  
124</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>has_type_id&lt;T, typename 
enable_if&lt;!!type_id_of&lt;T&gt;::value&gt;::type&gt;  : <span 
class="keyword">public</span> true_type {};</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">  
126</span>&#160;<span class="comment">// Map arbitrary integral types to known 
AMQP integral types.</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno">  
127</span>&#160;<span class="keyword">template</span>&lt;<span 
class="keywordtype">size_t</span> SIZE, <span class="keywordtype">bool</span> 
IS_SIGNED&gt; <span class="keyword">struct </span>integer_type;</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  
128</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;1, true&gt; { <span 
class="keyword">typedef</span> int8_t type; };</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  
129</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;2, true&gt; { <span 
class="keyword">typedef</span> int16_t type; };</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  
130</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;4, true&gt; { <span 
class="keyword">typedef</span> int32_t type; };</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  
131</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;8, true&gt; { <span 
class="keyword">typedef</span> int64_t type; };</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  
132</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;1, false&gt; { <span 
class="keyword">typedef</span> uint8_t type; };</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  
133</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;2, false&gt; { <span 
class="keyword">typedef</span> uint16_t type; };</div>
-<div class="line"><a name="l00134"></a><span class="lineno">  
134</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;4, false&gt; { <span 
class="keyword">typedef</span> uint32_t type; };</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  
135</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;8, false&gt; { <span 
class="keyword">typedef</span> uint64_t type; };</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="comment">// True if T is an integer type that does 
not have an explicit type_id.</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno">  
138</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>is_unknown_integer {</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; 
   <span class="keyword">static</span> <span class="keyword">const</span> <span 
class="keywordtype">bool</span> value = !has_type_id&lt;T&gt;::value &amp;&amp; 
is_integral&lt;T&gt;::value;</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  
140</span>&#160;};</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  
141</span>&#160;</div>
-<div class="line"><a name="l00142"></a><span class="lineno">  
142</span>&#160;<span class="comment">// Types for SFINAE tests.</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  
143</span>&#160;<span class="keyword">typedef</span> <span 
class="keywordtype">char</span> yes;</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  
144</span>&#160;<span class="keyword">typedef</span> <span 
class="keywordtype">double</span> no;</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  
145</span>&#160;<span class="keyword">struct </span>wildcard { wildcard(...); 
};</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  
146</span>&#160;</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  
147</span>&#160;<span class="keyword">namespace </span>is_decodable_impl {   
<span class="comment">// Protected the world from wildcard 
operator&lt;&lt;</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno">  
148</span>&#160;</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  
149</span>&#160;no operator&gt;&gt;(wildcard, wildcard); <span 
class="comment">// Fallback</span></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">template</span>&lt;<span 
class="keyword">typename</span> T&gt; <span class="keyword">struct 
</span>is_decodable {</div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160; 
   <span class="keyword">static</span> <span class="keywordtype">char</span> 
test(decoder);</div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; 
   <span class="keyword">static</span> <span class="keywordtype">double</span> 
test(...);         <span class="comment">// Failed test, no match.</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; 
   <span class="keyword">static</span> decoder&amp; d;</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160; 
   <span class="keyword">static</span> T &amp;t;</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; 
   <span class="keyword">static</span> <span class="keywordtype">bool</span> 
<span class="keyword">const</span> value = (<span 
class="keyword">sizeof</span>(test(d &gt;&gt; t)) == <span 
class="keyword">sizeof</span>(yes));</div>
-<div class="line"><a name="l00157"></a><span class="lineno">  
157</span>&#160;};</div>
-<div class="line"><a name="l00158"></a><span class="lineno">  
158</span>&#160;} <span class="comment">// namespace 
is_decodable_impl</span></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;</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  
161</span>&#160;<span class="keyword">namespace </span>is_encodable_impl {   
<span class="comment">// Protected the world from wildcard 
operator&lt;&lt;</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno">  
162</span>&#160;</div>
-<div class="line"><a name="l00163"></a><span class="lineno">  
163</span>&#160;no operator&lt;&lt;(wildcard, wildcard); <span 
class="comment">// Fallback</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno">  
164</span>&#160;</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  
165</span>&#160;<span class="keyword">template</span>&lt;<span 
class="keyword">typename</span> T&gt; <span class="keyword">struct 
</span>is_encodable {</div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160; 
   <span class="keyword">static</span> yes test(encoder);</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160; 
   <span class="keyword">static</span> no test(...);         <span 
class="comment">// Failed test, no match.</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160; 
   <span class="keyword">static</span> encoder &amp;e;</div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; 
   <span class="keyword">static</span> <span class="keyword">const</span> 
T&amp; t;</div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160; 
   <span class="keyword">static</span> <span class="keywordtype">bool</span> 
<span class="keyword">const</span> value = <span 
class="keyword">sizeof</span>(test(e &lt;&lt; t)) == <span 
class="keyword">sizeof</span>(yes);</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="l00173"></a><span class="lineno">  
173</span>&#160;} <span class="comment">// namespace 
is_encodable_impl</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno">  
174</span>&#160;</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  
176</span>&#160;<span class="keyword">using</span> 
is_encodable_impl::is_encodable;</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  
177</span>&#160;</div>
-<div class="line"><a name="l00179"></a><span class="lineno">  
179</span>&#160;<span class="keyword">using</span> 
is_decodable_impl::is_decodable;</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  
180</span>&#160;</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">// Start encoding a complex 
type.</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno">  
183</span>&#160;<span class="keyword">struct </span>start {</div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160; 
   PN_CPP_EXTERN start(type_id type=NULL_TYPE, type_id element=NULL_TYPE, <span 
class="keywordtype">bool</span> described=<span class="keyword">false</span>, 
<span class="keywordtype">size_t</span> size=0);</div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160; 
   type_id type;            </div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160; 
   type_id element;         </div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160; 
   <span class="keywordtype">bool</span> is_described;       </div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160; 
   <span class="keywordtype">size_t</span> size;             </div>
-<div class="line"><a name="l00189"></a><span class="lineno">  
189</span>&#160;</div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160; 
   PN_CPP_EXTERN <span class="keyword">static</span> start array(type_id 
element, <span class="keywordtype">bool</span> described=<span 
class="keyword">false</span>);</div>
-<div class="line"><a name="l00192"></a><span class="lineno">  
192</span>&#160;</div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160; 
   PN_CPP_EXTERN <span class="keyword">static</span> start list();</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  
195</span>&#160;</div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160; 
   PN_CPP_EXTERN <span class="keyword">static</span> start map();</div>
-<div class="line"><a name="l00198"></a><span class="lineno">  
198</span>&#160;</div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160; 
   PN_CPP_EXTERN <span class="keyword">static</span> start described();</div>
-<div class="line"><a name="l00201"></a><span class="lineno">  
201</span>&#160;};</div>
-<div class="line"><a name="l00202"></a><span class="lineno">  
202</span>&#160;</div>
-<div class="line"><a name="l00204"></a><span class="lineno">  
204</span>&#160;<span class="keyword">struct </span>finish {};</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  
205</span>&#160;</div>
-<div class="line"><a name="l00206"></a><span class="lineno">  
206</span>&#160;} <span class="comment">// namespace internal</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno">  
207</span>&#160;</div>
-<div class="line"><a name="l00209"></a><span class="lineno">  
209</span>&#160;<span class="keyword">template</span>&lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> U=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>enable_amqp_type :</div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160; 
       <span class="keyword">public</span> 
internal::enable_if&lt;internal::is_encodable&lt;T&gt;::value, U&gt; {};</div>
-<div class="line"><a name="l00211"></a><span class="lineno">  
211</span>&#160;</div>
-<div class="line"><a name="l00213"></a><span class="lineno">  
213</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> U=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>enable_integer :</div>
-<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160; 
       <span class="keyword">public</span> 
internal::enable_if&lt;internal::is_unknown_integer&lt;T&gt;::value, U&gt; 
{};</div>
-<div class="line"><a name="l00215"></a><span class="lineno">  
215</span>&#160;} <span class="comment">// namespace proton</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno">  
216</span>&#160;</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="preprocessor">#endif // 
TYPE_TRAITS_HPP</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   
83</span>&#160;<span class="keyword">template</span>&lt; <span 
class="keyword">class</span> T &gt; <span class="keyword">struct 
</span>remove_const          { <span class="keyword">typedef</span> T type; 
};</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   
84</span>&#160;<span class="keyword">template</span>&lt; <span 
class="keyword">class</span> T &gt; <span class="keyword">struct 
</span>remove_const&lt;const T&gt; { <span class="keyword">typedef</span> T 
type; };</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   
85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   
86</span>&#160;<span class="keyword">template</span> &lt;type_<span 
class="keywordtype">id</span> ID&gt; <span class="keyword">struct 
</span>type_id_constant { <span class="keyword">static</span> <span 
class="keyword">const</span> type_id value = ID; };</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">   
88</span>&#160;<span class="comment">// Metafunction returning AMQP type for 
scalar C++ types.</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   
89</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> Enable=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>type_id_of;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   
90</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;bool&gt; : <span 
class="keyword">public</span> type_id_constant&lt;BOOLEAN&gt; {};</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   
91</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uint8_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;UBYTE&gt; {};</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   
92</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;int8_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;BYTE&gt; {};</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   
93</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uint16_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;USHORT&gt; {};</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   
94</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;int16_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;SHORT&gt; {};</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   
95</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uint32_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;UINT&gt; {};</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   
96</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;int32_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;INT&gt; {};</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   
97</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uint64_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;ULONG&gt; {};</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   
98</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;int64_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;LONG&gt; {};</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   
99</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;wchar_t&gt; : <span 
class="keyword">public</span> type_id_constant&lt;CHAR&gt; {};</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  
100</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;timestamp&gt; : <span 
class="keyword">public</span> type_id_constant&lt;TIMESTAMP&gt; {};</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  
101</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;float&gt; : <span 
class="keyword">public</span> type_id_constant&lt;FLOAT&gt; {};</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  
102</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;double&gt; : <span 
class="keyword">public</span> type_id_constant&lt;DOUBLE&gt; {};</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  
103</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;decimal32&gt; : <span 
class="keyword">public</span> type_id_constant&lt;DECIMAL32&gt; {};</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  
104</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;decimal64&gt; : <span 
class="keyword">public</span> type_id_constant&lt;DECIMAL64&gt; {};</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  
105</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;decimal128&gt; : <span 
class="keyword">public</span> type_id_constant&lt;DECIMAL128&gt; {};</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  
106</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;uuid&gt; : <span 
class="keyword">public</span> type_id_constant&lt;UUID&gt; {};</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  
107</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;binary&gt; : <span 
class="keyword">public</span> type_id_constant&lt;BINARY&gt; {};</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  
108</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;<a class="code" 
href="namespacestd.html">std</a>::string&gt; : <span 
class="keyword">public</span> type_id_constant&lt;STRING&gt; {};</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  
109</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;symbol&gt; : <span 
class="keyword">public</span> type_id_constant&lt;SYMBOL&gt; {};</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  
110</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>type_id_of&lt;const char*&gt; : <span 
class="keyword">public</span> type_id_constant&lt;STRING&gt; {};</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  
111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  
112</span>&#160;<span class="comment">// Metafunction to test if a class has a 
type_id.</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno">  
113</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> Enable=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>has_type_id : <span class="keyword">public</span> false_type {};</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  
114</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>has_type_id&lt;T, typename 
enable_if&lt;!!type_id_of&lt;T&gt;::value&gt;::type&gt;  : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  
115</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  
116</span>&#160;<span class="comment">// Map arbitrary integral types to known 
AMQP integral types.</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  
117</span>&#160;<span class="keyword">template</span>&lt;<span 
class="keywordtype">size_t</span> SIZE, <span class="keywordtype">bool</span> 
IS_SIGNED&gt; <span class="keyword">struct </span>integer_type;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  
118</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;1, true&gt; { <span 
class="keyword">typedef</span> int8_t type; };</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  
119</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;2, true&gt; { <span 
class="keyword">typedef</span> int16_t type; };</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  
120</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;4, true&gt; { <span 
class="keyword">typedef</span> int32_t type; };</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  
121</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;8, true&gt; { <span 
class="keyword">typedef</span> int64_t type; };</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  
122</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;1, false&gt; { <span 
class="keyword">typedef</span> uint8_t type; };</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  
123</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;2, false&gt; { <span 
class="keyword">typedef</span> uint16_t type; };</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  
124</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;4, false&gt; { <span 
class="keyword">typedef</span> uint32_t type; };</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  
125</span>&#160;<span class="keyword">template</span>&lt;&gt; <span 
class="keyword">struct </span>integer_type&lt;8, false&gt; { <span 
class="keyword">typedef</span> uint64_t type; };</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  
126</span>&#160;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  
127</span>&#160;<span class="comment">// True if T is an integer type that does 
not have an explicit type_id.</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  
128</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T&gt; <span class="keyword">struct 
</span>is_unknown_integer {</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; 
   <span class="keyword">static</span> <span class="keyword">const</span> <span 
class="keywordtype">bool</span> value = !has_type_id&lt;T&gt;::value &amp;&amp; 
is_integral&lt;T&gt;::value;</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  
130</span>&#160;};</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;<span class="keyword">namespace </span>is_encodable_impl {   
<span class="comment">// Protected the world from wildcard 
operator&lt;&lt;</span></div>
+<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="keyword">typedef</span> <span 
class="keywordtype">char</span> yes;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  
135</span>&#160;<span class="keyword">typedef</span> <span 
class="keywordtype">double</span> no;</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  
136</span>&#160;<span class="keyword">struct </span>wildcard { wildcard(...); 
};</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;no operator&lt;&lt;(wildcard, wildcard); <span 
class="comment">// Fallback</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  
139</span>&#160;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  
140</span>&#160;<span class="keyword">template</span>&lt;<span 
class="keyword">typename</span> T&gt; <span class="keyword">struct 
</span>is_encodable {</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; 
   <span class="keyword">static</span> yes test(encoder);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160; 
   <span class="keyword">static</span> no test(...);         <span 
class="comment">// Failed test, no match.</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; 
   <span class="keyword">static</span> encoder &amp;e;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; 
   <span class="keyword">static</span> <span class="keyword">const</span> 
T&amp; t;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160; 
   <span class="keyword">static</span> <span class="keywordtype">bool</span> 
<span class="keyword">const</span> value = <span 
class="keyword">sizeof</span>(test(e &lt;&lt; t)) == <span 
class="keyword">sizeof</span>(yes);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  
146</span>&#160;};</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  
147</span>&#160;<span class="comment">// Avoid recursion</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  
148</span>&#160;<span class="keyword">template</span> &lt;&gt; <span 
class="keyword">struct </span>is_encodable&lt;value&gt; : <span 
class="keyword">public</span> true_type {};</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  
149</span>&#160;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  
150</span>&#160;} <span class="comment">// namespace 
is_encodable_impl</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  
151</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  
153</span>&#160;<span class="keyword">using</span> 
is_encodable_impl::is_encodable;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  
154</span>&#160;</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  
156</span>&#160;<span class="keyword">template</span>&lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> U=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>enable_amqp_type :</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; 
       <span class="keyword">public</span> 
enable_if&lt;is_encodable&lt;T&gt;::value, U&gt; {};</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  
158</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  
160</span>&#160;<span class="keyword">template</span>&lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> U=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>assignable : enable_amqp_type&lt;T, U&gt; {};</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  
161</span>&#160;<span class="keyword">template</span>&lt;<span 
class="keyword">class</span> U&gt; <span class="keyword">struct 
</span>assignable&lt;value, U&gt; : <span class="keyword">public</span> 
false_type {};</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  
163</span>&#160;<span class="keyword">template</span> &lt;<span 
class="keyword">class</span> T, <span class="keyword">class</span> U=<span 
class="keywordtype">void</span>&gt; <span class="keyword">struct 
</span>enable_unknown_integer :</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160; 
       <span class="keyword">public</span> 
enable_if&lt;is_unknown_integer&lt;T&gt;::value, U&gt; {};</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;} <span class="comment">// internal</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  
167</span>&#160;} <span class="comment">// proton</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  
168</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  
169</span>&#160;<span class="preprocessor">#endif // 
PROTON_TYPE_TRAITS_HPP</span></div>
 <div class="ttc" id="namespacestd_html"><div class="ttname"><a 
href="namespacestd.html">std</a></div><div class="ttdoc">STL namespace. 
</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="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/types_8hpp.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/types_8hpp.html?rev=1736439&r1=1736438&r2=1736439&view=diff
==============================================================================
--- qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/types_8hpp.html 
(original)
+++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/api/types_8hpp.html 
Thu Mar 24 12:41:32 2016
@@ -89,130 +89,34 @@ $(document).ready(function(){initNavTree
 </div>
 
 <div class="header">
-  <div class="summary">
-<a href="#nested-classes">Classes</a> &#124;
-<a href="#enum-members">Enumerations</a> &#124;
-<a href="#func-members">Functions</a>  </div>
   <div class="headertitle">
 <div class="title">types.hpp File Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
 
-<p>Defines C++ types representing AMQP types.  
+<p>Include the definitions of all proton types used to represent AMQP types.  
 <a href="#details">More...</a></p>
-<div class="textblock"><code>#include &quot;proton/export.hpp&quot;</code><br 
/>
-<code>#include &quot;proton/error.hpp&quot;</code><br />
-<code>#include &lt;proton/codec.h&gt;</code><br />
-<code>#include &lt;proton/type_compat.h&gt;</code><br />
-<code>#include &lt;algorithm&gt;</code><br />
-<code>#include &lt;bitset&gt;</code><br />
-<code>#include &lt;string&gt;</code><br />
-<code>#include &lt;memory.h&gt;</code><br />
+<div class="textblock"><code>#include &lt;proton/binary.hpp&gt;</code><br />
+<code>#include &lt;proton/config.hpp&gt;</code><br />
+<code>#include &lt;proton/decimal.hpp&gt;</code><br />
+<code>#include &lt;proton/deque.hpp&gt;</code><br />
+<code>#include &lt;proton/duration.hpp&gt;</code><br />
+<code>#include &lt;proton/list.hpp&gt;</code><br />
+<code>#include &lt;proton/map.hpp&gt;</code><br />
+<code>#include &lt;proton/scalar.hpp&gt;</code><br />
+<code>#include &lt;proton/symbol.hpp&gt;</code><br />
+<code>#include &lt;proton/timestamp.hpp&gt;</code><br />
+<code>#include &lt;<a class="el" 
href="types__fwd_8hpp_source.html">proton/types_fwd.hpp</a>&gt;</code><br />
+<code>#include &lt;proton/uuid.hpp&gt;</code><br />
+<code>#include &lt;proton/value.hpp&gt;</code><br />
+<code>#include &lt;proton/vector.hpp&gt;</code><br />
+<code>#include &lt;proton/annotation_key.hpp&gt;</code><br />
+<code>#include &lt;proton/message_id.hpp&gt;</code><br />
 </div>
 <p><a href="types_8hpp_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="nested-classes"></a>
-Classes</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct 
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="structproton_1_1amqp__string.html">amqp_string</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">AMQP UTF-8 encoded string.  <a 
href="structproton_1_1amqp__string.html#details">More...</a><br /></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct 
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="structproton_1_1amqp__symbol.html">amqp_symbol</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">AMQP ASCII encoded symbolic name.  <a 
href="structproton_1_1amqp__symbol.html#details">More...</a><br /></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct 
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="structproton_1_1amqp__binary.html">amqp_binary</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">AMQP variable-length binary data.  <a 
href="structproton_1_1amqp__binary.html#details">More...</a><br /></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="enum-members"></a>
-Enumerations</h2></td></tr>
-<tr class="memitem:a83c2656d467d69eb49725c18f5aa13a9"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a83c2656d467d69eb49725c18f5aa13a9"></a>enum &#160;</td><td 
class="memItemRight" valign="bottom"><b>type_id</b> { <br />
-&#160;&#160;<b>NULL_TYPE</b>, 
-<b>BOOLEAN</b>, 
-<b>UBYTE</b>, 
-<b>BYTE</b>, 
-<br />
-&#160;&#160;<b>USHORT</b>, 
-<b>SHORT</b>, 
-<b>UINT</b>, 
-<b>INT</b>, 
-<br />
-&#160;&#160;<b>CHAR</b>, 
-<b>ULONG</b>, 
-<b>LONG</b>, 
-<b>TIMESTAMP</b>, 
-<br />
-&#160;&#160;<b>FLOAT</b>, 
-<b>DOUBLE</b>, 
-<b>DECIMAL32</b>, 
-<b>DECIMAL64</b>, 
-<br />
-&#160;&#160;<b>DECIMAL128</b>, 
-<b>UUID</b>, 
-<b>BINARY</b>, 
-<b>STRING</b>, 
-<br />
-&#160;&#160;<b>SYMBOL</b>, 
-<b>DESCRIBED</b>, 
-<b>ARRAY</b>, 
-<b>LIST</b>, 
-<br />
-&#160;&#160;<b>MAP</b>
-<br />
- }<tr class="memdesc:a83c2656d467d69eb49725c18f5aa13a9"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">An identifier for AMQP 
types. <br /></td></tr>
-<tr class="separator:a83c2656d467d69eb49725c18f5aa13a9"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a777b2887e8ee3a66e56ca9468007b586"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a777b2887e8ee3a66e56ca9468007b586"></a>
-std::string&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_name</b> (type_id)</td></tr>
-<tr class="memdesc:a777b2887e8ee3a66e56ca9468007b586"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of the AMQP 
type. <br /></td></tr>
-<tr class="separator:a777b2887e8ee3a66e56ca9468007b586"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ab66d1f0ed892a0f0c7192b8092d4ff15"><td class="memItemLeft" 
align="right" valign="top">std::ostream &amp;&#160;</td><td 
class="memItemRight" valign="bottom"><b>operator&lt;&lt;</b> (std::ostream 
&amp;, type_id)</td></tr>
-<tr class="memdesc:ab66d1f0ed892a0f0c7192b8092d4ff15"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Print the type name.  <a 
href="namespaceproton.html#ab66d1f0ed892a0f0c7192b8092d4ff15">More...</a><br 
/></td></tr>
-<tr class="separator:ab66d1f0ed892a0f0c7192b8092d4ff15"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr><td colspan="2"><div class="groupHeader">Type test 
functions</div></td></tr>
-<tr><td colspan="2"><div class="groupText"><p>Attributes of a type_id value, 
returns same result as the corresponding std::type_traits tests for the 
corresponding C++ types. </p>
-</div></td></tr>
-<tr class="memitem:a11a47938601e791c922c4be4ca0d026b"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a11a47938601e791c922c4be4ca0d026b"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_scalar</b> (type_id)</td></tr>
-<tr class="memdesc:a11a47938601e791c922c4be4ca0d026b"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Any scalar type. <br 
/></td></tr>
-<tr class="separator:a11a47938601e791c922c4be4ca0d026b"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6ab655358407f94bdc47075e5494c90a"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a6ab655358407f94bdc47075e5494c90a"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_signed_int</b> (type_id)</td></tr>
-<tr class="memdesc:a6ab655358407f94bdc47075e5494c90a"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">One of the signed integer 
types: BYTE, SHORT, INT or LONG. <br /></td></tr>
-<tr class="separator:a6ab655358407f94bdc47075e5494c90a"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a874686e7483db8ad384ace0c7a896fe6"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a874686e7483db8ad384ace0c7a896fe6"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_unsigned_int</b> (type_id)</td></tr>
-<tr class="memdesc:a874686e7483db8ad384ace0c7a896fe6"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">One of the unsigned integer 
types: UBYTE, USHORT, UINT or ULONG. <br /></td></tr>
-<tr class="separator:a874686e7483db8ad384ace0c7a896fe6"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0bb748941169c9fc7d95b3a11f89a6d5"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a0bb748941169c9fc7d95b3a11f89a6d5"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_integral</b> (type_id)</td></tr>
-<tr class="memdesc:a0bb748941169c9fc7d95b3a11f89a6d5"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Any of the signed or 
unsigned integers, BOOL, CHAR or TIMESTAMP. <br /></td></tr>
-<tr class="separator:a0bb748941169c9fc7d95b3a11f89a6d5"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:acde40b9efbc1f6324bc0f371a1138070"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="acde40b9efbc1f6324bc0f371a1138070"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_floating_point</b> (type_id)</td></tr>
-<tr class="memdesc:acde40b9efbc1f6324bc0f371a1138070"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">A floating point type, 
float or double. <br /></td></tr>
-<tr class="separator:acde40b9efbc1f6324bc0f371a1138070"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a13ed589c553eeeaf10dc205446633f05"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a13ed589c553eeeaf10dc205446633f05"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_signed</b> (type_id)</td></tr>
-<tr class="memdesc:a13ed589c553eeeaf10dc205446633f05"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Any signed integer, float 
or double. BOOL, CHAR and TIMESTAMP are not signed. <br /></td></tr>
-<tr class="separator:a13ed589c553eeeaf10dc205446633f05"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a94448cfda0117d2db415e0995561c542"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a94448cfda0117d2db415e0995561c542"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_decimal</b> (type_id)</td></tr>
-<tr class="memdesc:a94448cfda0117d2db415e0995561c542"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Any DECIMAL type. <br 
/></td></tr>
-<tr class="separator:a94448cfda0117d2db415e0995561c542"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a209009aae46f15f61e82a8c82ad78365"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a209009aae46f15f61e82a8c82ad78365"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_string_like</b> (type_id)</td></tr>
-<tr class="memdesc:a209009aae46f15f61e82a8c82ad78365"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">STRING, SYMBOL or BINARY. 
<br /></td></tr>
-<tr class="separator:a209009aae46f15f61e82a8c82ad78365"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aac605d6f5c6592b3fefe8eafa5c146d9"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="aac605d6f5c6592b3fefe8eafa5c146d9"></a>
-bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>type_id_is_container</b> (type_id)</td></tr>
-<tr class="memdesc:aac605d6f5c6592b3fefe8eafa5c146d9"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Container types: MAP, LIST, 
ARRAY or DESCRIBED. <br /></td></tr>
-<tr class="separator:aac605d6f5c6592b3fefe8eafa5c146d9"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed 
Description</h2>
-<div class="textblock"><p>Defines C++ types representing AMQP types. </p>
+<div class="textblock"><p>Include the definitions of all proton types used to 
represent AMQP types. </p>
+<p>Provided for convenience, you can include types individually instead. </p>
 </div></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to