src.dualinventive.com/jjacobs/dinetrpcll-sniffer/libdi/3rdparty/mpack/docs/group__common.html

880 lines
51 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>MPack: Common Elements</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" />
<link href="doxygen-mpack-css.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">MPack
&#160;<span id="projectnumber">0.8.2</span>
</div>
<div id="projectbrief">A C encoding/decoding library for the MessagePack serialization format.</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="pages.html"><span>Pages</span></a></li>
<li class="current"><a href="modules.html"><span>Modules</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><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Common Elements</div> </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Description</h2>
<p>Contains types, constants and functions shared by both the encoding and decoding portions of MPack. </p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:structmpack__tag__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a></td></tr>
<tr class="memdesc:structmpack__tag__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">An MPack tag is a MessagePack object header. <a href="group__common.html#structmpack__tag__t">More...</a><br /></td></tr>
<tr class="separator:structmpack__tag__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:unionmpack__tag__t_8v"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#unionmpack__tag__t_8v">mpack_tag_t.v</a></td></tr>
<tr class="memdesc:unionmpack__tag__t_8v"><td class="mdescLeft">&#160;</td><td class="mdescRight">The value for non-compound types. <a href="group__common.html#unionmpack__tag__t_8v">More...</a><br /></td></tr>
<tr class="separator:unionmpack__tag__t_8v"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga38de074080bdd2554c23bdbcff720ebb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga38de074080bdd2554c23bdbcff720ebb">MPACK_LIBRARY_STRING</a></td></tr>
<tr class="memdesc:ga38de074080bdd2554c23bdbcff720ebb"><td class="mdescLeft">&#160;</td><td class="mdescRight">A string describing MPack, containing the library name, version and debug mode. <a href="#ga38de074080bdd2554c23bdbcff720ebb">More...</a><br /></td></tr>
<tr class="separator:ga38de074080bdd2554c23bdbcff720ebb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5a31c82e48e37c8ceeb3a17ae3ed1ebe"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga5a31c82e48e37c8ceeb3a17ae3ed1ebe">MPACK_VERSION</a></td></tr>
<tr class="memdesc:ga5a31c82e48e37c8ceeb3a17ae3ed1ebe"><td class="mdescLeft">&#160;</td><td class="mdescRight">A number containing the version number of MPack for comparison purposes. <a href="#ga5a31c82e48e37c8ceeb3a17ae3ed1ebe">More...</a><br /></td></tr>
<tr class="separator:ga5a31c82e48e37c8ceeb3a17ae3ed1ebe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1ea07f6899bfd9d22cddcb87ea9aeedc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga1ea07f6899bfd9d22cddcb87ea9aeedc">MPACK_VERSION_AT_LEAST</a>(major, minor, patch)&#160;&#160;&#160;(<a class="el" href="group__common.html#ga5a31c82e48e37c8ceeb3a17ae3ed1ebe">MPACK_VERSION</a> &gt;= (((major) * 10000) + ((minor) * 100) + (patch)))</td></tr>
<tr class="memdesc:ga1ea07f6899bfd9d22cddcb87ea9aeedc"><td class="mdescLeft">&#160;</td><td class="mdescRight">A macro to test for a minimum version of MPack. <a href="#ga1ea07f6899bfd9d22cddcb87ea9aeedc">More...</a><br /></td></tr>
<tr class="separator:ga1ea07f6899bfd9d22cddcb87ea9aeedc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaebab06d0583dbde63f0efe079c17aa99"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gaebab06d0583dbde63f0efe079c17aa99">MPACK_VERSION_MAJOR</a>&#160;&#160;&#160;0</td></tr>
<tr class="memdesc:gaebab06d0583dbde63f0efe079c17aa99"><td class="mdescLeft">&#160;</td><td class="mdescRight">The major version number of MPack. <a href="#gaebab06d0583dbde63f0efe079c17aa99">More...</a><br /></td></tr>
<tr class="separator:gaebab06d0583dbde63f0efe079c17aa99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga52c251cf33faf26bf8405e1d0a8648e1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga52c251cf33faf26bf8405e1d0a8648e1">MPACK_VERSION_MINOR</a>&#160;&#160;&#160;8</td></tr>
<tr class="memdesc:ga52c251cf33faf26bf8405e1d0a8648e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">The minor version number of MPack. <a href="#ga52c251cf33faf26bf8405e1d0a8648e1">More...</a><br /></td></tr>
<tr class="separator:ga52c251cf33faf26bf8405e1d0a8648e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3e836544ced44daa6f194288f7db9868"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga3e836544ced44daa6f194288f7db9868">MPACK_VERSION_PATCH</a>&#160;&#160;&#160;2</td></tr>
<tr class="memdesc:ga3e836544ced44daa6f194288f7db9868"><td class="mdescLeft">&#160;</td><td class="mdescRight">The patch version number of MPack. <a href="#ga3e836544ced44daa6f194288f7db9868">More...</a><br /></td></tr>
<tr class="separator:ga3e836544ced44daa6f194288f7db9868"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacd1814c8320b862ae0c10d2a14e629ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gacd1814c8320b862ae0c10d2a14e629ed">MPACK_VERSION_STRING</a></td></tr>
<tr class="memdesc:gacd1814c8320b862ae0c10d2a14e629ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">A string containing the MPack version. <a href="#gacd1814c8320b862ae0c10d2a14e629ed">More...</a><br /></td></tr>
<tr class="separator:gacd1814c8320b862ae0c10d2a14e629ed"><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:ga9d9f282ca4183ab5190e09d04c1f74c4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga9d9f282ca4183ab5190e09d04c1f74c4">mpack_error_t</a> { <br />
&#160;&#160;<a class="el" href="group__common.html#gga9d9f282ca4183ab5190e09d04c1f74c4a642a07519ef145fc9dd1068230c4a661">mpack_ok</a> = 0,
<a class="el" href="group__common.html#gga9d9f282ca4183ab5190e09d04c1f74c4a6581b50527f1c278f852c91bea70f847">mpack_error_io</a> = 2,
<a class="el" href="group__common.html#gga9d9f282ca4183ab5190e09d04c1f74c4a6d6111704fd59c034f9958c353c6da93">mpack_error_invalid</a>,
<a class="el" href="group__common.html#gga9d9f282ca4183ab5190e09d04c1f74c4ac91d0dcefbb9c7b9f41403bbc674aef2">mpack_error_type</a>,
<br />
&#160;&#160;<a class="el" href="group__common.html#gga9d9f282ca4183ab5190e09d04c1f74c4a575cd33925a41fe7c157162b233b8308">mpack_error_too_big</a>,
<a class="el" href="group__common.html#gga9d9f282ca4183ab5190e09d04c1f74c4a39db970382d81fc5a4b80dd0b61df5cf">mpack_error_memory</a>,
<a class="el" href="group__common.html#gga9d9f282ca4183ab5190e09d04c1f74c4ae35afae5a24379821fa74315be1aa0d6">mpack_error_bug</a>,
<a class="el" href="group__common.html#gga9d9f282ca4183ab5190e09d04c1f74c4ae53cbed8fcc42915d71ae37d121b22e8">mpack_error_data</a>
<br />
}<tr class="memdesc:ga9d9f282ca4183ab5190e09d04c1f74c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error states for MPack objects. <a href="group__common.html#ga9d9f282ca4183ab5190e09d04c1f74c4">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga9d9f282ca4183ab5190e09d04c1f74c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga22f03cf1240d5a917e1b3e7be8ab327e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga22f03cf1240d5a917e1b3e7be8ab327e">mpack_type_t</a> { <br />
&#160;&#160;<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327eaade66ddfcf1133c0ac00015ab26bd2b4">mpack_type_nil</a> = 1,
<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327ea09eeb9595c0537ed4cdf2b11a4dd4d59">mpack_type_bool</a>,
<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327eab1614d2e0ffe43791a22db286b95d39b">mpack_type_float</a>,
<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327ea46d1cf5028e3a0113be8edd73648a7ca">mpack_type_double</a>,
<br />
&#160;&#160;<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327eab3ad5f31d28f4102ec5b9eee498f186e">mpack_type_int</a>,
<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327eae163adb67a277a223bbfe62ff3d42654">mpack_type_uint</a>,
<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327ea1e84e3b33ffa7dfc3bde110bd9455d12">mpack_type_str</a>,
<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327ea7b364aaa7af779777366ab36df2b3eb6">mpack_type_bin</a>,
<br />
&#160;&#160;<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327ea7ccd85daa1ad40a83cc64484420510ee">mpack_type_ext</a>,
<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327eabc1bfe5856870df99fa51a39923e6349">mpack_type_array</a>,
<a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327ea0cdc6eb2c069333405d0d23602f7006a">mpack_type_map</a>
<br />
}<tr class="memdesc:ga22f03cf1240d5a917e1b3e7be8ab327e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines the type of a MessagePack tag. <a href="group__common.html#ga22f03cf1240d5a917e1b3e7be8ab327e">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga22f03cf1240d5a917e1b3e7be8ab327e"><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:gae275cfb03fa60ffac086ae2230c3d470"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gae275cfb03fa60ffac086ae2230c3d470">mpack_error_to_string</a> (<a class="el" href="group__common.html#ga9d9f282ca4183ab5190e09d04c1f74c4">mpack_error_t</a> error)</td></tr>
<tr class="memdesc:gae275cfb03fa60ffac086ae2230c3d470"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts an MPack error to a string. <a href="#gae275cfb03fa60ffac086ae2230c3d470">More...</a><br /></td></tr>
<tr class="separator:gae275cfb03fa60ffac086ae2230c3d470"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga31f7f337ff772a8e91af5e8394287ef4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga31f7f337ff772a8e91af5e8394287ef4">mpack_tag_array</a> (int32_t count)</td></tr>
<tr class="memdesc:ga31f7f337ff772a8e91af5e8394287ef4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates an array tag. <a href="#ga31f7f337ff772a8e91af5e8394287ef4">More...</a><br /></td></tr>
<tr class="separator:ga31f7f337ff772a8e91af5e8394287ef4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad193672644de9af88290b598ff8d2b8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gad193672644de9af88290b598ff8d2b8c">mpack_tag_bin</a> (int32_t length)</td></tr>
<tr class="memdesc:gad193672644de9af88290b598ff8d2b8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a bin tag. <a href="#gad193672644de9af88290b598ff8d2b8c">More...</a><br /></td></tr>
<tr class="separator:gad193672644de9af88290b598ff8d2b8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaafdb8f338605dfb8bf1e1edb6c07940e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gaafdb8f338605dfb8bf1e1edb6c07940e">mpack_tag_bool</a> (bool value)</td></tr>
<tr class="memdesc:gaafdb8f338605dfb8bf1e1edb6c07940e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a bool tag. <a href="#gaafdb8f338605dfb8bf1e1edb6c07940e">More...</a><br /></td></tr>
<tr class="separator:gaafdb8f338605dfb8bf1e1edb6c07940e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga959a1299fde759b8fab2341cfb1355b8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga959a1299fde759b8fab2341cfb1355b8">mpack_tag_cmp</a> (<a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> left, <a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> right)</td></tr>
<tr class="memdesc:ga959a1299fde759b8fab2341cfb1355b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two tags with an arbitrary fixed ordering. <a href="#ga959a1299fde759b8fab2341cfb1355b8">More...</a><br /></td></tr>
<tr class="separator:ga959a1299fde759b8fab2341cfb1355b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac9f0e0d6573ffafb1536ee6f02b742b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gac9f0e0d6573ffafb1536ee6f02b742b6">mpack_tag_double</a> (double value)</td></tr>
<tr class="memdesc:gac9f0e0d6573ffafb1536ee6f02b742b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a double tag. <a href="#gac9f0e0d6573ffafb1536ee6f02b742b6">More...</a><br /></td></tr>
<tr class="separator:gac9f0e0d6573ffafb1536ee6f02b742b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6278d8f1818309765fb7e30c14440b23"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga6278d8f1818309765fb7e30c14440b23">mpack_tag_equal</a> (<a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> left, <a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> right)</td></tr>
<tr class="memdesc:ga6278d8f1818309765fb7e30c14440b23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two tags for equality. <a href="#ga6278d8f1818309765fb7e30c14440b23">More...</a><br /></td></tr>
<tr class="separator:ga6278d8f1818309765fb7e30c14440b23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa6c5f417a0c6e24d71965105b700dc90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gaa6c5f417a0c6e24d71965105b700dc90">mpack_tag_ext</a> (int8_t exttype, int32_t length)</td></tr>
<tr class="memdesc:gaa6c5f417a0c6e24d71965105b700dc90"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates an ext tag. <a href="#gaa6c5f417a0c6e24d71965105b700dc90">More...</a><br /></td></tr>
<tr class="separator:gaa6c5f417a0c6e24d71965105b700dc90"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaff6b2c99bc922aa51e138cc9b16717e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gaaff6b2c99bc922aa51e138cc9b16717e">mpack_tag_false</a> (void)</td></tr>
<tr class="memdesc:gaaff6b2c99bc922aa51e138cc9b16717e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a bool tag with value false. <a href="#gaaff6b2c99bc922aa51e138cc9b16717e">More...</a><br /></td></tr>
<tr class="separator:gaaff6b2c99bc922aa51e138cc9b16717e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9323e7f5d3f615fcab945ff909fa5673"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga9323e7f5d3f615fcab945ff909fa5673">mpack_tag_float</a> (float value)</td></tr>
<tr class="memdesc:ga9323e7f5d3f615fcab945ff909fa5673"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a float tag. <a href="#ga9323e7f5d3f615fcab945ff909fa5673">More...</a><br /></td></tr>
<tr class="separator:ga9323e7f5d3f615fcab945ff909fa5673"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga79fe4bddaffe6ebe8d97e362fe90ee5c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga79fe4bddaffe6ebe8d97e362fe90ee5c">mpack_tag_int</a> (int64_t value)</td></tr>
<tr class="memdesc:ga79fe4bddaffe6ebe8d97e362fe90ee5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a signed int tag. <a href="#ga79fe4bddaffe6ebe8d97e362fe90ee5c">More...</a><br /></td></tr>
<tr class="separator:ga79fe4bddaffe6ebe8d97e362fe90ee5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9d0c0c98bad176e48b23878a7b1eae4f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga9d0c0c98bad176e48b23878a7b1eae4f">mpack_tag_map</a> (int32_t count)</td></tr>
<tr class="memdesc:ga9d0c0c98bad176e48b23878a7b1eae4f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a map tag. <a href="#ga9d0c0c98bad176e48b23878a7b1eae4f">More...</a><br /></td></tr>
<tr class="separator:ga9d0c0c98bad176e48b23878a7b1eae4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7dddc1921b402cd058bd32099db02fd0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga7dddc1921b402cd058bd32099db02fd0">mpack_tag_nil</a> (void)</td></tr>
<tr class="memdesc:ga7dddc1921b402cd058bd32099db02fd0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a nil tag. <a href="#ga7dddc1921b402cd058bd32099db02fd0">More...</a><br /></td></tr>
<tr class="separator:ga7dddc1921b402cd058bd32099db02fd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga583cda927620b566cbd7b75df0555ea6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga583cda927620b566cbd7b75df0555ea6">mpack_tag_str</a> (int32_t length)</td></tr>
<tr class="memdesc:ga583cda927620b566cbd7b75df0555ea6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a str tag. <a href="#ga583cda927620b566cbd7b75df0555ea6">More...</a><br /></td></tr>
<tr class="separator:ga583cda927620b566cbd7b75df0555ea6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9408e69df94e21714579edfc95736006"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga9408e69df94e21714579edfc95736006">mpack_tag_true</a> (void)</td></tr>
<tr class="memdesc:ga9408e69df94e21714579edfc95736006"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a bool tag with value true. <a href="#ga9408e69df94e21714579edfc95736006">More...</a><br /></td></tr>
<tr class="separator:ga9408e69df94e21714579edfc95736006"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3e808c63fa0ba040429f955249791d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#gae3e808c63fa0ba040429f955249791d2">mpack_tag_uint</a> (uint64_t value)</td></tr>
<tr class="memdesc:gae3e808c63fa0ba040429f955249791d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates an unsigned int tag. <a href="#gae3e808c63fa0ba040429f955249791d2">More...</a><br /></td></tr>
<tr class="separator:gae3e808c63fa0ba040429f955249791d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3b259cbb9ea12088346ff897676219d0"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__common.html#ga3b259cbb9ea12088346ff897676219d0">mpack_type_to_string</a> (<a class="el" href="group__common.html#ga22f03cf1240d5a917e1b3e7be8ab327e">mpack_type_t</a> type)</td></tr>
<tr class="memdesc:ga3b259cbb9ea12088346ff897676219d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts an MPack type to a string. <a href="#ga3b259cbb9ea12088346ff897676219d0">More...</a><br /></td></tr>
<tr class="separator:ga3b259cbb9ea12088346ff897676219d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="structmpack__tag__t" id="structmpack__tag__t"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct mpack_tag_t</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"><p>An MPack tag is a MessagePack object header. </p>
<p>It is a variant type representing any kind of object, and includes the value of that object when it is not a compound type (i.e. boolean, integer, float.)</p>
<p>If the type is compound (str, bin, ext, array or map), the embedded data is stored separately. </p>
</div><table class="fieldtable">
<tr><th colspan="3">Data Fields</th></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a0c1418b74471e182e9501fd52cfb321b"></a>int8_t</td>
<td class="fieldname">
exttype</td>
<td class="fielddoc">
The extension type if the type is <a class="el" href="group__common.html#gga22f03cf1240d5a917e1b3e7be8ab327ea7ccd85daa1ad40a83cc64484420510ee">mpack_type_ext</a>. </td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a9007289a2703c97f9e33f925fbaf333e"></a><a class="el" href="group__common.html#ga22f03cf1240d5a917e1b3e7be8ab327e">mpack_type_t</a></td>
<td class="fieldname">
type</td>
<td class="fielddoc">
The type of value. </td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a29d6190659348d14c346ec7617eacd68"></a>union <a class="el" href="group__common.html#unionmpack__tag__t_8v">mpack_tag_t</a></td>
<td class="fieldname">
v</td>
<td class="fielddoc">
The value for non-compound types. </td></tr>
</table>
</div>
</div>
<a name="unionmpack__tag__t_8v" id="unionmpack__tag__t_8v"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">union mpack_tag_t.v</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"><p>The value for non-compound types. </p>
</div><table class="fieldtable">
<tr><th colspan="3">Data Fields</th></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a92eb5ffee6ae2fec3ad71c777531578f"></a>bool</td>
<td class="fieldname">
b</td>
<td class="fielddoc">
The value if the type is bool. </td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a8277e0910d750195b448797616e091ad"></a>double</td>
<td class="fieldname">
d</td>
<td class="fielddoc">
The value if the type is double. </td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a8fa14cdd754f91cc6554c9e71929cce7"></a>float</td>
<td class="fieldname">
f</td>
<td class="fielddoc">
The value if the type is float. </td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a865c0c0b4ab0e063e5caa3387c1a8741"></a>int64_t</td>
<td class="fieldname">
i</td>
<td class="fielddoc">
The value if the type is signed int. </td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a2db95e8e1a9267b7a1188556b2013b33"></a>uint32_t</td>
<td class="fieldname">
l</td>
<td class="fielddoc">
The number of bytes if the type is str, bin or ext. </td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a7b8b965ad4bca0e41ab51de7b31363a1"></a>uint32_t</td>
<td class="fieldname">
n</td>
<td class="fielddoc">
The element count if the type is an array, or the number of key/value pairs if the type is map. </td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a7b774effe4a349c6dd82ad4f4f21d34c"></a>uint64_t</td>
<td class="fieldname">
u</td>
<td class="fielddoc">
The value if the type is unsigned int. </td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="ga38de074080bdd2554c23bdbcff720ebb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MPACK_LIBRARY_STRING</td>
</tr>
</table>
</div><div class="memdoc">
<p>A string describing MPack, containing the library name, version and debug mode. </p>
</div>
</div>
<a class="anchor" id="ga5a31c82e48e37c8ceeb3a17ae3ed1ebe"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MPACK_VERSION</td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="group__common.html#gaebab06d0583dbde63f0efe079c17aa99">MPACK_VERSION_MAJOR</a> * 10000) + \</div><div class="line"> (<a class="code" href="group__common.html#ga52c251cf33faf26bf8405e1d0a8648e1">MPACK_VERSION_MINOR</a> * 100) + <a class="code" href="group__common.html#ga3e836544ced44daa6f194288f7db9868">MPACK_VERSION_PATCH</a>)</div><div class="ttc" id="group__common_html_ga52c251cf33faf26bf8405e1d0a8648e1"><div class="ttname"><a href="group__common.html#ga52c251cf33faf26bf8405e1d0a8648e1">MPACK_VERSION_MINOR</a></div><div class="ttdeci">#define MPACK_VERSION_MINOR</div><div class="ttdoc">The minor version number of MPack. </div><div class="ttdef"><b>Definition:</b> mpack-common.h:49</div></div>
<div class="ttc" id="group__common_html_gaebab06d0583dbde63f0efe079c17aa99"><div class="ttname"><a href="group__common.html#gaebab06d0583dbde63f0efe079c17aa99">MPACK_VERSION_MAJOR</a></div><div class="ttdeci">#define MPACK_VERSION_MAJOR</div><div class="ttdoc">The major version number of MPack. </div><div class="ttdef"><b>Definition:</b> mpack-common.h:48</div></div>
<div class="ttc" id="group__common_html_ga3e836544ced44daa6f194288f7db9868"><div class="ttname"><a href="group__common.html#ga3e836544ced44daa6f194288f7db9868">MPACK_VERSION_PATCH</a></div><div class="ttdeci">#define MPACK_VERSION_PATCH</div><div class="ttdoc">The patch version number of MPack. </div><div class="ttdef"><b>Definition:</b> mpack-common.h:50</div></div>
</div><!-- fragment -->
<p>A number containing the version number of MPack for comparison purposes. </p>
</div>
</div>
<a class="anchor" id="ga1ea07f6899bfd9d22cddcb87ea9aeedc"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MPACK_VERSION_AT_LEAST</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">major, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">minor, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">patch&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(<a class="el" href="group__common.html#ga5a31c82e48e37c8ceeb3a17ae3ed1ebe">MPACK_VERSION</a> &gt;= (((major) * 10000) + ((minor) * 100) + (patch)))</td>
</tr>
</table>
</div><div class="memdoc">
<p>A macro to test for a minimum version of MPack. </p>
</div>
</div>
<a class="anchor" id="gaebab06d0583dbde63f0efe079c17aa99"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MPACK_VERSION_MAJOR&#160;&#160;&#160;0</td>
</tr>
</table>
</div><div class="memdoc">
<p>The major version number of MPack. </p>
</div>
</div>
<a class="anchor" id="ga52c251cf33faf26bf8405e1d0a8648e1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MPACK_VERSION_MINOR&#160;&#160;&#160;8</td>
</tr>
</table>
</div><div class="memdoc">
<p>The minor version number of MPack. </p>
</div>
</div>
<a class="anchor" id="ga3e836544ced44daa6f194288f7db9868"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MPACK_VERSION_PATCH&#160;&#160;&#160;2</td>
</tr>
</table>
</div><div class="memdoc">
<p>The patch version number of MPack. </p>
</div>
</div>
<a class="anchor" id="gacd1814c8320b862ae0c10d2a14e629ed"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MPACK_VERSION_STRING</td>
</tr>
</table>
</div><div class="memdoc">
<p>A string containing the MPack version. </p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="ga9d9f282ca4183ab5190e09d04c1f74c4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__common.html#ga9d9f282ca4183ab5190e09d04c1f74c4">mpack_error_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Error states for MPack objects. </p>
<p>When a reader, writer, or tree is in an error state, all subsequent calls are ignored and their return values are nil/zero. You should check whether the source is in an error state before using such values. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga9d9f282ca4183ab5190e09d04c1f74c4a642a07519ef145fc9dd1068230c4a661"></a>mpack_ok&#160;</td><td class="fielddoc">
<p>No error. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga9d9f282ca4183ab5190e09d04c1f74c4a6581b50527f1c278f852c91bea70f847"></a>mpack_error_io&#160;</td><td class="fielddoc">
<p>The reader or writer failed to fill or flush, or some other file or socket error occurred. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga9d9f282ca4183ab5190e09d04c1f74c4a6d6111704fd59c034f9958c353c6da93"></a>mpack_error_invalid&#160;</td><td class="fielddoc">
<p>The data read is not valid MessagePack. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga9d9f282ca4183ab5190e09d04c1f74c4ac91d0dcefbb9c7b9f41403bbc674aef2"></a>mpack_error_type&#160;</td><td class="fielddoc">
<p>The type or value range did not match what was expected by the caller. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga9d9f282ca4183ab5190e09d04c1f74c4a575cd33925a41fe7c157162b233b8308"></a>mpack_error_too_big&#160;</td><td class="fielddoc">
<p>A read or write was bigger than the maximum size allowed for that operation. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga9d9f282ca4183ab5190e09d04c1f74c4a39db970382d81fc5a4b80dd0b61df5cf"></a>mpack_error_memory&#160;</td><td class="fielddoc">
<p>An allocation failure occurred. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga9d9f282ca4183ab5190e09d04c1f74c4ae35afae5a24379821fa74315be1aa0d6"></a>mpack_error_bug&#160;</td><td class="fielddoc">
<p>The MPack API was used incorrectly. </p>
<p>(This will always assert in debug mode.) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga9d9f282ca4183ab5190e09d04c1f74c4ae53cbed8fcc42915d71ae37d121b22e8"></a>mpack_error_data&#160;</td><td class="fielddoc">
<p>The contained data is not valid. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="ga22f03cf1240d5a917e1b3e7be8ab327e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__common.html#ga22f03cf1240d5a917e1b3e7be8ab327e">mpack_type_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Defines the type of a MessagePack tag. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327eaade66ddfcf1133c0ac00015ab26bd2b4"></a>mpack_type_nil&#160;</td><td class="fielddoc">
<p>A null value. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327ea09eeb9595c0537ed4cdf2b11a4dd4d59"></a>mpack_type_bool&#160;</td><td class="fielddoc">
<p>A boolean (true or false.) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327eab1614d2e0ffe43791a22db286b95d39b"></a>mpack_type_float&#160;</td><td class="fielddoc">
<p>A 32-bit IEEE 754 floating point number. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327ea46d1cf5028e3a0113be8edd73648a7ca"></a>mpack_type_double&#160;</td><td class="fielddoc">
<p>A 64-bit IEEE 754 floating point number. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327eab3ad5f31d28f4102ec5b9eee498f186e"></a>mpack_type_int&#160;</td><td class="fielddoc">
<p>A 64-bit signed integer. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327eae163adb67a277a223bbfe62ff3d42654"></a>mpack_type_uint&#160;</td><td class="fielddoc">
<p>A 64-bit unsigned integer. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327ea1e84e3b33ffa7dfc3bde110bd9455d12"></a>mpack_type_str&#160;</td><td class="fielddoc">
<p>A string. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327ea7b364aaa7af779777366ab36df2b3eb6"></a>mpack_type_bin&#160;</td><td class="fielddoc">
<p>A chunk of binary data. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327ea7ccd85daa1ad40a83cc64484420510ee"></a>mpack_type_ext&#160;</td><td class="fielddoc">
<p>A typed MessagePack extension object containing a chunk of binary data. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327eabc1bfe5856870df99fa51a39923e6349"></a>mpack_type_array&#160;</td><td class="fielddoc">
<p>An array of MessagePack objects. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga22f03cf1240d5a917e1b3e7be8ab327ea0cdc6eb2c069333405d0d23602f7006a"></a>mpack_type_map&#160;</td><td class="fielddoc">
<p>An ordered map of key/value pairs of MessagePack objects. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gae275cfb03fa60ffac086ae2230c3d470"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* mpack_error_to_string </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__common.html#ga9d9f282ca4183ab5190e09d04c1f74c4">mpack_error_t</a>&#160;</td>
<td class="paramname"><em>error</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Converts an MPack error to a string. </p>
<p>This function returns an empty string when MPACK_DEBUG is not set. </p>
</div>
</div>
<a class="anchor" id="ga31f7f337ff772a8e91af5e8394287ef4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_array </td>
<td>(</td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>count</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates an array tag. </p>
</div>
</div>
<a class="anchor" id="gad193672644de9af88290b598ff8d2b8c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_bin </td>
<td>(</td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>length</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a bin tag. </p>
</div>
</div>
<a class="anchor" id="gaafdb8f338605dfb8bf1e1edb6c07940e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_bool </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a bool tag. </p>
</div>
</div>
<a class="anchor" id="ga959a1299fde759b8fab2341cfb1355b8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int mpack_tag_cmp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td>
<td class="paramname"><em>left</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td>
<td class="paramname"><em>right</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Compares two tags with an arbitrary fixed ordering. </p>
<p>Returns 0 if the tags are equal, a negative integer if left comes before right, or a positive integer otherwise.</p>
<dl class="section warning"><dt>Warning</dt><dd>The ordering is not guaranteed to be preserved across MPack versions; do not rely on it in persistent data.</dd>
<dd>
Floating point numbers are compared bit-for-bit, not using the language's operator==. This means that NaNs with matching representation will compare equal. This behaviour is up for debate; see comments in the definition of <a class="el" href="group__common.html#ga959a1299fde759b8fab2341cfb1355b8" title="Compares two tags with an arbitrary fixed ordering. ">mpack_tag_cmp()</a>.</dd></dl>
<p>See <a class="el" href="group__common.html#ga6278d8f1818309765fb7e30c14440b23" title="Compares two tags for equality. ">mpack_tag_equal()</a> for more information on when tags are considered equal. </p>
</div>
</div>
<a class="anchor" id="gac9f0e0d6573ffafb1536ee6f02b742b6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_double </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a double tag. </p>
</div>
</div>
<a class="anchor" id="ga6278d8f1818309765fb7e30c14440b23"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool mpack_tag_equal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td>
<td class="paramname"><em>left</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a>&#160;</td>
<td class="paramname"><em>right</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Compares two tags for equality. </p>
<p>Tags are considered equal if the types are compatible and the values (for non-compound types) are equal.</p>
<p>The field width of variable-width fields is ignored (and in fact is not stored in a tag), and positive numbers in signed integers are considered equal to their unsigned counterparts. So for example the value 1 stored as a positive fixint is equal to the value 1 stored in a 64-bit unsigned integer field.</p>
<p>The "extension type" of an extension object is considered part of the value and much match exactly.</p>
<dl class="section warning"><dt>Warning</dt><dd>Floating point numbers are compared bit-for-bit, not using the language's operator==. This means that NaNs with matching representation will compare equal. This behaviour is up for debate; see comments in the definition of <a class="el" href="group__common.html#ga959a1299fde759b8fab2341cfb1355b8" title="Compares two tags with an arbitrary fixed ordering. ">mpack_tag_cmp()</a>. </dd></dl>
</div>
</div>
<a class="anchor" id="gaa6c5f417a0c6e24d71965105b700dc90"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_ext </td>
<td>(</td>
<td class="paramtype">int8_t&#160;</td>
<td class="paramname"><em>exttype</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>length</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates an ext tag. </p>
</div>
</div>
<a class="anchor" id="gaaff6b2c99bc922aa51e138cc9b16717e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_false </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a bool tag with value false. </p>
</div>
</div>
<a class="anchor" id="ga9323e7f5d3f615fcab945ff909fa5673"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_float </td>
<td>(</td>
<td class="paramtype">float&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a float tag. </p>
</div>
</div>
<a class="anchor" id="ga79fe4bddaffe6ebe8d97e362fe90ee5c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_int </td>
<td>(</td>
<td class="paramtype">int64_t&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a signed int tag. </p>
</div>
</div>
<a class="anchor" id="ga9d0c0c98bad176e48b23878a7b1eae4f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_map </td>
<td>(</td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>count</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a map tag. </p>
</div>
</div>
<a class="anchor" id="ga7dddc1921b402cd058bd32099db02fd0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_nil </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a nil tag. </p>
</div>
</div>
<a class="anchor" id="ga583cda927620b566cbd7b75df0555ea6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_str </td>
<td>(</td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>length</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a str tag. </p>
</div>
</div>
<a class="anchor" id="ga9408e69df94e21714579edfc95736006"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_true </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a bool tag with value true. </p>
</div>
</div>
<a class="anchor" id="gae3e808c63fa0ba040429f955249791d2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__common.html#structmpack__tag__t">mpack_tag_t</a> mpack_tag_uint </td>
<td>(</td>
<td class="paramtype">uint64_t&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates an unsigned int tag. </p>
</div>
</div>
<a class="anchor" id="ga3b259cbb9ea12088346ff897676219d0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* mpack_type_to_string </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__common.html#ga22f03cf1240d5a917e1b3e7be8ab327e">mpack_type_t</a>&#160;</td>
<td class="paramname"><em>type</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Converts an MPack type to a string. </p>
<p>This function returns an empty string when MPACK_DEBUG is not set. </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>