dash-docs/en/doxygen/html/utilstrencodings_8cpp.html

971 lines
57 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.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Dash Core: src/utilstrencodings.cpp 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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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>
<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="projectlogo"><img alt="Logo" src="bitcoin_logo_doxygen.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Dash Core
&#160;<span id="projectnumber">0.12.2.1</span>
</div>
<div id="projectbrief">P2P Digital Currency</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('utilstrencodings_8cpp.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">utilstrencodings.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="utilstrencodings_8h_source.html">utilstrencodings.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="tinyformat_8h_source.html">tinyformat.h</a>&quot;</code><br />
<code>#include &lt;cstdlib&gt;</code><br />
<code>#include &lt;cstring&gt;</code><br />
<code>#include &lt;errno.h&gt;</code><br />
<code>#include &lt;limits&gt;</code><br />
</div>
<p><a href="utilstrencodings_8cpp_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a51f420f9333d2019332acb09dbd7524f"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a51f420f9333d2019332acb09dbd7524f">SanitizeString</a> (const string &amp;str, int rule)</td></tr>
<tr class="separator:a51f420f9333d2019332acb09dbd7524f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa59e8a8c5a39cb5041f93bb95dd02119"><td class="memItemLeft" align="right" valign="top">signed char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#aa59e8a8c5a39cb5041f93bb95dd02119">HexDigit</a> (char c)</td></tr>
<tr class="separator:aa59e8a8c5a39cb5041f93bb95dd02119"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4e3553d2b2fe693c106f4296685f75c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#aa4e3553d2b2fe693c106f4296685f75c">IsHex</a> (const string &amp;str)</td></tr>
<tr class="separator:aa4e3553d2b2fe693c106f4296685f75c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abea395175fbc4a788ed0f0a41710b8a7"><td class="memItemLeft" align="right" valign="top">vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#abea395175fbc4a788ed0f0a41710b8a7">ParseHex</a> (const char *psz)</td></tr>
<tr class="separator:abea395175fbc4a788ed0f0a41710b8a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64d56c5bed7672ee006ff2c29f3554ee"><td class="memItemLeft" align="right" valign="top">vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a64d56c5bed7672ee006ff2c29f3554ee">ParseHex</a> (const string &amp;str)</td></tr>
<tr class="separator:a64d56c5bed7672ee006ff2c29f3554ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e074135870a6fdfae4ac02047bc0432"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a5e074135870a6fdfae4ac02047bc0432">EncodeBase64</a> (const unsigned char *pch, size_t len)</td></tr>
<tr class="separator:a5e074135870a6fdfae4ac02047bc0432"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01c144e3a6e8de1ea8481bd7c69fef07"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a01c144e3a6e8de1ea8481bd7c69fef07">EncodeBase64</a> (const string &amp;str)</td></tr>
<tr class="separator:a01c144e3a6e8de1ea8481bd7c69fef07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a224a1ec4dc69c9463abf0e8ae767af0d"><td class="memItemLeft" align="right" valign="top">vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a224a1ec4dc69c9463abf0e8ae767af0d">DecodeBase64</a> (const char *p, bool *pfInvalid)</td></tr>
<tr class="separator:a224a1ec4dc69c9463abf0e8ae767af0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fc3cb76c00fb587855511c99a715af5"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a1fc3cb76c00fb587855511c99a715af5">DecodeBase64</a> (const string &amp;str)</td></tr>
<tr class="separator:a1fc3cb76c00fb587855511c99a715af5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71aa75e646de8a10971f887bc71d9a75"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a71aa75e646de8a10971f887bc71d9a75">EncodeBase32</a> (const unsigned char *pch, size_t len)</td></tr>
<tr class="separator:a71aa75e646de8a10971f887bc71d9a75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4484ee0b7560f87051606f109e5d96a"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#aa4484ee0b7560f87051606f109e5d96a">EncodeBase32</a> (const string &amp;str)</td></tr>
<tr class="separator:aa4484ee0b7560f87051606f109e5d96a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8266fd137bc7f76f4a75024baab5c18f"><td class="memItemLeft" align="right" valign="top">vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a8266fd137bc7f76f4a75024baab5c18f">DecodeBase32</a> (const char *p, bool *pfInvalid)</td></tr>
<tr class="separator:a8266fd137bc7f76f4a75024baab5c18f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2bcbf931beb3b2a813db9daf09f265c"><td class="memItemLeft" align="right" valign="top">string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#ab2bcbf931beb3b2a813db9daf09f265c">DecodeBase32</a> (const string &amp;str)</td></tr>
<tr class="separator:ab2bcbf931beb3b2a813db9daf09f265c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2dc3da13203c8219cee0c696d11c6490"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a2dc3da13203c8219cee0c696d11c6490">ParsePrechecks</a> (const std::string &amp;str)</td></tr>
<tr class="separator:a2dc3da13203c8219cee0c696d11c6490"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a880a215d9e931432b095084c756a49bb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a880a215d9e931432b095084c756a49bb">ParseInt32</a> (const std::string &amp;str, int32_t *out)</td></tr>
<tr class="separator:a880a215d9e931432b095084c756a49bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb4637787cab6998d4a403d0dcdf51e6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#acb4637787cab6998d4a403d0dcdf51e6">ParseInt64</a> (const std::string &amp;str, int64_t *out)</td></tr>
<tr class="separator:acb4637787cab6998d4a403d0dcdf51e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acde05f33990e3c89cd8bc1088cc992a2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#acde05f33990e3c89cd8bc1088cc992a2">ParseDouble</a> (const std::string &amp;str, double *out)</td></tr>
<tr class="separator:acde05f33990e3c89cd8bc1088cc992a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f12da14116d6d2317c16d9a9daa6548"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a1f12da14116d6d2317c16d9a9daa6548">FormatParagraph</a> (const std::string &amp;in, size_t width, size_t indent)</td></tr>
<tr class="separator:a1f12da14116d6d2317c16d9a9daa6548"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7a07cad3bcdf95935f4f6b5c039c546"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#ab7a07cad3bcdf95935f4f6b5c039c546">i64tostr</a> (int64_t n)</td></tr>
<tr class="separator:ab7a07cad3bcdf95935f4f6b5c039c546"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a565b3ea015b133d01dc52b4ec6e45f07"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a565b3ea015b133d01dc52b4ec6e45f07">itostr</a> (int n)</td></tr>
<tr class="separator:a565b3ea015b133d01dc52b4ec6e45f07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22916d155600c742c4efad727462588e"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a22916d155600c742c4efad727462588e">atoi64</a> (const char *psz)</td></tr>
<tr class="separator:a22916d155600c742c4efad727462588e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba1c6f08c135078a7af3385ed3e91ef3"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#aba1c6f08c135078a7af3385ed3e91ef3">atoi64</a> (const std::string &amp;str)</td></tr>
<tr class="separator:aba1c6f08c135078a7af3385ed3e91ef3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5ce96ec36f4413f820cec9c1831c070"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#aa5ce96ec36f4413f820cec9c1831c070">atoi</a> (const std::string &amp;str)</td></tr>
<tr class="separator:aa5ce96ec36f4413f820cec9c1831c070"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8fc3d6b0477d2406bdbbac99136c946"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#aa8fc3d6b0477d2406bdbbac99136c946">ProcessMantissaDigit</a> (char ch, int64_t &amp;mantissa, int &amp;mantissa_tzeros)</td></tr>
<tr class="separator:aa8fc3d6b0477d2406bdbbac99136c946"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88871b16821d50d5f98a07312f8f1ffb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a88871b16821d50d5f98a07312f8f1ffb">ParseFixedPoint</a> (const std::string &amp;val, int decimals, int64_t *amount_out)</td></tr>
<tr class="separator:a88871b16821d50d5f98a07312f8f1ffb"><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:abe68a9807a859756e745810e9c22a380"><td class="memItemLeft" align="right" valign="top">static const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#abe68a9807a859756e745810e9c22a380">CHARS_ALPHA_NUM</a> = &quot;abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789&quot;</td></tr>
<tr class="separator:abe68a9807a859756e745810e9c22a380"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad77c4a625c3546be143607ca2c66c734"><td class="memItemLeft" align="right" valign="top">static const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#ad77c4a625c3546be143607ca2c66c734">SAFE_CHARS</a> []</td></tr>
<tr class="separator:ad77c4a625c3546be143607ca2c66c734"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48299e74a5c04c846cbdfc372ee464ec"><td class="memItemLeft" align="right" valign="top">const signed char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#a48299e74a5c04c846cbdfc372ee464ec">p_util_hexdigit</a> [256]</td></tr>
<tr class="separator:a48299e74a5c04c846cbdfc372ee464ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab39780b77ae54a29bef62d0e46fce35d"><td class="memItemLeft" align="right" valign="top">static const int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="utilstrencodings_8cpp.html#ab39780b77ae54a29bef62d0e46fce35d">UPPER_BOUND</a> = 1000000000000000000LL - 1LL</td></tr>
<tr class="separator:ab39780b77ae54a29bef62d0e46fce35d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="aa5ce96ec36f4413f820cec9c1831c070"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa5ce96ec36f4413f820cec9c1831c070">&#9670;&nbsp;</a></span>atoi()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int atoi </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00541">541</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00541">atoi()</a>, <a class="el" href="init_8cpp_source.html#l00683">CleanupBlockRevFiles()</a>, <a class="el" href="wallet_8cpp_source.html#l02987">CWallet::GetMasternodeOutpointAndKeys()</a>, <a class="el" href="util_8cpp_source.html#l00389">InterpretBool()</a>, <a class="el" href="rpc_2masternode_8cpp_source.html#l00096">masternode()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00187">MutateTxAddInput()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00297">MutateTxDelInput()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00310">MutateTxDelOutput()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00366">MutateTxSign()</a>, <a class="el" href="net__processing_8cpp_source.html#l01074">ProcessMessage()</a>, and <a class="el" href="torcontrol_8cpp_source.html#l00132">TorControlConnection::readcb()</a>.</p>
</div>
</div>
<a id="a22916d155600c742c4efad727462588e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a22916d155600c742c4efad727462588e">&#9670;&nbsp;</a></span>atoi64() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int64_t atoi64 </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>psz</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00523">523</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="util_8cpp_source.html#l00448">GetArg()</a>, <a class="el" href="mining_8cpp_source.html#l00337">getblocktemplate()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00178">MutateTxLocktime()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00169">MutateTxVersion()</a>, <a class="el" href="utilmoneystr_8cpp_source.html#l00041">ParseMoney()</a>, <a class="el" href="core__read_8cpp_source.html#l00025">ParseScript()</a>, <a class="el" href="wallet_8h_source.html#l00183">ReadOrderPos()</a>, and <a class="el" href="wallet_8h_source.html#l00376">CWalletTx::SerializationOp()</a>.</p>
</div>
</div>
<a id="aba1c6f08c135078a7af3385ed3e91ef3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba1c6f08c135078a7af3385ed3e91ef3">&#9670;&nbsp;</a></span>atoi64() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int64_t atoi64 </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00532">532</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
</div>
</div>
<a id="a8266fd137bc7f76f4a75024baab5c18f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8266fd137bc7f76f4a75024baab5c18f">&#9670;&nbsp;</a></span>DecodeBase32() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">vector&lt;unsigned char&gt; DecodeBase32 </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool *&#160;</td>
<td class="paramname"><em>pfInvalid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00299">299</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00416">DecodeBase32()</a>, and <a class="el" href="netaddress_8cpp_source.html#l00044">CNetAddr::SetSpecial()</a>.</p>
</div>
</div>
<a id="ab2bcbf931beb3b2a813db9daf09f265c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2bcbf931beb3b2a813db9daf09f265c">&#9670;&nbsp;</a></span>DecodeBase32() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">string DecodeBase32 </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00416">416</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
</div>
</div>
<a id="a224a1ec4dc69c9463abf0e8ae767af0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a224a1ec4dc69c9463abf0e8ae767af0d">&#9670;&nbsp;</a></span>DecodeBase64() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">vector&lt;unsigned char&gt; DecodeBase64 </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool *&#160;</td>
<td class="paramname"><em>pfInvalid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00146">146</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00229">DecodeBase64()</a>, <a class="el" href="keepass_8cpp_source.html#l00198">CKeePassIntegrator::CKeePassResponse::decrypt()</a>, <a class="el" href="signverifymessagedialog_8cpp_source.html#l00211">SignVerifyMessageDialog::on_verifyMessageButton_VM_clicked()</a>, <a class="el" href="keepass_8cpp_source.html#l00160">CKeePassIntegrator::CKeePassResponse::parseResponse()</a>, <a class="el" href="httprpc_8cpp_source.html#l00126">RPCAuthorized()</a>, <a class="el" href="misc_8cpp_source.html#l00444">verifymessage()</a>, and <a class="el" href="rpc_2governance_8cpp_source.html#l00836">voteraw()</a>.</p>
</div>
</div>
<a id="a1fc3cb76c00fb587855511c99a715af5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1fc3cb76c00fb587855511c99a715af5">&#9670;&nbsp;</a></span>DecodeBase64() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">string DecodeBase64 </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00229">229</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
</div>
</div>
<a id="a71aa75e646de8a10971f887bc71d9a75"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71aa75e646de8a10971f887bc71d9a75">&#9670;&nbsp;</a></span>EncodeBase32() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">string EncodeBase32 </td>
<td>(</td>
<td class="paramtype">const unsigned char *&#160;</td>
<td class="paramname"><em>pch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00235">235</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00294">EncodeBase32()</a>, and <a class="el" href="netaddress_8cpp_source.html#l00241">CNetAddr::ToStringIP()</a>.</p>
</div>
</div>
<a id="aa4484ee0b7560f87051606f109e5d96a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4484ee0b7560f87051606f109e5d96a">&#9670;&nbsp;</a></span>EncodeBase32() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">string EncodeBase32 </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00294">294</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
</div>
</div>
<a id="a5e074135870a6fdfae4ac02047bc0432"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e074135870a6fdfae4ac02047bc0432">&#9670;&nbsp;</a></span>EncodeBase64() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">string EncodeBase64 </td>
<td>(</td>
<td class="paramtype">const unsigned char *&#160;</td>
<td class="paramname"><em>pch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00095">95</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="keepass_8cpp_source.html#l00132">CKeePassIntegrator::CKeePassRequest::addStrParameter()</a>, <a class="el" href="dash-cli_8cpp_source.html#l00158">CallRPC()</a>, <a class="el" href="masternode_8cpp_source.html#l00644">CMasternodeBroadcast::CheckSignature()</a>, <a class="el" href="utilstrencodings_8cpp_source.html#l00141">EncodeBase64()</a>, <a class="el" href="rpc_2masternode_8cpp_source.html#l00607">masternodebroadcast()</a>, <a class="el" href="signverifymessagedialog_8cpp_source.html#l00125">SignVerifyMessageDialog::on_signMessageButton_SM_clicked()</a>, <a class="el" href="rpcwallet_8cpp_source.html#l00585">signmessage()</a>, and <a class="el" href="messagesigner_8cpp_source.html#l00047">CHashSigner::VerifyHash()</a>.</p>
</div>
</div>
<a id="a01c144e3a6e8de1ea8481bd7c69fef07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01c144e3a6e8de1ea8481bd7c69fef07">&#9670;&nbsp;</a></span>EncodeBase64() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">string EncodeBase64 </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00141">141</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
</div>
</div>
<a id="a1f12da14116d6d2317c16d9a9daa6548"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f12da14116d6d2317c16d9a9daa6548">&#9670;&nbsp;</a></span>FormatParagraph()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string FormatParagraph </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>in</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>width</em> = <code>79</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>indent</em> = <code>0</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Format a paragraph of text to a fixed width, adding spaces for indentation to any added line. </p>
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00478">478</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="util_8cpp_source.html#l00486">HelpMessageOpt()</a>, and <a class="el" href="init_8cpp_source.html#l00637">LicenseInfo()</a>.</p>
</div>
</div>
<a id="aa59e8a8c5a39cb5041f93bb95dd02119"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa59e8a8c5a39cb5041f93bb95dd02119">&#9670;&nbsp;</a></span>HexDigit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">signed char HexDigit </td>
<td>(</td>
<td class="paramtype">char&#160;</td>
<td class="paramname"><em>c</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00054">54</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00059">IsHex()</a>, <a class="el" href="utilstrencodings_8cpp_source.html#l00069">ParseHex()</a>, and <a class="el" href="uint256_8cpp_source.html#l00030">base_blob&lt; 512 &gt;::SetHex()</a>.</p>
</div>
</div>
<a id="ab7a07cad3bcdf95935f4f6b5c039c546"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7a07cad3bcdf95935f4f6b5c039c546">&#9670;&nbsp;</a></span>i64tostr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string i64tostr </td>
<td>(</td>
<td class="paramtype">int64_t&#160;</td>
<td class="paramname"><em>n</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00513">513</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="mining_8cpp_source.html#l00337">getblocktemplate()</a>, and <a class="el" href="wallet_8h_source.html#l00194">WriteOrderPos()</a>.</p>
</div>
</div>
<a id="aa4e3553d2b2fe693c106f4296685f75c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4e3553d2b2fe693c106f4296685f75c">&#9670;&nbsp;</a></span>IsHex()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool IsHex </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00059">59</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="misc_8cpp_source.html#l00340">_createmultisig_redeemScript()</a>, <a class="el" href="core__read_8cpp_source.html#l00110">DecodeHexBlk()</a>, <a class="el" href="core__read_8cpp_source.html#l00093">DecodeHexTx()</a>, <a class="el" href="rpc_2masternode_8cpp_source.html#l00590">DecodeHexVecMnb()</a>, <a class="el" href="wallet_8cpp_source.html#l01392">CWallet::GenerateNewHDChain()</a>, <a class="el" href="rawtransaction_8cpp_source.html#l00235">gettxoutproof()</a>, <a class="el" href="rpcdump_8cpp_source.html#l00181">importaddress()</a>, <a class="el" href="rpcdump_8cpp_source.html#l00247">importpubkey()</a>, <a class="el" href="init_8cpp_source.html#l00818">InitParameterInteraction()</a>, <a class="el" href="rpcwallet_8cpp_source.html#l02216">lockunspent()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00187">MutateTxAddInput()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00245">MutateTxAddOutData()</a>, <a class="el" href="core__read_8cpp_source.html#l00135">ParseHashStr()</a>, <a class="el" href="server_8cpp_source.html#l00132">ParseHashV()</a>, <a class="el" href="core__read_8cpp_source.html#l00145">ParseHexUV()</a>, <a class="el" href="server_8cpp_source.html#l00147">ParseHexV()</a>, <a class="el" href="core__read_8cpp_source.html#l00025">ParseScript()</a>, and <a class="el" href="rest_8cpp_source.html#l00403">rest_getutxos()</a>.</p>
</div>
</div>
<a id="a565b3ea015b133d01dc52b4ec6e45f07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a565b3ea015b133d01dc52b4ec6e45f07">&#9670;&nbsp;</a></span>itostr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string itostr </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>n</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00518">518</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="rpcwallet_8cpp_source.html#l01963">keypoolrefill()</a>, <a class="el" href="net__processing_8cpp_source.html#l01074">ProcessMessage()</a>, <a class="el" href="keepass_8cpp_source.html#l00540">CKeePassIntegrator::rpcAssociate()</a>, <a class="el" href="keepass_8cpp_source.html#l00440">CKeePassIntegrator::rpcGetLogins()</a>, <a class="el" href="keepass_8cpp_source.html#l00484">CKeePassIntegrator::rpcSetLogin()</a>, and <a class="el" href="mining_8cpp_source.html#l00191">setgenerate()</a>.</p>
</div>
</div>
<a id="acde05f33990e3c89cd8bc1088cc992a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acde05f33990e3c89cd8bc1088cc992a2">&#9670;&nbsp;</a></span>ParseDouble()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ParseDouble </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double *&#160;</td>
<td class="paramname"><em>out</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert string to double with strict parse error feedback. </p><dl class="section return"><dt>Returns</dt><dd>true if the entire string could be parsed as valid double, false if not the entire string could be parsed or when overflow or underflow occurred. </dd></dl>
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00464">464</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="univalue_8cpp_source.html#l00337">UniValue::get_real()</a>.</p>
</div>
</div>
<a id="a88871b16821d50d5f98a07312f8f1ffb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88871b16821d50d5f98a07312f8f1ffb">&#9670;&nbsp;</a></span>ParseFixedPoint()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ParseFixedPoint </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>val</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>decimals</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64_t *&#160;</td>
<td class="paramname"><em>amount_out</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Parse number as fixed point according to JSON number syntax. See <a href="http://json.org/number.gif">http://json.org/number.gif</a> </p><dl class="section return"><dt>Returns</dt><dd>true on success, false on error. </dd></dl>
<dl class="section note"><dt>Note</dt><dd>The result must be in the range (-10^18,10^18), otherwise an overflow error will trigger. </dd></dl>
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00573">573</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="server_8cpp_source.html#l00110">AmountFromValue()</a>, and <a class="el" href="governance-classes_8cpp_source.html#l00038">ParsePaymentAmount()</a>.</p>
</div>
</div>
<a id="abea395175fbc4a788ed0f0a41710b8a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abea395175fbc4a788ed0f0a41710b8a7">&#9670;&nbsp;</a></span>ParseHex() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">vector&lt;unsigned char&gt; ParseHex </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>psz</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00069">69</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="misc_8cpp_source.html#l00340">_createmultisig_redeemScript()</a>, <a class="el" href="torcontrol_8cpp_source.html#l00507">TorController::authchallenge_cb()</a>, <a class="el" href="spork_8cpp_source.html#l00245">CSporkMessage::CheckSignature()</a>, <a class="el" href="chainparams_8cpp_source.html#l00073">CMainParams::CMainParams()</a>, <a class="el" href="chainparams_8cpp_source.html#l00052">CreateGenesisBlock()</a>, <a class="el" href="chainparams_8cpp_source.html#l00212">CTestNetParams::CTestNetParams()</a>, <a class="el" href="core__read_8cpp_source.html#l00110">DecodeHexBlk()</a>, <a class="el" href="core__read_8cpp_source.html#l00093">DecodeHexTx()</a>, <a class="el" href="rpc_2masternode_8cpp_source.html#l00590">DecodeHexVecMnb()</a>, <a class="el" href="wallet_8cpp_source.html#l01392">CWallet::GenerateNewHDChain()</a>, <a class="el" href="governance-object_8cpp_source.html#l00395">CGovernanceObject::GetDataAsString()</a>, <a class="el" href="rpc_2governance_8cpp_source.html#l00025">gobject()</a>, <a class="el" href="rpcdump_8cpp_source.html#l00181">importaddress()</a>, <a class="el" href="rpcdump_8cpp_source.html#l00247">importpubkey()</a>, <a class="el" href="dash-tx_8cpp_source.html#l00245">MutateTxAddOutData()</a>, <a class="el" href="utilstrencodings_8cpp_source.html#l00090">ParseHex()</a>, <a class="el" href="core__read_8cpp_source.html#l00145">ParseHexUV()</a>, <a class="el" href="server_8cpp_source.html#l00147">ParseHexV()</a>, <a class="el" href="core__read_8cpp_source.html#l00025">ParseScript()</a>, <a class="el" href="rest_8cpp_source.html#l00403">rest_getutxos()</a>, <a class="el" href="db_8cpp_source.html#l00168">CDBEnv::Salvage()</a>, and <a class="el" href="governance-validators_8cpp_source.html#l00031">CProposalValidator::SetHexData()</a>.</p>
</div>
</div>
<a id="a64d56c5bed7672ee006ff2c29f3554ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64d56c5bed7672ee006ff2c29f3554ee">&#9670;&nbsp;</a></span>ParseHex() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">vector&lt;unsigned char&gt; ParseHex </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00090">90</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
</div>
</div>
<a id="a880a215d9e931432b095084c756a49bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a880a215d9e931432b095084c756a49bb">&#9670;&nbsp;</a></span>ParseInt32()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ParseInt32 </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t *&#160;</td>
<td class="paramname"><em>out</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert string to signed 32-bit integer with strict parse error feedback. </p><dl class="section return"><dt>Returns</dt><dd>true if the entire string could be parsed as valid integer, false if not the entire string could be parsed or when overflow or underflow occurred. </dd></dl>
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00433">433</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="univalue_8cpp_source.html#l00317">UniValue::get_int()</a>, <a class="el" href="rpc_2governance_8cpp_source.html#l00025">gobject()</a>, <a class="el" href="netbase_8cpp_source.html#l00640">LookupSubNet()</a>, <a class="el" href="rest_8cpp_source.html#l00403">rest_getutxos()</a>, <a class="el" href="netbase_8cpp_source.html#l00061">SplitHostPort()</a>, <a class="el" href="masternodelist_8cpp_source.html#l00134">MasternodeList::StartAll()</a>, and <a class="el" href="masternodelist_8cpp_source.html#l00219">MasternodeList::updateMyNodeList()</a>.</p>
</div>
</div>
<a id="acb4637787cab6998d4a403d0dcdf51e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb4637787cab6998d4a403d0dcdf51e6">&#9670;&nbsp;</a></span>ParseInt64()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ParseInt64 </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64_t *&#160;</td>
<td class="paramname"><em>out</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert string to signed 64-bit integer with strict parse error feedback. </p><dl class="section return"><dt>Returns</dt><dd>true if the entire string could be parsed as valid integer, false if not the entire string could be parsed or when overflow or underflow occurred. </dd></dl>
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00449">449</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="univalue_8cpp_source.html#l00327">UniValue::get_int64()</a>.</p>
</div>
</div>
<a id="a2dc3da13203c8219cee0c696d11c6490"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2dc3da13203c8219cee0c696d11c6490">&#9670;&nbsp;</a></span>ParsePrechecks()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ParsePrechecks </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00422">422</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00464">ParseDouble()</a>, <a class="el" href="utilstrencodings_8cpp_source.html#l00433">ParseInt32()</a>, and <a class="el" href="utilstrencodings_8cpp_source.html#l00449">ParseInt64()</a>.</p>
</div>
</div>
<a id="aa8fc3d6b0477d2406bdbbac99136c946"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8fc3d6b0477d2406bdbbac99136c946">&#9670;&nbsp;</a></span>ProcessMantissaDigit()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool ProcessMantissaDigit </td>
<td>(</td>
<td class="paramtype">char&#160;</td>
<td class="paramname"><em>ch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64_t &amp;&#160;</td>
<td class="paramname"><em>mantissa</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int &amp;&#160;</td>
<td class="paramname"><em>mantissa_tzeros</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Helper function for ParseFixedPoint </p>
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00557">557</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00573">ParseFixedPoint()</a>.</p>
</div>
</div>
<a id="a51f420f9333d2019332acb09dbd7524f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51f420f9333d2019332acb09dbd7524f">&#9670;&nbsp;</a></span>SanitizeString()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">string SanitizeString </td>
<td>(</td>
<td class="paramtype">const string &amp;&#160;</td>
<td class="paramname"><em>str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>rule</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00025">25</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="init_8cpp_source.html#l00942">AppInit2()</a>, <a class="el" href="alert_8cpp_source.html#l00271">CAlert::Notify()</a>, <a class="el" href="server_8cpp_source.html#l00478">JSONRequest::parse()</a>, <a class="el" href="net__processing_8cpp_source.html#l01074">ProcessMessage()</a>, <a class="el" href="net__processing_8cpp_source.html#l02184">ProcessMessages()</a>, and <a class="el" href="net_8cpp_source.html#l02834">CConnman::PushMessage()</a>.</p>
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="abe68a9807a859756e745810e9c22a380"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe68a9807a859756e745810e9c22a380">&#9670;&nbsp;</a></span>CHARS_ALPHA_NUM</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const string CHARS_ALPHA_NUM = &quot;abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789&quot;</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00017">17</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
</div>
</div>
<a id="a48299e74a5c04c846cbdfc372ee464ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48299e74a5c04c846cbdfc372ee464ec">&#9670;&nbsp;</a></span>p_util_hexdigit</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const signed char p_util_hexdigit[256]</td>
</tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> 0,1,2,3,4,5,6,7,8,9,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,0xa,0xb,0xc,0xd,0xe,0xf,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,0xa,0xb,0xc,0xd,0xe,0xf,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,</div><div class="line"> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, }</div></div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00036">36</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00054">HexDigit()</a>.</p>
</div>
</div>
<a id="ad77c4a625c3546be143607ca2c66c734"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad77c4a625c3546be143607ca2c66c734">&#9670;&nbsp;</a></span>SAFE_CHARS</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const string SAFE_CHARS[]</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="utilstrencodings_8cpp.html#abe68a9807a859756e745810e9c22a380">CHARS_ALPHA_NUM</a> + <span class="stringliteral">&quot; .,;-_/:?@()&quot;</span>, </div><div class="line"> <a class="code" href="utilstrencodings_8cpp.html#abe68a9807a859756e745810e9c22a380">CHARS_ALPHA_NUM</a> + <span class="stringliteral">&quot; .,;-_?@&quot;</span> </div><div class="line">}</div><div class="ttc" id="utilstrencodings_8cpp_html_abe68a9807a859756e745810e9c22a380"><div class="ttname"><a href="utilstrencodings_8cpp.html#abe68a9807a859756e745810e9c22a380">CHARS_ALPHA_NUM</a></div><div class="ttdeci">static const string CHARS_ALPHA_NUM</div><div class="ttdef"><b>Definition:</b> <a href="utilstrencodings_8cpp_source.html#l00017">utilstrencodings.cpp:17</a></div></div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00019">19</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00025">SanitizeString()</a>.</p>
</div>
</div>
<a id="ab39780b77ae54a29bef62d0e46fce35d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab39780b77ae54a29bef62d0e46fce35d">&#9670;&nbsp;</a></span>UPPER_BOUND</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const int64_t UPPER_BOUND = 1000000000000000000LL - 1LL</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Upper bound for mantissa. 10^18-1 is the largest arbitrary decimal that will fit in a signed 64-bit integer. Larger integers cannot consist of arbitrary combinations of 0-9:</p>
<p>999999999999999999 1^18-1 9223372036854775807 (1&lt;&lt;63)-1 (max int64_t) 9999999999999999999 1^19-1 (would overflow) </p>
<p class="definition">Definition at line <a class="el" href="utilstrencodings_8cpp_source.html#l00554">554</a> of file <a class="el" href="utilstrencodings_8cpp_source.html">utilstrencodings.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="utilstrencodings_8cpp_source.html#l00573">ParseFixedPoint()</a>, and <a class="el" href="utilstrencodings_8cpp_source.html#l00557">ProcessMantissaDigit()</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="utilstrencodings_8cpp.html">utilstrencodings.cpp</a></li>
<li class="footer">Generated on Thu Dec 14 2017 13:15:11 for Dash Core by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>