msgpack/c/unpack__template_8h.html
2016-04-03 23:53:04 +09:00

939 lines
56 KiB
HTML

<!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.11"/>
<title>MessagePack for C: /home/kondo/work/msgpack-c/include/msgpack/unpack_template.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="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">MessagePack for C
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<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>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<!-- 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 id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_dd2411636cfeb3780831d8d9eec9249e.html">msgpack</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">unpack_template.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><a href="unpack__template_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:adf4de7c7b08f8bdcd96e4c7384f3b004"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#adf4de7c7b08f8bdcd96e4c7384f3b004">msgpack_unpack_struct_decl</a>(name)&#160;&#160;&#160;<a class="el" href="unpack__template_8h.html#af71b9d7588844dc0c1c20a314e565ed8">msgpack_unpack_struct</a>(name)</td></tr>
<tr class="separator:adf4de7c7b08f8bdcd96e4c7384f3b004"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb659c75b743810bd1f0ab986de241ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#acb659c75b743810bd1f0ab986de241ed">USE_CASE_RANGE</a></td></tr>
<tr class="separator:acb659c75b743810bd1f0ab986de241ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfd0acf1ea01e66b8c61ce608e1b78be"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#adfd0acf1ea01e66b8c61ce608e1b78be">push_simple_value</a>(func)</td></tr>
<tr class="separator:adfd0acf1ea01e66b8c61ce608e1b78be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46417ce00cfb7e3f392f03710c3636eb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a46417ce00cfb7e3f392f03710c3636eb">push_fixed_value</a>(func, arg)</td></tr>
<tr class="separator:a46417ce00cfb7e3f392f03710c3636eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00420e6e05239e21720869a9e257916d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a00420e6e05239e21720869a9e257916d">push_variable_value</a>(func, base, pos, <a class="el" href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a>)</td></tr>
<tr class="separator:a00420e6e05239e21720869a9e257916d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac347e298ce35c9371ef9a3b0642cee4a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ac347e298ce35c9371ef9a3b0642cee4a">again_fixed_trail</a>(_cs, trail_len)</td></tr>
<tr class="separator:ac347e298ce35c9371ef9a3b0642cee4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaab3437d6e7661d6161d4a6e5f7a90e1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#aaab3437d6e7661d6161d4a6e5f7a90e1">again_fixed_trail_if_zero</a>(_cs, trail_len, ifzero)</td></tr>
<tr class="separator:aaab3437d6e7661d6161d4a6e5f7a90e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e8756959cdef05b5e6ea6865c99c3fd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a2e8756959cdef05b5e6ea6865c99c3fd">start_container</a>(func, count_, ct_)</td></tr>
<tr class="separator:a2e8756959cdef05b5e6ea6865c99c3fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0923a17c963a5d4da1cd9099964dc821"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a0923a17c963a5d4da1cd9099964dc821">NEXT_CS</a>(<a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a>)&#160;&#160;&#160;((unsigned int)*<a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a> &amp; 0x1f)</td></tr>
<tr class="separator:a0923a17c963a5d4da1cd9099964dc821"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9688edc0a11e67a7076ea4a115f5e8de"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a9688edc0a11e67a7076ea4a115f5e8de">SWITCH_RANGE_BEGIN</a>&#160;&#160;&#160;<a class="el" href="unpack__template_8h.html#aab4b1a60769c24fd1bef99a207f07370">switch</a>(*<a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a>) {</td></tr>
<tr class="separator:a9688edc0a11e67a7076ea4a115f5e8de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7facb231d8f8ddfe24d09a39c3f026da"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a7facb231d8f8ddfe24d09a39c3f026da">SWITCH_RANGE</a>(FROM, TO)&#160;&#160;&#160;case FROM ... TO:</td></tr>
<tr class="separator:a7facb231d8f8ddfe24d09a39c3f026da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f1a657950021a72295344cb4855617f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a7f1a657950021a72295344cb4855617f">SWITCH_RANGE_DEFAULT</a>&#160;&#160;&#160;default:</td></tr>
<tr class="separator:a7f1a657950021a72295344cb4855617f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4360e9d464f2f500152d932f089a5c9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ad4360e9d464f2f500152d932f089a5c9">SWITCH_RANGE_END</a>&#160;&#160;&#160;}</td></tr>
<tr class="separator:ad4360e9d464f2f500152d932f089a5c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ae06722c827be56489f4bab5df5236c5a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ae06722c827be56489f4bab5df5236c5a">msgpack_unpack_struct_decl</a> (_stack)</td></tr>
<tr class="separator:ae06722c827be56489f4bab5df5236c5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32e06210e611703a7e935a649e715372"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a32e06210e611703a7e935a649e715372">msgpack_unpack_struct_decl</a> (_context)</td></tr>
<tr class="separator:a32e06210e611703a7e935a649e715372"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a544ebed8cc966b8299a8677d6b932a6d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a544ebed8cc966b8299a8677d6b932a6d">msgpack_unpack_func</a> (void, _init)(<a class="el" href="unpack__template_8h.html#af71b9d7588844dc0c1c20a314e565ed8">msgpack_unpack_struct</a>(_context)*ctx)</td></tr>
<tr class="separator:a544ebed8cc966b8299a8677d6b932a6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79c6e7d27ba1f7a92b8cffc3acb827a3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a79c6e7d27ba1f7a92b8cffc3acb827a3">msgpack_unpack_func</a> (msgpack_unpack_object, _data)(<a class="el" href="unpack__template_8h.html#af71b9d7588844dc0c1c20a314e565ed8">msgpack_unpack_struct</a>(_context)*ctx)</td></tr>
<tr class="separator:a79c6e7d27ba1f7a92b8cffc3acb827a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cc6adc1eb47a69239fb1e1e1d5b76c9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a7cc6adc1eb47a69239fb1e1e1d5b76c9">msgpack_unpack_func</a> (int, _execute)(<a class="el" href="unpack__template_8h.html#af71b9d7588844dc0c1c20a314e565ed8">msgpack_unpack_struct</a>(_context)*ctx</td></tr>
<tr class="separator:a7cc6adc1eb47a69239fb1e1e1d5b76c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af71b9d7588844dc0c1c20a314e565ed8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#af71b9d7588844dc0c1c20a314e565ed8">msgpack_unpack_struct</a> (_stack)*stack = NULL</td></tr>
<tr class="separator:af71b9d7588844dc0c1c20a314e565ed8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d6bcfaad03e5deefab30eb0c7f092cc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc">if</a> (<a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a>==<a class="el" href="unpack__template_8h.html#aad446ce4ab0397f1e269f15e906fad40">pe</a>)</td></tr>
<tr class="separator:a9d6bcfaad03e5deefab30eb0c7f092cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab4b1a60769c24fd1bef99a207f07370"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#aab4b1a60769c24fd1bef99a207f07370">switch</a> (c-&gt;ct)</td></tr>
<tr class="separator:aab4b1a60769c24fd1bef99a207f07370"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fafa25475ff2a6db08544093e032826"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a1fafa25475ff2a6db08544093e032826">while</a> (p!=<a class="el" href="unpack__template_8h.html#aad446ce4ab0397f1e269f15e906fad40">pe</a>)</td></tr>
<tr class="separator:a1fafa25475ff2a6db08544093e032826"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a8f64897c7ccc5c13f276d1d07c4e7095"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a8f64897c7ccc5c13f276d1d07c4e7095">data</a></td></tr>
<tr class="separator:a8f64897c7ccc5c13f276d1d07c4e7095"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac16e956eac9f5c3180afa8e80d4f098c"><td class="memItemLeft" align="right" valign="top">const char size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a></td></tr>
<tr class="separator:ac16e956eac9f5c3180afa8e80d4f098c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6685eca32e2433680e732402740608c5"><td class="memItemLeft" align="right" valign="top">const char size_t size_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a6685eca32e2433680e732402740608c5">off</a></td></tr>
<tr class="separator:a6685eca32e2433680e732402740608c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad446ce4ab0397f1e269f15e906fad40"><td class="memItemLeft" align="right" valign="top">const unsigned char *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#aad446ce4ab0397f1e269f15e906fad40">pe</a> = (unsigned char*)<a class="el" href="unpack__template_8h.html#a8f64897c7ccc5c13f276d1d07c4e7095">data</a> + <a class="el" href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a></td></tr>
<tr class="separator:aad446ce4ab0397f1e269f15e906fad40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0abf3aa6474a7dc506ca7e663f719805"><td class="memItemLeft" align="right" valign="top">const void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a0abf3aa6474a7dc506ca7e663f719805">n</a> = NULL</td></tr>
<tr class="separator:a0abf3aa6474a7dc506ca7e663f719805"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af58f26cf5e7d426664169406c293433a"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#af58f26cf5e7d426664169406c293433a">trail</a> = ctx-&gt;trail</td></tr>
<tr class="separator:af58f26cf5e7d426664169406c293433a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62ed1336fc8e1441c0b7604555ef2a6b"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a62ed1336fc8e1441c0b7604555ef2a6b">cs</a> = ctx-&gt;cs</td></tr>
<tr class="separator:a62ed1336fc8e1441c0b7604555ef2a6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0969a3e9a982977956277ffad9ba1467"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a> = ctx-&gt;top</td></tr>
<tr class="separator:a0969a3e9a982977956277ffad9ba1467"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae37b38fee2bcd3f95af17f231df30d75"><td class="memItemLeft" align="right" valign="top">msgpack_unpack_user *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a> = &amp;ctx-&gt;user</td></tr>
<tr class="separator:ae37b38fee2bcd3f95af17f231df30d75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7429f43bc65dddd5e9896cdd0a9bd44"><td class="memItemLeft" align="right" valign="top">msgpack_unpack_object&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a></td></tr>
<tr class="separator:ab7429f43bc65dddd5e9896cdd0a9bd44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a339672ff94e6199019102f50d317c3d7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a339672ff94e6199019102f50d317c3d7">ret</a> = 1</td></tr>
<tr class="separator:a339672ff94e6199019102f50d317c3d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a721c6ff80a6d3e4ad4ffa52a04c60085"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a721c6ff80a6d3e4ad4ffa52a04c60085">do</a></td></tr>
<tr class="separator:a721c6ff80a6d3e4ad4ffa52a04c60085"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a013749d9c9ab9bc8658e917e76bb0223"><td class="memItemLeft" align="right" valign="top">_header_again&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a013749d9c9ab9bc8658e917e76bb0223">__pad0__</a></td></tr>
<tr class="separator:a013749d9c9ab9bc8658e917e76bb0223"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac483f6ce851c9ecd9fb835ff7551737c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a></td></tr>
<tr class="separator:ac483f6ce851c9ecd9fb835ff7551737c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26f0202824a72470dfd23c0af7e57f8c"><td class="memItemLeft" align="right" valign="top">goto&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a26f0202824a72470dfd23c0af7e57f8c">_out</a></td></tr>
<tr class="separator:a26f0202824a72470dfd23c0af7e57f8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a929e213f9c990364f380e5f3bbc4b16c"><td class="memItemLeft" align="right" valign="top">_finish&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a929e213f9c990364f380e5f3bbc4b16c">__pad1__</a></td></tr>
<tr class="separator:a929e213f9c990364f380e5f3bbc4b16c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7479e7c6e44102ac31dfe94b9cf4bf3"><td class="memItemLeft" align="right" valign="top">goto&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ad7479e7c6e44102ac31dfe94b9cf4bf3">_end</a></td></tr>
<tr class="separator:ad7479e7c6e44102ac31dfe94b9cf4bf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b120bf513cb39765ec0c196107d4636"><td class="memItemLeft" align="right" valign="top">_failed&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a7b120bf513cb39765ec0c196107d4636">__pad2__</a></td></tr>
<tr class="separator:a7b120bf513cb39765ec0c196107d4636"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16fd030488bb62a29437a463741bfd42"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unpack__template_8h.html#a26f0202824a72470dfd23c0af7e57f8c">_out</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#a16fd030488bb62a29437a463741bfd42">__pad3__</a></td></tr>
<tr class="separator:a16fd030488bb62a29437a463741bfd42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad15796bfce617674c972d2f434d77eb5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unpack__template_8h.html#ad7479e7c6e44102ac31dfe94b9cf4bf3">_end</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unpack__template_8h.html#ad15796bfce617674c972d2f434d77eb5">__pad4__</a></td></tr>
<tr class="separator:ad15796bfce617674c972d2f434d77eb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="ac347e298ce35c9371ef9a3b0642cee4a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define again_fixed_trail</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">_cs, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">trail_len&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="unpack__template_8h.html#af58f26cf5e7d426664169406c293433a">trail</a> = trail_len; <a class="code" href="unpack__template_8h.html#a62ed1336fc8e1441c0b7604555ef2a6b">\</a></div><div class="line"><a class="code" href="unpack__template_8h.html#a62ed1336fc8e1441c0b7604555ef2a6b"> cs</a> = _cs; \</div><div class="line"> goto _fixed_trail_again</div><div class="ttc" id="unpack__template_8h_html_af58f26cf5e7d426664169406c293433a"><div class="ttname"><a href="unpack__template_8h.html#af58f26cf5e7d426664169406c293433a">trail</a></div><div class="ttdeci">unsigned int trail</div><div class="ttdef"><b>Definition:</b> unpack_template.h:97</div></div>
<div class="ttc" id="unpack__template_8h_html_a62ed1336fc8e1441c0b7604555ef2a6b"><div class="ttname"><a href="unpack__template_8h.html#a62ed1336fc8e1441c0b7604555ef2a6b">cs</a></div><div class="ttdeci">unsigned int cs</div><div class="ttdef"><b>Definition:</b> unpack_template.h:98</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="aaab3437d6e7661d6161d4a6e5f7a90e1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define again_fixed_trail_if_zero</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">_cs, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">trail_len, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ifzero&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="unpack__template_8h.html#af58f26cf5e7d426664169406c293433a">trail</a> = trail_len; <a class="code" href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc">\</a></div><div class="line"><a class="code" href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc"> if</a>(<a class="code" href="unpack__template_8h.html#af58f26cf5e7d426664169406c293433a">trail</a> == 0) { <span class="keywordflow">goto</span> ifzero; } <a class="code" href="unpack__template_8h.html#a62ed1336fc8e1441c0b7604555ef2a6b">\</a></div><div class="line"><a class="code" href="unpack__template_8h.html#a62ed1336fc8e1441c0b7604555ef2a6b"> cs</a> = _cs; \</div><div class="line"> goto _fixed_trail_again</div><div class="ttc" id="unpack__template_8h_html_a9d6bcfaad03e5deefab30eb0c7f092cc"><div class="ttname"><a href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc">if</a></div><div class="ttdeci">if(p==pe)</div><div class="ttdef"><b>Definition:</b> unpack_template.h:177</div></div>
<div class="ttc" id="unpack__template_8h_html_af58f26cf5e7d426664169406c293433a"><div class="ttname"><a href="unpack__template_8h.html#af58f26cf5e7d426664169406c293433a">trail</a></div><div class="ttdeci">unsigned int trail</div><div class="ttdef"><b>Definition:</b> unpack_template.h:97</div></div>
<div class="ttc" id="unpack__template_8h_html_a62ed1336fc8e1441c0b7604555ef2a6b"><div class="ttname"><a href="unpack__template_8h.html#a62ed1336fc8e1441c0b7604555ef2a6b">cs</a></div><div class="ttdeci">unsigned int cs</div><div class="ttdef"><b>Definition:</b> unpack_template.h:98</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="adf4de7c7b08f8bdcd96e4c7384f3b004"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define msgpack_unpack_struct_decl</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">name</td><td>)</td>
<td>&#160;&#160;&#160;<a class="el" href="unpack__template_8h.html#af71b9d7588844dc0c1c20a314e565ed8">msgpack_unpack_struct</a>(name)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a0923a17c963a5d4da1cd9099964dc821"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NEXT_CS</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a></td><td>)</td>
<td>&#160;&#160;&#160;((unsigned int)*<a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a> &amp; 0x1f)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a46417ce00cfb7e3f392f03710c3636eb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define push_fixed_value</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">func, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">arg&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span>(msgpack_unpack_callback(func)(<a class="code" href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a>, arg, &amp;<a class="code" href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a>) &lt; 0) { <span class="keywordflow">goto</span> _failed; } \</div><div class="line"> goto _push</div><div class="ttc" id="unpack__template_8h_html_ae37b38fee2bcd3f95af17f231df30d75"><div class="ttname"><a href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a></div><div class="ttdeci">msgpack_unpack_user * user</div><div class="ttdef"><b>Definition:</b> unpack_template.h:104</div></div>
<div class="ttc" id="unpack__template_8h_html_ab7429f43bc65dddd5e9896cdd0a9bd44"><div class="ttname"><a href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a></div><div class="ttdeci">msgpack_unpack_object obj</div><div class="ttdef"><b>Definition:</b> unpack_template.h:106</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="adfd0acf1ea01e66b8c61ce608e1b78be"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define push_simple_value</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">func</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span>(msgpack_unpack_callback(func)(<a class="code" href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a>, &amp;<a class="code" href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a>) &lt; 0) { <span class="keywordflow">goto</span> _failed; } \</div><div class="line"> goto _push</div><div class="ttc" id="unpack__template_8h_html_ae37b38fee2bcd3f95af17f231df30d75"><div class="ttname"><a href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a></div><div class="ttdeci">msgpack_unpack_user * user</div><div class="ttdef"><b>Definition:</b> unpack_template.h:104</div></div>
<div class="ttc" id="unpack__template_8h_html_ab7429f43bc65dddd5e9896cdd0a9bd44"><div class="ttname"><a href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a></div><div class="ttdeci">msgpack_unpack_object obj</div><div class="ttdef"><b>Definition:</b> unpack_template.h:106</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a00420e6e05239e21720869a9e257916d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define push_variable_value</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">func, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">base, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">pos, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><a class="el" href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span>(msgpack_unpack_callback(func)(<a class="code" href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a>, \</div><div class="line"> (<span class="keyword">const</span> <span class="keywordtype">char</span>*)base, (<span class="keyword">const</span> <span class="keywordtype">char</span>*)pos, <a class="code" href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a>, &amp;<a class="code" href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a>) &lt; 0) { <span class="keywordflow">goto</span> _failed; } \</div><div class="line"> goto _push</div><div class="ttc" id="unpack__template_8h_html_ae37b38fee2bcd3f95af17f231df30d75"><div class="ttname"><a href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a></div><div class="ttdeci">msgpack_unpack_user * user</div><div class="ttdef"><b>Definition:</b> unpack_template.h:104</div></div>
<div class="ttc" id="unpack__template_8h_html_ab7429f43bc65dddd5e9896cdd0a9bd44"><div class="ttname"><a href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a></div><div class="ttdeci">msgpack_unpack_object obj</div><div class="ttdef"><b>Definition:</b> unpack_template.h:106</div></div>
<div class="ttc" id="unpack__template_8h_html_ac16e956eac9f5c3180afa8e80d4f098c"><div class="ttname"><a href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a></div><div class="ttdeci">const char size_t len</div><div class="ttdef"><b>Definition:</b> unpack_template.h:89</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a2e8756959cdef05b5e6ea6865c99c3fd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define start_container</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">func, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">count_, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ct_&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span>(<a class="code" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a> &gt;= <a class="code" href="unpack__define_8h.html#a73561a830b73e287b02c0ce3c84d34ac">MSGPACK_EMBED_STACK_SIZE</a>) { <span class="keywordflow">goto</span> _failed; } <span class="comment">/* FIXME */</span> <a class="code" href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc">\</a></div><div class="line"><a class="code" href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc"> if</a>(msgpack_unpack_callback(func)(<a class="code" href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a>, count_, &amp;stack[<a class="code" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a>].<a class="code" href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a>) &lt; 0) { <span class="keywordflow">goto</span> _failed; } <a class="code" href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc">\</a></div><div class="line"><a class="code" href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc"> if</a>((count_) == 0) { <a class="code" href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a> = stack[<a class="code" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a>].obj; <span class="keywordflow">goto</span> _push; } \</div><div class="line"> stack[<a class="code" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a>].ct = ct_; \</div><div class="line"> stack[<a class="code" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a>].count = count_; \</div><div class="line"> ++<a class="code" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a>; \</div><div class="line"> <span class="comment">/*printf(&quot;container %d count %d stack %d\n&quot;,stack[top].obj,count_,top);*/</span> \</div><div class="line"> <span class="comment">/*printf(&quot;stack push %d\n&quot;, top);*/</span> \</div><div class="line"> <span class="comment">/* FIXME \</span></div><div class="line"><span class="comment"> if(top &gt;= stack_size) { \</span></div><div class="line"><span class="comment"> if(stack_size == MSGPACK_EMBED_STACK_SIZE) { \</span></div><div class="line"><span class="comment"> size_t csize = sizeof(msgpack_unpack_struct(_stack)) * MSGPACK_EMBED_STACK_SIZE; \</span></div><div class="line"><span class="comment"> size_t nsize = csize * 2; \</span></div><div class="line"><span class="comment"> msgpack_unpack_struct(_stack)* tmp = (msgpack_unpack_struct(_stack)*)malloc(nsize); \</span></div><div class="line"><span class="comment"> if(tmp == NULL) { goto _failed; } \</span></div><div class="line"><span class="comment"> memcpy(tmp, ctx-&gt;stack, csize); \</span></div><div class="line"><span class="comment"> ctx-&gt;stack = stack = tmp; \</span></div><div class="line"><span class="comment"> ctx-&gt;stack_size = stack_size = MSGPACK_EMBED_STACK_SIZE * 2; \</span></div><div class="line"><span class="comment"> } else { \</span></div><div class="line"><span class="comment"> size_t nsize = sizeof(msgpack_unpack_struct(_stack)) * ctx-&gt;stack_size * 2; \</span></div><div class="line"><span class="comment"> msgpack_unpack_struct(_stack)* tmp = (msgpack_unpack_struct(_stack)*)realloc(ctx-&gt;stack, nsize); \</span></div><div class="line"><span class="comment"> if(tmp == NULL) { goto _failed; } \</span></div><div class="line"><span class="comment"> ctx-&gt;stack = stack = tmp; \</span></div><div class="line"><span class="comment"> ctx-&gt;stack_size = stack_size = stack_size * 2; \</span></div><div class="line"><span class="comment"> } \</span></div><div class="line"><span class="comment"> } \</span></div><div class="line"><span class="comment"> */</span> \</div><div class="line"> goto _header_again</div><div class="ttc" id="unpack__template_8h_html_ae37b38fee2bcd3f95af17f231df30d75"><div class="ttname"><a href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a></div><div class="ttdeci">msgpack_unpack_user * user</div><div class="ttdef"><b>Definition:</b> unpack_template.h:104</div></div>
<div class="ttc" id="unpack__define_8h_html_a73561a830b73e287b02c0ce3c84d34ac"><div class="ttname"><a href="unpack__define_8h.html#a73561a830b73e287b02c0ce3c84d34ac">MSGPACK_EMBED_STACK_SIZE</a></div><div class="ttdeci">#define MSGPACK_EMBED_STACK_SIZE</div><div class="ttdef"><b>Definition:</b> unpack_define.h:25</div></div>
<div class="ttc" id="unpack__template_8h_html_a9d6bcfaad03e5deefab30eb0c7f092cc"><div class="ttname"><a href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc">if</a></div><div class="ttdeci">if(p==pe)</div><div class="ttdef"><b>Definition:</b> unpack_template.h:177</div></div>
<div class="ttc" id="unpack__template_8h_html_ab7429f43bc65dddd5e9896cdd0a9bd44"><div class="ttname"><a href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a></div><div class="ttdeci">msgpack_unpack_object obj</div><div class="ttdef"><b>Definition:</b> unpack_template.h:106</div></div>
<div class="ttc" id="unpack__template_8h_html_a0969a3e9a982977956277ffad9ba1467"><div class="ttname"><a href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a></div><div class="ttdeci">unsigned int top</div><div class="ttdef"><b>Definition:</b> unpack_template.h:99</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="a7facb231d8f8ddfe24d09a39c3f026da"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SWITCH_RANGE</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">FROM, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">TO&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;case FROM ... TO:</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a9688edc0a11e67a7076ea4a115f5e8de"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SWITCH_RANGE_BEGIN&#160;&#160;&#160;<a class="el" href="unpack__template_8h.html#aab4b1a60769c24fd1bef99a207f07370">switch</a>(*<a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a>) {</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a7f1a657950021a72295344cb4855617f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SWITCH_RANGE_DEFAULT&#160;&#160;&#160;default:</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ad4360e9d464f2f500152d932f089a5c9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SWITCH_RANGE_END&#160;&#160;&#160;}</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="acb659c75b743810bd1f0ab986de241ed"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define USE_CASE_RANGE</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a9d6bcfaad03e5deefab30eb0c7f092cc"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">if </td>
<td>(</td>
<td class="paramtype"><a class="el" href="unpack__template_8h.html#ac483f6ce851c9ecd9fb835ff7551737c">p</a>&#160;</td>
<td class="paramname"> = <code>=&#160;<a class="el" href="unpack__template_8h.html#aad446ce4ab0397f1e269f15e906fad40">pe</a></code></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="unpack__template_8h.html#a26f0202824a72470dfd23c0af7e57f8c">_out</a>.</p>
</div>
</div>
<a class="anchor" id="a544ebed8cc966b8299a8677d6b932a6d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">msgpack_unpack_func </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">_init&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="unpack__define_8h.html#abf18a117e7573ae99ee87f2ebc7fb767ad20b2b03caae3e63d50b8d8884a84ad0">MSGPACK_CS_HEADER</a>.</p>
</div>
</div>
<a class="anchor" id="a79c6e7d27ba1f7a92b8cffc3acb827a3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">msgpack_unpack_func </td>
<td>(</td>
<td class="paramtype">msgpack_unpack_object&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">_data&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a7cc6adc1eb47a69239fb1e1e1d5b76c9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">msgpack_unpack_func </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">_execute&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="af71b9d7588844dc0c1c20a314e565ed8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">msgpack_unpack_struct </td>
<td>(</td>
<td class="paramtype">_stack&#160;</td>
<td class="paramname"></td><td>)</td>
<td> = NULL</td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="unpack__template_8h.html#a32e06210e611703a7e935a649e715372">msgpack_unpack_struct_decl()</a>.</p>
</div>
</div>
<a class="anchor" id="ae06722c827be56489f4bab5df5236c5a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">msgpack_unpack_struct_decl </td>
<td>(</td>
<td class="paramtype">_stack&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a>.</p>
</div>
</div>
<a class="anchor" id="a32e06210e611703a7e935a649e715372"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">msgpack_unpack_struct_decl </td>
<td>(</td>
<td class="paramtype">_context&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="unpack__template_8h.html#a62ed1336fc8e1441c0b7604555ef2a6b">cs</a>, <a class="el" href="unpack__define_8h.html#a73561a830b73e287b02c0ce3c84d34ac">MSGPACK_EMBED_STACK_SIZE</a>, <a class="el" href="unpack__template_8h.html#af71b9d7588844dc0c1c20a314e565ed8">msgpack_unpack_struct()</a>, <a class="el" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a>, <a class="el" href="unpack__template_8h.html#af58f26cf5e7d426664169406c293433a">trail</a>, and <a class="el" href="unpack__template_8h.html#ae37b38fee2bcd3f95af17f231df30d75">user</a>.</p>
</div>
</div>
<a class="anchor" id="aab4b1a60769c24fd1bef99a207f07370"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">switch </td>
<td>(</td>
<td class="paramtype">c-&gt;&#160;</td>
<td class="paramname"><em>ct</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="unpack__define_8h.html#a63df257b6571b2d8e501718983105deba02e2850113fe87b00f6a852445875e60">MSGPACK_CT_ARRAY_ITEM</a>, <a class="el" href="unpack__define_8h.html#a63df257b6571b2d8e501718983105debac66dcd761d8942e0ba0d52f876ae601d">MSGPACK_CT_MAP_KEY</a>, <a class="el" href="unpack__define_8h.html#a63df257b6571b2d8e501718983105deba2e55e4ea2866a5d162374a9bd2eec398">MSGPACK_CT_MAP_VALUE</a>, <a class="el" href="unpack__template_8h.html#ab7429f43bc65dddd5e9896cdd0a9bd44">obj</a>, and <a class="el" href="unpack__template_8h.html#a0969a3e9a982977956277ffad9ba1467">top</a>.</p>
</div>
</div>
<a class="anchor" id="a1fafa25475ff2a6db08544093e032826"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">while </td>
<td>(</td>
<td class="paramtype">p!&#160;</td>
<td class="paramname"> = <code><a class="el" href="unpack__template_8h.html#aad446ce4ab0397f1e269f15e906fad40">pe</a></code></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="a013749d9c9ab9bc8658e917e76bb0223"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">_header_again __pad0__</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a929e213f9c990364f380e5f3bbc4b16c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">_finish __pad1__</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a7b120bf513cb39765ec0c196107d4636"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">_failed __pad2__</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a16fd030488bb62a29437a463741bfd42"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="unpack__template_8h.html#a26f0202824a72470dfd23c0af7e57f8c">_out</a> __pad3__</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ad15796bfce617674c972d2f434d77eb5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="unpack__template_8h.html#ad7479e7c6e44102ac31dfe94b9cf4bf3">_end</a> __pad4__</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ad7479e7c6e44102ac31dfe94b9cf4bf3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">goto _end</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a26f0202824a72470dfd23c0af7e57f8c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">goto _out</td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="unpack__template_8h.html#a9d6bcfaad03e5deefab30eb0c7f092cc">if()</a>.</p>
</div>
</div>
<a class="anchor" id="a62ed1336fc8e1441c0b7604555ef2a6b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int cs = ctx-&gt;cs</td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="unpack__template_8h.html#a32e06210e611703a7e935a649e715372">msgpack_unpack_struct_decl()</a>.</p>
</div>
</div>
<a class="anchor" id="a8f64897c7ccc5c13f276d1d07c4e7095"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* data</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a721c6ff80a6d3e4ad4ffa52a04c60085"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">do</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ac16e956eac9f5c3180afa8e80d4f098c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char size_t len</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a0abf3aa6474a7dc506ca7e663f719805"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const void* n = NULL</td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="pack__template_8h.html#afa96e659cffa3682e32070fff5903669">_array()</a>, and <a class="el" href="pack__template_8h.html#a7bbe9197c4b9fc932c5da4a68ab7831c">_map()</a>.</p>
</div>
</div>
<a class="anchor" id="ab7429f43bc65dddd5e9896cdd0a9bd44"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">msgpack_unpack_object obj</td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="unpack__template_8h.html#ae06722c827be56489f4bab5df5236c5a">msgpack_unpack_struct_decl()</a>, and <a class="el" href="unpack__template_8h.html#aab4b1a60769c24fd1bef99a207f07370">switch()</a>.</p>
</div>
</div>
<a class="anchor" id="a6685eca32e2433680e732402740608c5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">* off</td>
</tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">{</div><div class="line"> assert(<a class="code" href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a> &gt;= *<a class="code" href="unpack__template_8h.html#a6685eca32e2433680e732402740608c5">off</a>)</div><div class="ttc" id="unpack__template_8h_html_a6685eca32e2433680e732402740608c5"><div class="ttname"><a href="unpack__template_8h.html#a6685eca32e2433680e732402740608c5">off</a></div><div class="ttdeci">const char size_t size_t * off</div><div class="ttdef"><b>Definition:</b> unpack_template.h:90</div></div>
<div class="ttc" id="unpack__template_8h_html_ac16e956eac9f5c3180afa8e80d4f098c"><div class="ttname"><a href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a></div><div class="ttdeci">const char size_t len</div><div class="ttdef"><b>Definition:</b> unpack_template.h:89</div></div>
</div><!-- fragment -->
</div>
</div>
<a class="anchor" id="ac483f6ce851c9ecd9fb835ff7551737c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">p</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aad446ce4ab0397f1e269f15e906fad40"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const unsigned char* const pe = (unsigned char*)<a class="el" href="unpack__template_8h.html#a8f64897c7ccc5c13f276d1d07c4e7095">data</a> + <a class="el" href="unpack__template_8h.html#ac16e956eac9f5c3180afa8e80d4f098c">len</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a339672ff94e6199019102f50d317c3d7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">return ret = 1</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a0969a3e9a982977956277ffad9ba1467"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ctx top = ctx-&gt;top</td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="unpack__template_8h.html#a32e06210e611703a7e935a649e715372">msgpack_unpack_struct_decl()</a>, and <a class="el" href="unpack__template_8h.html#aab4b1a60769c24fd1bef99a207f07370">switch()</a>.</p>
</div>
</div>
<a class="anchor" id="af58f26cf5e7d426664169406c293433a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ctx trail = ctx-&gt;trail</td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="unpack__template_8h.html#a32e06210e611703a7e935a649e715372">msgpack_unpack_struct_decl()</a>.</p>
</div>
</div>
<a class="anchor" id="ae37b38fee2bcd3f95af17f231df30d75"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">msgpack_unpack_user* user = &amp;ctx-&gt;user</td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="unpack__template_8h.html#a32e06210e611703a7e935a649e715372">msgpack_unpack_struct_decl()</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>