Browse Source

update docs.

guides-page
Christopher Jeffrey 9 years ago
parent
commit
5cf2643c0d
No known key found for this signature in database GPG Key ID: 8962AB9DE6666BBD
  1. 2
      docs/AbstractBlock.html
  2. 2
      docs/Address.html
  3. 2
      docs/BST.html
  4. 32
      docs/Block.html
  5. 334
      docs/Bloom.html
  6. 2
      docs/BufferReader.html
  7. 2
      docs/BufferWriter.html
  8. 881
      docs/Chain.html
  9. 571
      docs/ChainBlock.html
  10. 2
      docs/ChainDB.html
  11. 34
      docs/Coin.html
  12. 2
      docs/CoinView.html
  13. 2
      docs/Coins.html
  14. 8
      docs/CompactBlock.html
  15. 2
      docs/Environment.html
  16. 46
      docs/Framer.html
  17. 48
      docs/Fullnode.html
  18. 2
      docs/HD.html
  19. 32
      docs/HDPrivateKey.html
  20. 32
      docs/HDPublicKey.html
  21. 2
      docs/HDSeed.html
  22. 2
      docs/HTTPBase.html
  23. 2
      docs/HTTPClient.html
  24. 2
      docs/HTTPProvider.html
  25. 2
      docs/HTTPServer.html
  26. 18
      docs/Headers.html
  27. 75
      docs/Input.html
  28. 2
      docs/KeyPair.html
  29. 2
      docs/LRU.html
  30. 8
      docs/LoadRequest.html
  31. 2
      docs/Locker.html
  32. 2
      docs/LowlevelUp.html
  33. 68
      docs/MTX.html
  34. 595
      docs/Mempool.html
  35. 230
      docs/MerkleBlock.html
  36. 2
      docs/Miner.html
  37. 14
      docs/MinerBlock.html
  38. 4
      docs/Node.html
  39. 61
      docs/Output.html
  40. 32
      docs/Parser.html
  41. 310
      docs/Peer.html
  42. 24
      docs/Pool.html
  43. 2
      docs/Profile.html
  44. 2
      docs/Provider.html
  45. 24
      docs/SPVNode.html
  46. 1076
      docs/Script.html
  47. 4
      docs/ScriptError.html
  48. 2
      docs/Snapshot.html
  49. 118
      docs/Stack.html
  50. 2
      docs/TX.html
  51. 70
      docs/TXDB.html
  52. 4
      docs/VerifyError.html
  53. 2
      docs/Wallet.html
  54. 2
      docs/WalletDB.html
  55. 430
      docs/Witness.html
  56. 2
      docs/bcoin.js.html
  57. 2
      docs/bcoin_abstractblock.js.html
  58. 2
      docs/bcoin_address.js.html
  59. 16
      docs/bcoin_block.js.html
  60. 53
      docs/bcoin_bloom.js.html
  61. 2
      docs/bcoin_bst.js.html
  62. 516
      docs/bcoin_chain.js.html
  63. 67
      docs/bcoin_chainblock.js.html
  64. 9
      docs/bcoin_chaindb.js.html
  65. 8
      docs/bcoin_coin.js.html
  66. 2
      docs/bcoin_coins.js.html
  67. 2
      docs/bcoin_coinview.js.html
  68. 24
      docs/bcoin_compactblock.js.html
  69. 2
      docs/bcoin_ec.js.html
  70. 2
      docs/bcoin_env.js.html
  71. 8
      docs/bcoin_fullnode.js.html
  72. 58
      docs/bcoin_hd.js.html
  73. 9
      docs/bcoin_headers.js.html
  74. 2
      docs/bcoin_http_base.js.html
  75. 2
      docs/bcoin_http_client.js.html
  76. 2
      docs/bcoin_http_provider.js.html
  77. 2
      docs/bcoin_http_request.js.html
  78. 8
      docs/bcoin_http_server.js.html
  79. 19
      docs/bcoin_input.js.html
  80. 2
      docs/bcoin_keypair.js.html
  81. 2
      docs/bcoin_ldb.js.html
  82. 2
      docs/bcoin_locker.js.html
  83. 2
      docs/bcoin_lowlevelup.js.html
  84. 2
      docs/bcoin_lru.js.html
  85. 107
      docs/bcoin_mempool.js.html
  86. 43
      docs/bcoin_merkleblock.js.html
  87. 18
      docs/bcoin_miner.js.html
  88. 37
      docs/bcoin_mtx.js.html
  89. 4
      docs/bcoin_node.js.html
  90. 17
      docs/bcoin_output.js.html
  91. 157
      docs/bcoin_peer.js.html
  92. 22
      docs/bcoin_pool.js.html
  93. 2
      docs/bcoin_profiler.js.html
  94. 367
      docs/bcoin_protocol_constants.js.html
  95. 42
      docs/bcoin_protocol_framer.js.html
  96. 816
      docs/bcoin_protocol_network.js.html
  97. 39
      docs/bcoin_protocol_parser.js.html
  98. 2
      docs/bcoin_reader.js.html
  99. 661
      docs/bcoin_script.js.html
  100. 8
      docs/bcoin_spvnode.js.html

2
docs/AbstractBlock.html

@ -1393,7 +1393,7 @@ set with properties <code>reason</code> and <code>score</code>.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Address.html

@ -5129,7 +5129,7 @@ it will attempt to sign all redeemable inputs.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/BST.html

@ -3473,7 +3473,7 @@ Many of its options, parameters and methods mimic the leveldown interface.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

32
docs/Block.html

@ -666,7 +666,7 @@ number will never be negative.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line549">line 549</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line543">line 543</a>
</li></ul></dd>
@ -897,7 +897,7 @@ for passing to the Block constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line593">line 593</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line587">line 587</a>
</li></ul></dd>
@ -1050,7 +1050,7 @@ for passing to the Block constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line657">line 657</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line651">line 651</a>
</li></ul></dd>
@ -1205,7 +1205,7 @@ for passing to the Block constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line565">line 565</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line559">line 559</a>
</li></ul></dd>
@ -1430,7 +1430,7 @@ for passing to the Block constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line614">line 614</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line608">line 608</a>
</li></ul></dd>
@ -1579,7 +1579,7 @@ for passing to the Block constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line707">line 707</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line701">line 701</a>
</li></ul></dd>
@ -1728,7 +1728,7 @@ for passing to the Block constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line447">line 447</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line441">line 441</a>
</li></ul></dd>
@ -1933,7 +1933,7 @@ for passing to the Block constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line435">line 435</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line429">line 429</a>
</li></ul></dd>
@ -2479,7 +2479,7 @@ block. Coinbases are ignored.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line469">line 469</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line463">line 463</a>
</li></ul></dd>
@ -2684,7 +2684,7 @@ Include witnesses if present.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line420">line 420</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line414">line 414</a>
</li></ul></dd>
@ -4070,7 +4070,7 @@ user-friendly representation of the data.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line494">line 494</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line488">line 488</a>
</li></ul></dd>
@ -4716,7 +4716,7 @@ hashes.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line633">line 633</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line627">line 627</a>
</li></ul></dd>
@ -4819,7 +4819,7 @@ of little-endian uint256s.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line524">line 524</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line518">line 518</a>
</li></ul></dd>
@ -4970,7 +4970,7 @@ matched transactions.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line697">line 697</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line691">line 691</a>
</li></ul></dd>
@ -5131,7 +5131,7 @@ matched transactions.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line576">line 576</a>
<a href="bcoin_block.js.html">bcoin/block.js</a>, <a href="bcoin_block.js.html#line570">line 570</a>
</li></ul></dd>
@ -5542,7 +5542,7 @@ set with properties <code>reason</code> and <code>score</code>.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

334
docs/Bloom.html

@ -90,6 +90,9 @@
<span class="param-type">Number</span>
|
<span class="param-type">Bufer</span>
@ -99,7 +102,7 @@
<td class="description last"><p>Filter size in bytes.</p></td>
<td class="description last"><p>Filter size in bytes, or filter itself.</p></td>
</tr>
@ -272,6 +275,29 @@
</tr>
<tr>
<td class="name"><code>update</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"><p>Update flag (see constants.filterFlags).</p></td>
</tr>
</tbody>
</table>
@ -307,7 +333,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line23">line 23</a>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line24">line 24</a>
</li></ul></dd>
@ -356,6 +382,178 @@
<h4 class="name" id=".hash"><span class="type-signature">(static) </span>hash<span class="signature">(data, seed)</span><span class="type-signature"> &rarr; {Number}</span></h4>
<div class="description">
<p>Murmur3 hash.</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>data</code></td>
<td class="type">
<span class="param-type">Buffer</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>seed</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line233">line 233</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Number</span>
</dd>
</dl>
<h4 class="name" id="add"><span class="type-signature"></span>add<span class="signature">(val, enc<span class="signature-attributes">nullable</span>)</span><span class="type-signature"></span></h4>
@ -502,7 +700,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line61">line 61</a>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line67">line 67</a>
</li></ul></dd>
@ -656,7 +854,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line43">line 43</a>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line49">line 49</a>
</li></ul></dd>
@ -705,6 +903,106 @@
<h4 class="name" id="isWithinConstraints"><span class="type-signature"></span>isWithinConstraints<span class="signature">()</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>Ensure the filter is within the size limits.</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line122">line 122</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
<h4 class="name" id="reset"><span class="type-signature"></span>reset<span class="signature">()</span><span class="type-signature"></span></h4>
@ -756,7 +1054,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line51">line 51</a>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line57">line 57</a>
</li></ul></dd>
@ -787,7 +1085,7 @@
<h4 class="name" id="test"><span class="type-signature"></span>test<span class="signature">(val, enc<span class="signature-attributes">nullable</span>)</span><span class="type-signature"></span></h4>
<h4 class="name" id="test"><span class="type-signature"></span>test<span class="signature">(val, enc<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
@ -933,7 +1231,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line82">line 82</a>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line89">line 89</a>
</li></ul></dd>
@ -956,6 +1254,24 @@
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
@ -1016,7 +1332,7 @@ suitable for transmission on the network.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line106">line 106</a>
<a href="bcoin_bloom.js.html">bcoin/bloom.js</a>, <a href="bcoin_bloom.js.html#line113">line 113</a>
</li></ul></dd>
@ -1082,7 +1398,7 @@ suitable for transmission on the network.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/BufferReader.html

@ -4427,7 +4427,7 @@ a uint64be as a js number. Maintain the sign.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/BufferWriter.html

@ -3711,7 +3711,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

881
docs/Chain.html

File diff suppressed because it is too large

571
docs/ChainBlock.html

@ -647,7 +647,7 @@ advocate for IsSuperMajority and retargeting.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line444">line 444</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line491">line 491</a>
</li></ul></dd>
@ -819,7 +819,7 @@ advocate for IsSuperMajority and retargeting.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line400">line 400</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line447">line 447</a>
</li></ul></dd>
@ -968,7 +968,7 @@ advocate for IsSuperMajority and retargeting.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line469">line 469</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line516">line 516</a>
</li></ul></dd>
@ -2123,7 +2123,7 @@ adding proof to previous chainwork.</p>
<div class="description">
<p>Get median time past asynchronously.</p>
<p>Get median time past asynchronously (see <a href="ChainBlock.html#getMedianTime">ChainBlock#getMedianTime</a>).</p>
</div>
@ -2216,7 +2216,7 @@ adding proof to previous chainwork.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line358">line 358</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line310">line 310</a>
</li></ul></dd>
@ -2664,7 +2664,7 @@ adding proof to previous chainwork.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line457">line 457</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line504">line 504</a>
</li></ul></dd>
@ -3067,7 +3067,179 @@ adding proof to previous chainwork.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line312">line 312</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line328">line 328</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
<h4 class="name" id="isOutdatedAsync"><span class="type-signature"></span>isOutdatedAsync<span class="signature">(version, callback)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>Check <a href="ChainBlock.html#isUpgraded">asynchronously</a>.</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>version</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>callback</code></td>
<td class="type">
<span class="param-type">function</span>
</td>
<td class="description last"><p>Returns [Error, Boolean].</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line339">line 339</a>
</li></ul></dd>
@ -3262,7 +3434,7 @@ adding proof to previous chainwork.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line335">line 335</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line379">line 379</a>
</li></ul></dd>
@ -3311,14 +3483,14 @@ adding proof to previous chainwork.</p>
<h4 class="name" id="isUpgraded"><span class="type-signature"></span>isUpgraded<span class="signature">(version, ancestors)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<h4 class="name" id="isSuperMajorityAsync"><span class="type-signature"></span>isSuperMajorityAsync<span class="signature">(version, required, callback)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>Check isSuperMajority against majorityEnforceUpgrade.</p>
<p>Calculate <a href="ChainBlock.html#isSuperMajority">asynchronously</a>.</p>
</div>
@ -3377,13 +3549,380 @@ adding proof to previous chainwork.</p>
<tr>
<td class="name"><code>ancestors</code></td>
<td class="name"><code>required</code></td>
<td class="type">
<span class="param-type">Array.&lt;<a href="ChainBlock.html">ChainBlock</a>></span>
<span class="param-type">Number</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>callback</code></td>
<td class="type">
<span class="param-type">function</span>
</td>
<td class="description last"><p>Returns [Error, Boolean].</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line405">line 405</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
<h4 class="name" id="isUpgraded"><span class="type-signature"></span>isUpgraded<span class="signature">(version, ancestors)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>Check isSuperMajority against majorityEnforceUpgrade.</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>version</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>ancestors</code></td>
<td class="type">
<span class="param-type">Array.&lt;<a href="ChainBlock.html">ChainBlock</a>></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line353">line 353</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
<h4 class="name" id="isUpgradedAsync"><span class="type-signature"></span>isUpgradedAsync<span class="signature">(version, callback)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>Check <a href="ChainBlock.html#isUpgraded">ChainBlock#isUpgraded</a> asynchronously.</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>version</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>callback</code></td>
<td class="type">
<span class="param-type">function</span>
@ -3434,7 +3973,7 @@ adding proof to previous chainwork.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line323">line 323</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line364">line 364</a>
</li></ul></dd>
@ -3535,7 +4074,7 @@ suitable for JSON serialization.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line423">line 423</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line470">line 470</a>
</li></ul></dd>
@ -3635,7 +4174,7 @@ suitable for JSON serialization.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line378">line 378</a>
<a href="bcoin_chainblock.js.html">bcoin/chainblock.js</a>, <a href="bcoin_chainblock.js.html#line425">line 425</a>
</li></ul></dd>
@ -3701,7 +4240,7 @@ suitable for JSON serialization.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/ChainDB.html

@ -6531,7 +6531,7 @@ database and potentially connect the inputs.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

34
docs/Coin.html

@ -589,7 +589,7 @@ new Coin(options);</code></pre>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line251">line 251</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line253">line 253</a>
</li></ul></dd>
@ -695,7 +695,7 @@ new Coin(options);</code></pre>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line164">line 164</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line166">line 166</a>
</li></ul></dd>
@ -893,7 +893,7 @@ for passing to the Coin constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line208">line 208</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line210">line 210</a>
</li></ul></dd>
@ -1090,7 +1090,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line268">line 268</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line270">line 270</a>
</li></ul></dd>
@ -1239,7 +1239,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line182">line 182</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line184">line 184</a>
</li></ul></dd>
@ -1431,7 +1431,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line224">line 224</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line226">line 226</a>
</li></ul></dd>
@ -1580,7 +1580,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line278">line 278</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line280">line 280</a>
</li></ul></dd>
@ -1685,7 +1685,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line79">line 79</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line80">line 80</a>
</li></ul></dd>
@ -1853,7 +1853,7 @@ height is used if not passed in.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line105">line 105</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line107">line 107</a>
</li></ul></dd>
@ -2019,7 +2019,7 @@ height is used if not passed in.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line83">line 83</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line85">line 85</a>
</li></ul></dd>
@ -2124,7 +2124,7 @@ height is used if not passed in.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line60">line 60</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line61">line 61</a>
</li></ul></dd>
@ -2233,7 +2233,7 @@ height is used if not passed in.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line122">line 122</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line124">line 124</a>
</li></ul></dd>
@ -2394,7 +2394,7 @@ array of addresses, or a map of addresses.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line100">line 100</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line101">line 101</a>
</li></ul></dd>
@ -2560,7 +2560,7 @@ including both the hash and the index.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line235">line 235</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line237">line 237</a>
</li></ul></dd>
@ -2671,7 +2671,7 @@ of little-endian uint256s.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line145">line 145</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line147">line 147</a>
</li></ul></dd>
@ -2837,7 +2837,7 @@ of little-endian uint256s.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line192">line 192</a>
<a href="bcoin_coin.js.html">bcoin/coin.js</a>, <a href="bcoin_coin.js.html#line194">line 194</a>
</li></ul></dd>
@ -2906,7 +2906,7 @@ of little-endian uint256s.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/CoinView.html

@ -1558,7 +1558,7 @@ be spent when filling.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Coins.html

@ -2268,7 +2268,7 @@ be spent when filling.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

8
docs/CompactBlock.html

@ -590,7 +590,7 @@ transaction we parse ahead of time).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_compactblock.js.html">bcoin/compactblock.js</a>, <a href="bcoin_compactblock.js.html#line112">line 112</a>
<a href="bcoin_compactblock.js.html">bcoin/compactblock.js</a>, <a href="bcoin_compactblock.js.html#line104">line 104</a>
</li></ul></dd>
@ -691,7 +691,7 @@ extracted in actuality).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_compactblock.js.html">bcoin/compactblock.js</a>, <a href="bcoin_compactblock.js.html#line86">line 86</a>
<a href="bcoin_compactblock.js.html">bcoin/compactblock.js</a>, <a href="bcoin_compactblock.js.html#line81">line 81</a>
</li></ul></dd>
@ -795,7 +795,7 @@ extracted in actuality).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_compactblock.js.html">bcoin/compactblock.js</a>, <a href="bcoin_compactblock.js.html#line96">line 96</a>
<a href="bcoin_compactblock.js.html">bcoin/compactblock.js</a>, <a href="bcoin_compactblock.js.html#line91">line 91</a>
</li></ul></dd>
@ -873,7 +873,7 @@ extracted in actuality).</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Environment.html

@ -2212,7 +2212,7 @@ the worker pool (default=6).</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

46
docs/Framer.html

@ -125,7 +125,7 @@
<tr>
<td class="name"><code>userAgent</code></td>
<td class="name"><code>USER_AGENT</code></td>
<td class="type">
@ -433,7 +433,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1065">line 1065</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1071">line 1071</a>
</li></ul></dd>
@ -858,7 +858,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1095">line 1095</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1101">line 1101</a>
</li></ul></dd>
@ -1213,7 +1213,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1391">line 1391</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1401">line 1401</a>
</li></ul></dd>
@ -1370,7 +1370,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1340">line 1340</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1350">line 1350</a>
</li></ul></dd>
@ -1526,7 +1526,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1415">line 1415</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1425">line 1425</a>
</li></ul></dd>
@ -1682,7 +1682,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1371">line 1371</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1381">line 1381</a>
</li></ul></dd>
@ -2086,7 +2086,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1260">line 1260</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1270">line 1270</a>
</li></ul></dd>
@ -2515,7 +2515,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1313">line 1313</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1323">line 1323</a>
</li></ul></dd>
@ -2619,7 +2619,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1329">line 1329</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1339">line 1339</a>
</li></ul></dd>
@ -2976,7 +2976,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1154">line 1154</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1164">line 1164</a>
</li></ul></dd>
@ -3760,7 +3760,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1172">line 1172</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1182">line 1182</a>
</li></ul></dd>
@ -3864,7 +3864,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1302">line 1302</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1312">line 1312</a>
</li></ul></dd>
@ -4619,7 +4619,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1144">line 1144</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1154">line 1154</a>
</li></ul></dd>
@ -6454,7 +6454,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1271">line 1271</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1281">line 1281</a>
</li></ul></dd>
@ -6763,7 +6763,7 @@ framer and parser.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1293">line 1293</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1303">line 1303</a>
</li></ul></dd>
@ -6955,7 +6955,7 @@ framer and parser.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1241">line 1241</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1251">line 1251</a>
</li></ul></dd>
@ -7310,7 +7310,7 @@ framer and parser.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1403">line 1403</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1413">line 1413</a>
</li></ul></dd>
@ -7467,7 +7467,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1356">line 1356</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1366">line 1366</a>
</li></ul></dd>
@ -7623,7 +7623,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1427">line 1427</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1437">line 1437</a>
</li></ul></dd>
@ -7779,7 +7779,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1381">line 1381</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1391">line 1391</a>
</li></ul></dd>
@ -7975,7 +7975,7 @@ witness size without serializing.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1198">line 1198</a>
<a href="bcoin_protocol_framer.js.html">bcoin/protocol/framer.js</a>, <a href="bcoin_protocol_framer.js.html#line1208">line 1208</a>
</li></ul></dd>
@ -13486,7 +13486,7 @@ See <a href="Framer.html#.verack">Framer.verack</a>.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

48
docs/Fullnode.html

@ -833,7 +833,7 @@ mempool, miner, wallet, etc.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line46">line 46</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line47">line 47</a>
</li></ul></dd>
@ -1033,7 +1033,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line233">line 233</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line231">line 231</a>
</li></ul></dd>
@ -1164,7 +1164,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line323">line 323</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line321">line 321</a>
</li></ul></dd>
@ -1246,7 +1246,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line284">line 284</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line282">line 282</a>
</li></ul></dd>
@ -1400,7 +1400,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line342">line 342</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line340">line 340</a>
</li></ul></dd>
@ -1555,7 +1555,7 @@ and chain database (unspent only).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line576">line 576</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line574">line 574</a>
</li></ul></dd>
@ -1710,7 +1710,7 @@ from the mempool and chain database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line587">line 587</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line585">line 585</a>
</li></ul></dd>
@ -1864,7 +1864,7 @@ from the mempool and chain database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line390">line 390</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line388">line 388</a>
</li></ul></dd>
@ -2042,7 +2042,7 @@ Takes into account spent coins in the mempool.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line412">line 412</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line410">line 410</a>
</li></ul></dd>
@ -2200,7 +2200,7 @@ Takes into account spent coins in the mempool.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line448">line 448</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line446">line 446</a>
</li></ul></dd>
@ -2357,7 +2357,7 @@ Takes into account spent coins in the mempool.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line597">line 597</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line595">line 595</a>
</li></ul></dd>
@ -2511,7 +2511,7 @@ Takes into account spent coins in the mempool.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line400">line 400</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line398">line 398</a>
</li></ul></dd>
@ -2665,7 +2665,7 @@ Takes into account spent coins in the mempool.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line483">line 483</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line481">line 481</a>
</li></ul></dd>
@ -2823,7 +2823,7 @@ address from the mempool or chain database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line553">line 553</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line551">line 551</a>
</li></ul></dd>
@ -3028,7 +3028,7 @@ address from the mempool or chain database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line370">line 370</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line368">line 368</a>
</li></ul></dd>
@ -3182,7 +3182,7 @@ address from the mempool or chain database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line511">line 511</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line509">line 509</a>
</li></ul></dd>
@ -3359,7 +3359,7 @@ address from the mempool or chain database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line532">line 532</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line530">line 530</a>
</li></ul></dd>
@ -3491,7 +3491,7 @@ wait for the database to load.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line310">line 310</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line308">line 308</a>
</li></ul></dd>
@ -3645,7 +3645,7 @@ wait for the database to load.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line380">line 380</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line378">line 378</a>
</li></ul></dd>
@ -3799,7 +3799,7 @@ wait for the database to load.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line276">line 276</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line274">line 274</a>
</li></ul></dd>
@ -4009,7 +4009,7 @@ requests our TX, rejects it, or the broadcast itself times out.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line249">line 249</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line247">line 247</a>
</li></ul></dd>
@ -4097,7 +4097,7 @@ node.sendTX(tx, true, callback);</code></pre>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line292">line 292</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line290">line 290</a>
</li></ul></dd>
@ -4179,7 +4179,7 @@ node.sendTX(tx, true, callback);</code></pre>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line300">line 300</a>
<a href="bcoin_fullnode.js.html">bcoin/fullnode.js</a>, <a href="bcoin_fullnode.js.html#line298">line 298</a>
</li></ul></dd>
@ -4227,7 +4227,7 @@ node.sendTX(tx, true, callback);</code></pre>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/HD.html

@ -991,7 +991,7 @@ or <a href="HDPrivateKey.html">HDPrivateKey</a> options.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

32
docs/HDPrivateKey.html

@ -997,7 +997,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line787">line 787</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line796">line 796</a>
</li></ul></dd>
@ -1195,7 +1195,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line578">line 578</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line587">line 587</a>
</li></ul></dd>
@ -1489,7 +1489,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line638">line 638</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line647">line 647</a>
</li></ul></dd>
@ -1595,7 +1595,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line492">line 492</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line501">line 501</a>
</li></ul></dd>
@ -1751,7 +1751,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line721">line 721</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line730">line 730</a>
</li></ul></dd>
@ -1943,7 +1943,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line832">line 832</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line841">line 841</a>
</li></ul></dd>
@ -2138,7 +2138,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line608">line 608</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line617">line 617</a>
</li></ul></dd>
@ -2426,7 +2426,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line672">line 672</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line681">line 681</a>
</li></ul></dd>
@ -2724,7 +2724,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line858">line 858</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line867">line 867</a>
</li></ul></dd>
@ -2916,7 +2916,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line532">line 532</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line541">line 541</a>
</li></ul></dd>
@ -3065,7 +3065,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line684">line 684</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line693">line 693</a>
</li></ul></dd>
@ -3217,7 +3217,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line732">line 732</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line741">line 741</a>
</li></ul></dd>
@ -3722,7 +3722,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line556">line 556</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line565">line 565</a>
</li></ul></dd>
@ -4195,7 +4195,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line751">line 751</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line760">line 760</a>
</li></ul></dd>
@ -4295,7 +4295,7 @@ for passing to the HDPrivateKey constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1251">line 1251</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1269">line 1269</a>
</li></ul></dd>
@ -4361,7 +4361,7 @@ for passing to the HDPrivateKey constructor).</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

32
docs/HDPublicKey.html

@ -661,7 +661,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line886">line 886</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line895">line 895</a>
</li></ul></dd>
@ -810,7 +810,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1180">line 1180</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1198">line 1198</a>
</li></ul></dd>
@ -959,7 +959,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1105">line 1105</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1114">line 1114</a>
</li></ul></dd>
@ -1108,7 +1108,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1113">line 1113</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1122">line 1122</a>
</li></ul></dd>
@ -1257,7 +1257,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1191">line 1191</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1209">line 1209</a>
</li></ul></dd>
@ -1449,7 +1449,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1052">line 1052</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1061">line 1061</a>
</li></ul></dd>
@ -1598,7 +1598,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1126">line 1126</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1144">line 1144</a>
</li></ul></dd>
@ -1750,7 +1750,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1162">line 1162</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1180">line 1180</a>
</li></ul></dd>
@ -1946,7 +1946,7 @@ should be hardened (throws if true).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line956">line 956</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line965">line 965</a>
</li></ul></dd>
@ -2107,7 +2107,7 @@ should be hardened (throws if true).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1018">line 1018</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1027">line 1027</a>
</li></ul></dd>
@ -2268,7 +2268,7 @@ should be hardened (throws if true).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1074">line 1074</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1083">line 1083</a>
</li></ul></dd>
@ -2390,7 +2390,7 @@ should be hardened (throws if true).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1027">line 1027</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1036">line 1036</a>
</li></ul></dd>
@ -2502,7 +2502,7 @@ should be hardened (throws if true).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1043">line 1043</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1052">line 1052</a>
</li></ul></dd>
@ -2602,7 +2602,7 @@ should be hardened (throws if true).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1035">line 1035</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1044">line 1044</a>
</li></ul></dd>
@ -2702,7 +2702,7 @@ should be hardened (throws if true).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1096">line 1096</a>
<a href="bcoin_hd.js.html">bcoin/hd.js</a>, <a href="bcoin_hd.js.html#line1105">line 1105</a>
</li></ul></dd>
@ -2768,7 +2768,7 @@ should be hardened (throws if true).</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/HDSeed.html

@ -724,7 +724,7 @@ key stretching (empty string if not present).</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/HTTPBase.html

@ -1529,7 +1529,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/HTTPClient.html

@ -6344,7 +6344,7 @@ is available in the wallet history).</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/HTTPProvider.html

@ -1639,7 +1639,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/HTTPServer.html

@ -1039,7 +1039,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

18
docs/Headers.html

@ -582,7 +582,7 @@ number will never be negative.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line129">line 129</a>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line127">line 127</a>
</li></ul></dd>
@ -778,7 +778,7 @@ number will never be negative.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line143">line 143</a>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line141">line 141</a>
</li></ul></dd>
@ -927,7 +927,7 @@ number will never be negative.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line153">line 153</a>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line151">line 151</a>
</li></ul></dd>
@ -1132,7 +1132,7 @@ number will never be negative.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line80">line 80</a>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line78">line 78</a>
</li></ul></dd>
@ -1237,7 +1237,7 @@ number will never be negative.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line69">line 69</a>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line67">line 67</a>
</li></ul></dd>
@ -1511,7 +1511,7 @@ user-friendly representation of the data.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line94">line 94</a>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line92">line 92</a>
</li></ul></dd>
@ -1716,7 +1716,7 @@ user-friendly representation of the data.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line48">line 48</a>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line46">line 46</a>
</li></ul></dd>
@ -2014,7 +2014,7 @@ property of all transactions within the block.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line111">line 111</a>
<a href="bcoin_headers.js.html">bcoin/headers.js</a>, <a href="bcoin_headers.js.html#line109">line 109</a>
</li></ul></dd>
@ -2425,7 +2425,7 @@ set with properties <code>reason</code> and <code>score</code>.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

75
docs/Input.html

@ -40,7 +40,7 @@
<h4 class="name" id="Input"><span class="type-signature"></span>new Input<span class="signature">(options, tx<span class="signature-attributes">nullable</span>)</span><span class="type-signature"></span></h4>
<h4 class="name" id="Input"><span class="type-signature"></span>new Input<span class="signature">(options, mutable<span class="signature-attributes">nullable</span>)</span><span class="type-signature"></span></h4>
@ -116,13 +116,13 @@
<tr>
<td class="name"><code>tx</code></td>
<td class="name"><code>mutable</code></td>
<td class="type">
<span class="param-type"><a href="TX.html">TX</a></span>
<span class="param-type">Boolean</span>
@ -457,6 +457,35 @@
</tr>
<tr>
<td class="name"><code>mutable</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="attributes">
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
@ -492,7 +521,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line33">line 33</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line34">line 34</a>
</li></ul></dd>
@ -684,7 +713,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line372">line 372</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line373">line 373</a>
</li></ul></dd>
@ -790,7 +819,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line278">line 278</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line279">line 279</a>
</li></ul></dd>
@ -988,7 +1017,7 @@ for passing to the Input constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line323">line 323</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line324">line 324</a>
</li></ul></dd>
@ -1185,7 +1214,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line395">line 395</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line396">line 396</a>
</li></ul></dd>
@ -1334,7 +1363,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line297">line 297</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line298">line 298</a>
</li></ul></dd>
@ -1526,7 +1555,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line339">line 339</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line340">line 340</a>
</li></ul></dd>
@ -1675,7 +1704,7 @@ in &quot;extended&quot; serialization format.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line405">line 405</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line406">line 406</a>
</li></ul></dd>
@ -1777,7 +1806,7 @@ is not available.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line145">line 145</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line146">line 146</a>
</li></ul></dd>
@ -1882,7 +1911,7 @@ redeem scripts if witnesspubkeyhash is behind a scripthash.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line98">line 98</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line99">line 99</a>
</li></ul></dd>
@ -1986,7 +2015,7 @@ redeem scripts if witnesspubkeyhash is behind a scripthash.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line124">line 124</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line125">line 125</a>
</li></ul></dd>
@ -2092,7 +2121,7 @@ is not available.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line68">line 68</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line69">line 69</a>
</li></ul></dd>
@ -2196,7 +2225,7 @@ is not available.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line217">line 217</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line218">line 218</a>
</li></ul></dd>
@ -2296,7 +2325,7 @@ is not available.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line183">line 183</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line184">line 184</a>
</li></ul></dd>
@ -2396,7 +2425,7 @@ is not available.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line174">line 174</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line175">line 175</a>
</li></ul></dd>
@ -2552,7 +2581,7 @@ array of addresses, or a map of addresses.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line194">line 194</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line195">line 195</a>
</li></ul></dd>
@ -2718,7 +2747,7 @@ including both the input and the witness.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line350">line 350</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line351">line 351</a>
</li></ul></dd>
@ -2824,7 +2853,7 @@ of little-endian uint256s.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line258">line 258</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line259">line 259</a>
</li></ul></dd>
@ -2985,7 +3014,7 @@ of little-endian uint256s.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line307">line 307</a>
<a href="bcoin_input.js.html">bcoin/input.js</a>, <a href="bcoin_input.js.html#line308">line 308</a>
</li></ul></dd>
@ -3054,7 +3083,7 @@ of little-endian uint256s.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/KeyPair.html

@ -2145,7 +2145,7 @@ for JSON serialization.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/LRU.html

@ -1520,7 +1520,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

8
docs/LoadRequest.html

@ -232,7 +232,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2250">line 2250</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2254">line 2254</a>
</li></ul></dd>
@ -333,7 +333,7 @@ Remove from queue and map. Clear timeout.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2288">line 2288</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2292">line 2292</a>
</li></ul></dd>
@ -415,7 +415,7 @@ Remove from queue and map. Clear timeout.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2270">line 2270</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2274">line 2274</a>
</li></ul></dd>
@ -463,7 +463,7 @@ Remove from queue and map. Clear timeout.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Locker.html

@ -960,7 +960,7 @@ to resolve the queue.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/LowlevelUp.html

@ -1843,7 +1843,7 @@ lowers memory usage.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

68
docs/MTX.html

@ -863,7 +863,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1368">line 1368</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1361">line 1361</a>
</li></ul></dd>
@ -928,7 +928,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1340">line 1340</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1333">line 1333</a>
</li></ul></dd>
@ -993,7 +993,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1354">line 1354</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1347">line 1347</a>
</li></ul></dd>
@ -1074,7 +1074,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1374">line 1374</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1367">line 1367</a>
</li></ul></dd>
@ -1159,7 +1159,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1346">line 1346</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1339">line 1339</a>
</li></ul></dd>
@ -1244,7 +1244,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1360">line 1360</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1353">line 1353</a>
</li></ul></dd>
@ -1382,7 +1382,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1384">line 1384</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1377">line 1377</a>
</li></ul></dd>
@ -1531,7 +1531,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1403">line 1403</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1396">line 1396</a>
</li></ul></dd>
@ -1729,7 +1729,7 @@ witness is present. All zeroes if coinbase).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line236">line 236</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line237">line 237</a>
</li></ul></dd>
@ -1917,7 +1917,7 @@ tx.addInput(bcoin.coin(prev, prevIndex));</code></pre>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line785">line 785</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line780">line 780</a>
</li></ul></dd>
@ -2077,7 +2077,7 @@ tx.addOutput(receivingWallet, utils.satoshi('0.1'));</code></pre>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1304">line 1304</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1297">line 1297</a>
</li></ul></dd>
@ -2375,7 +2375,7 @@ set with properties <code>reason</code> and <code>score</code>.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line103">line 103</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line104">line 104</a>
</li></ul></dd>
@ -2595,7 +2595,7 @@ p2pkh script).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line452">line 452</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line447">line 447</a>
</li></ul></dd>
@ -2771,7 +2771,7 @@ p2pkh script).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1229">line 1229</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1222">line 1222</a>
</li></ul></dd>
@ -4708,7 +4708,7 @@ is <em>not</em> cached.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line197">line 197</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line198">line 198</a>
</li></ul></dd>
@ -5025,7 +5025,7 @@ is <em>not</em> cached.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line211">line 211</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line212">line 212</a>
</li></ul></dd>
@ -5135,7 +5135,7 @@ Note that this is <em>not</em> cached.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line221">line 221</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line222">line 222</a>
</li></ul></dd>
@ -5412,7 +5412,7 @@ Note that this is not cached.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line121">line 121</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line122">line 122</a>
</li></ul></dd>
@ -6582,7 +6582,7 @@ has all script templates built.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line845">line 845</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line838">line 838</a>
</li></ul></dd>
@ -6682,7 +6682,7 @@ has all script templates built.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line678">line 678</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line673">line 673</a>
</li></ul></dd>
@ -7305,7 +7305,7 @@ estimation of the size.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line879">line 879</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line872">line 872</a>
</li></ul></dd>
@ -7413,7 +7413,7 @@ witness is present.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line160">line 160</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line161">line 161</a>
</li></ul></dd>
@ -7525,7 +7525,7 @@ that this is <em>not</em> cached.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line172">line 172</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line173">line 173</a>
</li></ul></dd>
@ -7637,7 +7637,7 @@ this is <em>not</em> cached.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line184">line 184</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line185">line 185</a>
</li></ul></dd>
@ -7815,7 +7815,7 @@ must be able to redeem the coin.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line278">line 278</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line273">line 273</a>
</li></ul></dd>
@ -8003,7 +8003,7 @@ must be able to redeem the coin.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line817">line 817</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line812">line 812</a>
</li></ul></dd>
@ -8403,7 +8403,7 @@ fee from * existing outputs rather than adding more inputs.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1063">line 1063</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1056">line 1056</a>
</li></ul></dd>
@ -8745,7 +8745,7 @@ fee from * existing outputs rather than adding more inputs.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1322">line 1322</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1315">line 1315</a>
</li></ul></dd>
@ -8923,7 +8923,7 @@ must be able to redeem the coin.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line755">line 755</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line750">line 750</a>
</li></ul></dd>
@ -9364,7 +9364,7 @@ must be able to redeem the coin.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line482">line 482</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line477">line 477</a>
</li></ul></dd>
@ -9480,7 +9480,7 @@ must be able to redeem the coin.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1266">line 1266</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1259">line 1259</a>
</li></ul></dd>
@ -10545,7 +10545,7 @@ of little-endian uint256s.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1393">line 1393</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line1386">line 1386</a>
</li></ul></dd>
@ -11309,7 +11309,7 @@ if coinbase). Note that this is not cached.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line135">line 135</a>
<a href="bcoin_mtx.js.html">bcoin/mtx.js</a>, <a href="bcoin_mtx.js.html#line136">line 136</a>
</li></ul></dd>
@ -11382,7 +11382,7 @@ if coinbase). Note that this is not cached.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

595
docs/Mempool.html

@ -731,525 +731,6 @@
<h3 class="subsection-title">Members</h3>
<h4 class="name" id=".ANCESTOR_LIMIT"><span class="type-signature">(static, constant) </span>ANCESTOR_LIMIT<span class="type-signature"> :Number</span></h4>
<div class="description">
<p>Ancestor limit.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Number</span>
</li>
</ul>
<dl class="details">
<dt class="tag-default">Default Value:</dt>
<dd class="tag-default"><ul class="dummy">
<li>25</li>
</ul></dd>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line122">line 122</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".flags"><span class="type-signature">(static, constant) </span>flags<span class="type-signature"> :<a href="global.html#VerifyFlags">VerifyFlags</a></span></h4>
<div class="description">
<p>Standard verify flags.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type"><a href="global.html#VerifyFlags">VerifyFlags</a></span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line98">line 98</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".lockFlags"><span class="type-signature">(static, constant) </span>lockFlags<span class="type-signature"> :<a href="global.html#LockFlags">LockFlags</a></span></h4>
<div class="description">
<p>Locktime flags.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type"><a href="global.html#LockFlags">LockFlags</a></span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line114">line 114</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".mandatory"><span class="type-signature">(static, constant) </span>mandatory<span class="type-signature"> :<a href="global.html#VerifyFlags">VerifyFlags</a></span></h4>
<div class="description">
<p>Mandatory verify flags.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type"><a href="global.html#VerifyFlags">VerifyFlags</a></span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line106">line 106</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".MAX_MEMPOOL_SIZE"><span class="type-signature">(static, constant) </span>MAX_MEMPOOL_SIZE<span class="type-signature"> :Number</span></h4>
<div class="description">
<p>Maximum mempool size in bytes.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Number</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line130">line 130</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".MAX_ORPHAN_TX"><span class="type-signature">(static, constant) </span>MAX_ORPHAN_TX<span class="type-signature"> :Number</span></h4>
<div class="description">
<p>Maximum number of orphan transactions.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Number</span>
</li>
</ul>
<dl class="details">
<dt class="tag-default">Default Value:</dt>
<dd class="tag-default"><ul class="dummy">
<li>100</li>
</ul></dd>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line147">line 147</a>
</li></ul></dd>
</dl>
<h4 class="name" id=".MEMPOOL_EXPIRY"><span class="type-signature">(static, constant) </span>MEMPOOL_EXPIRY<span class="type-signature"> :Number</span></h4>
<div class="description">
<p>The time at which transactions
fall out of the mempool.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Number</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line139">line 139</a>
</li></ul></dd>
</dl>
<h3 class="subsection-title">Methods</h3>
@ -1382,7 +863,7 @@ fall out of the mempool.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1409">line 1409</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1362">line 1362</a>
</li></ul></dd>
@ -1537,7 +1018,7 @@ that this <em>may</em> not disconnect the inputs.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1472">line 1472</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1425">line 1425</a>
</li></ul></dd>
@ -1693,7 +1174,7 @@ block from the mempool).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line247">line 247</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line190">line 190</a>
</li></ul></dd>
@ -1849,7 +1330,7 @@ fully processed.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line527">line 527</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line470">line 470</a>
</li></ul></dd>
@ -2007,7 +1488,7 @@ resolved orphans <em>will</em> be validated).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line647">line 647</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line600">line 600</a>
</li></ul></dd>
@ -2184,7 +1665,7 @@ resolved orphans <em>will</em> be validated).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1290">line 1290</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1243">line 1243</a>
</li></ul></dd>
@ -2315,7 +1796,7 @@ resolved orphans <em>will</em> be validated).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line234">line 234</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line177">line 177</a>
</li></ul></dd>
@ -2470,7 +1951,7 @@ ancestors a transaction may have.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line855">line 855</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line808">line 808</a>
</li></ul></dd>
@ -2627,7 +2108,7 @@ from the blockchain as well.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1228">line 1228</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1181">line 1181</a>
</li></ul></dd>
@ -2784,7 +2265,7 @@ from the blockchain as well.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1205">line 1205</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1158">line 1158</a>
</li></ul></dd>
@ -2939,7 +2420,7 @@ in the mempool.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line505">line 505</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line448">line 448</a>
</li></ul></dd>
@ -3096,7 +2577,7 @@ just unspent coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line494">line 494</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line437">line 437</a>
</li></ul></dd>
@ -3179,7 +2660,7 @@ just unspent coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line954">line 954</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line907">line 907</a>
</li></ul></dd>
@ -3356,7 +2837,7 @@ just unspent coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line447">line 447</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line390">line 390</a>
</li></ul></dd>
@ -3513,7 +2994,7 @@ just unspent coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line471">line 471</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line414">line 414</a>
</li></ul></dd>
@ -3670,7 +3151,7 @@ just unspent coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1330">line 1330</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1283">line 1283</a>
</li></ul></dd>
@ -3808,7 +3289,7 @@ just unspent coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line963">line 963</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line916">line 916</a>
</li></ul></dd>
@ -3962,7 +3443,7 @@ just unspent coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1008">line 1008</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line961">line 961</a>
</li></ul></dd>
@ -4094,7 +3575,7 @@ for generating INV packets in response to MEMPOOL packets.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1279">line 1279</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1232">line 1232</a>
</li></ul></dd>
@ -4252,7 +3733,7 @@ Note that this will not be filled with coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line434">line 434</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line377">line 377</a>
</li></ul></dd>
@ -4409,7 +3890,7 @@ Note that this will not be filled with coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line481">line 481</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line424">line 424</a>
</li></ul></dd>
@ -4563,7 +4044,7 @@ Note that this will not be filled with coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line973">line 973</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line926">line 926</a>
</li></ul></dd>
@ -4713,7 +4194,7 @@ Note that this will not be filled with coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1033">line 1033</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line986">line 986</a>
</li></ul></dd>
@ -4867,7 +4348,7 @@ Note that this will not be filled with coins.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line515">line 515</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line458">line 458</a>
</li></ul></dd>
@ -5025,7 +4506,7 @@ be seen as an orphan rather than a double spend.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1319">line 1319</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1272">line 1272</a>
</li></ul></dd>
@ -5205,7 +4686,7 @@ for transaction outputs that never existed.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line461">line 461</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line404">line 404</a>
</li></ul></dd>
@ -5336,7 +4817,7 @@ for transaction outputs that never existed.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line340">line 340</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line283">line 283</a>
</li></ul></dd>
@ -5467,7 +4948,7 @@ for transaction outputs that never existed.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line221">line 221</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line164">line 164</a>
</li></ul></dd>
@ -5598,7 +5079,7 @@ for transaction outputs that never existed.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line374">line 374</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line317">line 317</a>
</li></ul></dd>
@ -5680,7 +5161,7 @@ for transaction outputs that never existed.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line157">line 157</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line100">line 100</a>
</li></ul></dd>
@ -5835,7 +5316,7 @@ from the main chain (reinserts transactions into the mempool).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line295">line 295</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line238">line 238</a>
</li></ul></dd>
@ -5992,7 +5473,7 @@ from the main chain (reinserts transactions into the mempool).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1105">line 1105</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1058">line 1058</a>
</li></ul></dd>
@ -6147,7 +5628,7 @@ only called when a new block is added to the main chain.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line696">line 696</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line649">line 649</a>
</li></ul></dd>
@ -6304,7 +5785,7 @@ returns orphan hashes.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1051">line 1051</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1004">line 1004</a>
</li></ul></dd>
@ -6461,7 +5942,7 @@ named &quot;DoesThisTransactionExist()&quot;.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1173">line 1173</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line1126">line 1126</a>
</li></ul></dd>
@ -6615,7 +6096,7 @@ named &quot;DoesThisTransactionExist()&quot;.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line896">line 896</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line849">line 849</a>
</li></ul></dd>
@ -6769,7 +6250,7 @@ named &quot;DoesThisTransactionExist()&quot;.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line723">line 723</a>
<a href="bcoin_mempool.js.html">bcoin/mempool.js</a>, <a href="bcoin_mempool.js.html#line676">line 676</a>
</li></ul></dd>
@ -6817,7 +6298,7 @@ named &quot;DoesThisTransactionExist()&quot;.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

230
docs/MerkleBlock.html

@ -720,7 +720,7 @@ number will never be negative.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line269">line 269</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line276">line 276</a>
</li></ul></dd>
@ -898,7 +898,7 @@ merkle tree.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line308">line 308</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line303">line 303</a>
</li></ul></dd>
@ -1090,7 +1090,7 @@ merkle tree.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line283">line 283</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line290">line 290</a>
</li></ul></dd>
@ -1239,108 +1239,7 @@ merkle tree.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line293">line 293</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
<h4 class="name" id="_verifyPartial"><span class="type-signature">(private) </span>_verifyPartial<span class="signature">()</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>Verify the partial merkletree. Push leaves onto
MerkleBlock#tx and into MerkleBlock#txMap.</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line133">line 133</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line398">line 398</a>
</li></ul></dd>
@ -1545,7 +1444,7 @@ MerkleBlock#tx and into MerkleBlock#txMap.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line223">line 223</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line230">line 230</a>
</li></ul></dd>
@ -1645,7 +1544,7 @@ MerkleBlock#tx and into MerkleBlock#txMap.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line105">line 105</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line104">line 104</a>
</li></ul></dd>
@ -1750,7 +1649,7 @@ MerkleBlock#tx and into MerkleBlock#txMap.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line94">line 94</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line93">line 93</a>
</li></ul></dd>
@ -2079,7 +1978,7 @@ MerkleBlock#tx and into MerkleBlock#txMap.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line119">line 119</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line118">line 118</a>
</li></ul></dd>
@ -2180,7 +2079,7 @@ user-friendly representation of the data.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line233">line 233</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line240">line 240</a>
</li></ul></dd>
@ -2385,7 +2284,7 @@ user-friendly representation of the data.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line67">line 67</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line66">line 66</a>
</li></ul></dd>
@ -2485,7 +2384,7 @@ user-friendly representation of the data.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line76">line 76</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line75">line 75</a>
</li></ul></dd>
@ -2585,7 +2484,7 @@ user-friendly representation of the data.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line85">line 85</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line84">line 84</a>
</li></ul></dd>
@ -2883,7 +2782,7 @@ property of all transactions within the block.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line251">line 251</a>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line258">line 258</a>
</li></ul></dd>
@ -3251,6 +3150,107 @@ set with properties <code>reason</code> and <code>score</code>.</p></td>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
<h4 class="name" id="verifyPartial"><span class="type-signature">(private) </span>verifyPartial<span class="signature">()</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>Verify the partial merkletree. Push leaves onto
MerkleBlock#tx and into MerkleBlock#txMap.</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_merkleblock.js.html">bcoin/merkleblock.js</a>, <a href="bcoin_merkleblock.js.html#line134">line 134</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
@ -3294,7 +3294,7 @@ set with properties <code>reason</code> and <code>score</code>.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Miner.html

@ -1126,7 +1126,7 @@ for faster linked code.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

14
docs/MinerBlock.html

@ -685,7 +685,7 @@ updates coinbase and commitment.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line604">line 604</a>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line612">line 612</a>
</li></ul></dd>
@ -767,7 +767,7 @@ updates coinbase and commitment.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line473">line 473</a>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line478">line 478</a>
</li></ul></dd>
@ -921,7 +921,7 @@ for 100ms every time the nonce overflows.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line569">line 569</a>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line574">line 574</a>
</li></ul></dd>
@ -1052,7 +1052,7 @@ for 100ms every time the nonce overflows.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line596">line 596</a>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line604">line 604</a>
</li></ul></dd>
@ -1134,7 +1134,7 @@ for 100ms every time the nonce overflows.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line586">line 586</a>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line593">line 593</a>
</li></ul></dd>
@ -1234,7 +1234,7 @@ for 100ms every time the nonce overflows.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line552">line 552</a>
<a href="bcoin_miner.js.html">bcoin/miner.js</a>, <a href="bcoin_miner.js.html#line557">line 557</a>
</li></ul></dd>
@ -1530,7 +1530,7 @@ if segwit is enabled).</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:00 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:11 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

4
docs/Node.html

@ -141,7 +141,7 @@ Node-like object inherits.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_node.js.html">bcoin/node.js</a>, <a href="bcoin_node.js.html#line23">line 23</a>
<a href="bcoin_node.js.html">bcoin/node.js</a>, <a href="bcoin_node.js.html#line22">line 22</a>
</li></ul></dd>
@ -203,7 +203,7 @@ Node-like object inherits.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

61
docs/Output.html

@ -40,7 +40,7 @@
<h4 class="name" id="Output"><span class="type-signature"></span>new Output<span class="signature">(options, tx<span class="signature-attributes">nullable</span>)</span><span class="type-signature"></span></h4>
<h4 class="name" id="Output"><span class="type-signature"></span>new Output<span class="signature">(options, mutable<span class="signature-attributes">nullable</span>)</span><span class="type-signature"></span></h4>
@ -116,13 +116,13 @@
<tr>
<td class="name"><code>tx</code></td>
<td class="name"><code>mutable</code></td>
<td class="type">
<span class="param-type"><a href="TX.html">TX</a></span>
<span class="param-type">Boolean</span>
@ -297,6 +297,35 @@
</tr>
<tr>
<td class="name"><code>mutable</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="attributes">
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
@ -332,7 +361,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line26">line 26</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line27">line 27</a>
</li></ul></dd>
@ -432,7 +461,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line152">line 152</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line153">line 153</a>
</li></ul></dd>
@ -630,7 +659,7 @@ for passing to the Output constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line191">line 191</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line192">line 192</a>
</li></ul></dd>
@ -783,7 +812,7 @@ for passing to the Output constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line165">line 165</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line166">line 166</a>
</li></ul></dd>
@ -975,7 +1004,7 @@ for passing to the Output constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line207">line 207</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line208">line 208</a>
</li></ul></dd>
@ -1124,7 +1153,7 @@ for passing to the Output constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line217">line 217</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line218">line 218</a>
</li></ul></dd>
@ -1224,7 +1253,7 @@ for passing to the Output constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line79">line 79</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line80">line 80</a>
</li></ul></dd>
@ -1328,7 +1357,7 @@ for passing to the Output constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line60">line 60</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line61">line 61</a>
</li></ul></dd>
@ -1432,7 +1461,7 @@ for passing to the Output constructor).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line123">line 123</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line124">line 124</a>
</li></ul></dd>
@ -1588,7 +1617,7 @@ array of addresses, or a map of addresses.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line100">line 100</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line101">line 101</a>
</li></ul></dd>
@ -1693,7 +1722,7 @@ for JSON serialization.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line138">line 138</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line139">line 139</a>
</li></ul></dd>
@ -1854,7 +1883,7 @@ for JSON serialization.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line175">line 175</a>
<a href="bcoin_output.js.html">bcoin/output.js</a>, <a href="bcoin_output.js.html#line176">line 176</a>
</li></ul></dd>
@ -1923,7 +1952,7 @@ for JSON serialization.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

32
docs/Parser.html

@ -311,7 +311,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1154">line 1154</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1153">line 1153</a>
</li></ul></dd>
@ -463,7 +463,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1374">line 1374</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1373">line 1373</a>
</li></ul></dd>
@ -615,7 +615,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1337">line 1337</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1336">line 1336</a>
</li></ul></dd>
@ -767,7 +767,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1429">line 1429</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1428">line 1428</a>
</li></ul></dd>
@ -919,7 +919,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line848">line 848</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line847">line 847</a>
</li></ul></dd>
@ -1071,7 +1071,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line910">line 910</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line909">line 909</a>
</li></ul></dd>
@ -1550,7 +1550,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1055">line 1055</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1054">line 1054</a>
</li></ul></dd>
@ -3222,7 +3222,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line981">line 981</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line980">line 980</a>
</li></ul></dd>
@ -3526,7 +3526,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1397">line 1397</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1396">line 1396</a>
</li></ul></dd>
@ -4134,7 +4134,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1018">line 1018</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1017">line 1017</a>
</li></ul></dd>
@ -4590,7 +4590,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1307">line 1307</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1306">line 1306</a>
</li></ul></dd>
@ -4894,7 +4894,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1245">line 1245</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1244">line 1244</a>
</li></ul></dd>
@ -5351,7 +5351,7 @@ parsing if a witness transaction is detected).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1105">line 1105</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1104">line 1104</a>
</li></ul></dd>
@ -5959,7 +5959,7 @@ parsing if a witness transaction is detected).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1272">line 1272</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1271">line 1271</a>
</li></ul></dd>
@ -6111,7 +6111,7 @@ parsing if a witness transaction is detected).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1174">line 1174</a>
<a href="bcoin_protocol_parser.js.html">bcoin/protocol/parser.js</a>, <a href="bcoin_protocol_parser.js.html#line1173">line 1173</a>
</li></ul></dd>
@ -6896,7 +6896,7 @@ of <code>{cmd:String, length:Number, checksum:Number}</code>.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

310
docs/Peer.html

@ -1366,7 +1366,7 @@ received (unix time).</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line453">line 453</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line457">line 457</a>
</li></ul></dd>
@ -1521,7 +1521,7 @@ Executed on timeout or once packet is received.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line474">line 474</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line478">line 478</a>
</li></ul></dd>
@ -1675,138 +1675,7 @@ Executed on timeout or once packet is received.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line518">line 518</a>
</li></ul></dd>
</dl>
<h4 class="name" id="_write"><span class="type-signature">(private) </span>_write<span class="signature">(chunk)</span><span class="type-signature"></span></h4>
<div class="description">
<p>Write data to the peer's socket.</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>chunk</code></td>
<td class="type">
<span class="param-type">Buffer</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line440">line 440</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line522">line 522</a>
</li></ul></dd>
@ -2219,7 +2088,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line407">line 407</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line411">line 411</a>
</li></ul></dd>
@ -2393,7 +2262,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1377">line 1377</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1390">line 1390</a>
</li></ul></dd>
@ -2524,7 +2393,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line549">line 549</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line553">line 553</a>
</li></ul></dd>
@ -2701,7 +2570,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1358">line 1358</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1371">line 1371</a>
</li></ul></dd>
@ -2783,7 +2652,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1394">line 1394</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1407">line 1407</a>
</li></ul></dd>
@ -2937,7 +2806,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line681">line 681</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line694">line 694</a>
</li></ul></dd>
@ -3019,7 +2888,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1420">line 1420</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1433">line 1433</a>
</li></ul></dd>
@ -3168,7 +3037,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1407">line 1407</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1420">line 1420</a>
</li></ul></dd>
@ -3407,7 +3276,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1442">line 1442</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1455">line 1455</a>
</li></ul></dd>
@ -3545,7 +3414,7 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1429">line 1429</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line1442">line 1442</a>
</li></ul></dd>
@ -3627,7 +3496,138 @@ will use <code>options.createSocket</code> if provided.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line389">line 389</a>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line393">line 393</a>
</li></ul></dd>
</dl>
<h4 class="name" id="write"><span class="type-signature"></span>write<span class="signature">(chunk)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>Write data to the peer's socket.</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>chunk</code></td>
<td class="type">
<span class="param-type">Buffer</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_peer.js.html">bcoin/peer.js</a>, <a href="bcoin_peer.js.html#line444">line 444</a>
</li></ul></dd>
@ -3650,6 +3650,24 @@ will use <code>options.createSocket</code> if provided.</p>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
@ -3675,7 +3693,7 @@ will use <code>options.createSocket</code> if provided.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

24
docs/Pool.html

@ -976,7 +976,7 @@ Only deal with witness peers.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2113">line 2113</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2117">line 2117</a>
</li></ul></dd>
@ -1437,7 +1437,7 @@ or timeout.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line1913">line 1913</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line1917">line 1917</a>
</li></ul></dd>
@ -1673,7 +1673,7 @@ or timeout.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line1993">line 1993</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line1997">line 1997</a>
</li></ul></dd>
@ -2914,7 +2914,7 @@ in the chain before requesting.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line1957">line 1957</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line1961">line 1961</a>
</li></ul></dd>
@ -3076,7 +3076,7 @@ is going to use this seed is high-priority.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2024">line 2024</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2028">line 2028</a>
</li></ul></dd>
@ -3426,7 +3426,7 @@ of <code>{start:Number, end:Number}</code>.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line1978">line 1978</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line1982">line 1982</a>
</li></ul></dd>
@ -3557,7 +3557,7 @@ of <code>{start:Number, end:Number}</code>.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2181">line 2181</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2185">line 2185</a>
</li></ul></dd>
@ -3976,7 +3976,7 @@ of <code>{start:Number, end:Number}</code>.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2213">line 2213</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2217">line 2217</a>
</li></ul></dd>
@ -4117,7 +4117,7 @@ of <code>{start:Number, end:Number}</code>.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2135">line 2135</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2139">line 2139</a>
</li></ul></dd>
@ -5398,7 +5398,7 @@ or timeout.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2162">line 2162</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2166">line 2166</a>
</li></ul></dd>
@ -5554,7 +5554,7 @@ or timeout.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2097">line 2097</a>
<a href="bcoin_pool.js.html">bcoin/pool.js</a>, <a href="bcoin_pool.js.html#line2101">line 2101</a>
</li></ul></dd>
@ -6896,7 +6896,7 @@ or timeout.</p></td>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Profile.html

@ -513,7 +513,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Provider.html

@ -2941,7 +2941,7 @@ implementing a provider).</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

24
docs/SPVNode.html

@ -490,7 +490,7 @@ a chain, a pool, and a wallet database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line35">line 35</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line36">line 36</a>
</li></ul></dd>
@ -690,7 +690,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line171">line 171</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line169">line 169</a>
</li></ul></dd>
@ -821,7 +821,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line250">line 250</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line248">line 248</a>
</li></ul></dd>
@ -903,7 +903,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line211">line 211</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line209">line 209</a>
</li></ul></dd>
@ -1057,7 +1057,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line267">line 267</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line265">line 265</a>
</li></ul></dd>
@ -1262,7 +1262,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line295">line 295</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line293">line 293</a>
</li></ul></dd>
@ -1394,7 +1394,7 @@ wait for the database to load.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line237">line 237</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line235">line 235</a>
</li></ul></dd>
@ -1548,7 +1548,7 @@ wait for the database to load.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line203">line 203</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line201">line 201</a>
</li></ul></dd>
@ -1707,7 +1707,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line183">line 183</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line181">line 181</a>
</li></ul></dd>
@ -1789,7 +1789,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line219">line 219</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line217">line 217</a>
</li></ul></dd>
@ -1871,7 +1871,7 @@ bitcoind nodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line227">line 227</a>
<a href="bcoin_spvnode.js.html">bcoin/spvnode.js</a>, <a href="bcoin_spvnode.js.html#line225">line 225</a>
</li></ul></dd>
@ -1919,7 +1919,7 @@ bitcoind nodes).</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

1076
docs/Script.html

File diff suppressed because it is too large

4
docs/ScriptError.html

@ -342,7 +342,7 @@ potentially pertaining to Script execution.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line3657">line 3657</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line3972">line 3972</a>
</li></ul></dd>
@ -415,7 +415,7 @@ potentially pertaining to Script execution.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Snapshot.html

@ -680,7 +680,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

118
docs/Stack.html

@ -193,6 +193,52 @@
<tr>
<td class="name"><code>state</code></td>
<td class="type">
<span class="param-type">Array.&lt;Number></span>
</td>
<td class="description last"><p>State of if statements.</p></td>
</tr>
<tr>
<td class="name"><code>negate</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="description last"><p>State of if negations.</p></td>
</tr>
<tr>
<td class="name"><code>length</code></td>
@ -250,7 +296,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line285">line 285</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line316">line 316</a>
</li></ul></dd>
@ -399,7 +445,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line744">line 744</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line777">line 777</a>
</li></ul></dd>
@ -499,7 +545,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line328">line 328</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line361">line 361</a>
</li></ul></dd>
@ -603,7 +649,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line499">line 499</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line532">line 532</a>
</li></ul></dd>
@ -700,7 +746,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line508">line 508</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line541">line 541</a>
</li></ul></dd>
@ -797,7 +843,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line633">line 633</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line666">line 666</a>
</li></ul></dd>
@ -894,7 +940,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line520">line 520</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line553">line 553</a>
</li></ul></dd>
@ -991,7 +1037,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line646">line 646</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line679">line 679</a>
</li></ul></dd>
@ -1088,7 +1134,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line664">line 664</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line697">line 697</a>
</li></ul></dd>
@ -1185,7 +1231,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line474">line 474</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line507">line 507</a>
</li></ul></dd>
@ -1331,7 +1377,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line416">line 416</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line449">line 449</a>
</li></ul></dd>
@ -1434,7 +1480,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line312">line 312</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line345">line 345</a>
</li></ul></dd>
@ -1541,7 +1587,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line339">line 339</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line372">line 372</a>
</li></ul></dd>
@ -1641,7 +1687,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line486">line 486</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line519">line 519</a>
</li></ul></dd>
@ -1738,7 +1784,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line295">line 295</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line328">line 328</a>
</li></ul></dd>
@ -1842,7 +1888,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line532">line 532</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line565">line 565</a>
</li></ul></dd>
@ -1939,7 +1985,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line544">line 544</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line577">line 577</a>
</li></ul></dd>
@ -2036,7 +2082,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line684">line 684</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line717">line 717</a>
</li></ul></dd>
@ -2182,7 +2228,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line557">line 557</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line590">line 590</a>
</li></ul></dd>
@ -2279,7 +2325,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line396">line 396</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line429">line 429</a>
</li></ul></dd>
@ -2438,7 +2484,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line350">line 350</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line383">line 383</a>
</li></ul></dd>
@ -2598,7 +2644,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line567">line 567</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line600">line 600</a>
</li></ul></dd>
@ -2695,7 +2741,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line596">line 596</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line629">line 629</a>
</li></ul></dd>
@ -2792,7 +2838,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line702">line 702</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line735">line 735</a>
</li></ul></dd>
@ -2961,7 +3007,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line440">line 440</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line473">line 473</a>
</li></ul></dd>
@ -3061,7 +3107,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line406">line 406</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line439">line 439</a>
</li></ul></dd>
@ -3171,7 +3217,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line731">line 731</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line764">line 764</a>
</li></ul></dd>
@ -3340,7 +3386,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line373">line 373</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line406">line 406</a>
</li></ul></dd>
@ -3570,7 +3616,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line386">line 386</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line419">line 419</a>
</li></ul></dd>
@ -3677,7 +3723,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line609">line 609</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line642">line 642</a>
</li></ul></dd>
@ -3774,7 +3820,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line721">line 721</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line754">line 754</a>
</li></ul></dd>
@ -3871,7 +3917,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line462">line 462</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line495">line 495</a>
</li></ul></dd>
@ -4018,7 +4064,7 @@ the top of the stack.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line429">line 429</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line462">line 462</a>
</li></ul></dd>
@ -4126,7 +4172,7 @@ the top of the stack.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line621">line 621</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line654">line 654</a>
</li></ul></dd>
@ -4272,7 +4318,7 @@ the top of the stack.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line361">line 361</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line394">line 394</a>
</li></ul></dd>
@ -4345,7 +4391,7 @@ the top of the stack.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:12 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/TX.html

@ -8669,7 +8669,7 @@ if coinbase).</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:13 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

70
docs/TXDB.html

@ -826,7 +826,7 @@ transaction was confirmed, or should be ignored.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line690">line 690</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line693">line 693</a>
</li></ul></dd>
@ -1157,7 +1157,7 @@ transaction was confirmed, or should be ignored.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line861">line 861</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line864">line 864</a>
</li></ul></dd>
@ -1338,7 +1338,7 @@ the database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line597">line 597</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line600">line 600</a>
</li></ul></dd>
@ -1515,7 +1515,7 @@ the database.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1009">line 1009</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1012">line 1012</a>
</li></ul></dd>
@ -1825,7 +1825,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1717">line 1717</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1720">line 1720</a>
</li></ul></dd>
@ -1979,7 +1979,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1672">line 1672</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1675">line 1675</a>
</li></ul></dd>
@ -2136,7 +2136,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1849">line 1849</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1852">line 1852</a>
</li></ul></dd>
@ -2293,7 +2293,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1924">line 1924</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1927">line 1927</a>
</li></ul></dd>
@ -2470,7 +2470,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1805">line 1805</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1808">line 1808</a>
</li></ul></dd>
@ -2627,7 +2627,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1236">line 1236</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1239">line 1239</a>
</li></ul></dd>
@ -2784,7 +2784,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1632">line 1632</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1635">line 1635</a>
</li></ul></dd>
@ -2941,7 +2941,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1904">line 1904</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1907">line 1907</a>
</li></ul></dd>
@ -3095,7 +3095,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1378">line 1378</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1381">line 1381</a>
</li></ul></dd>
@ -3431,7 +3431,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1319">line 1319</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1322">line 1322</a>
</li></ul></dd>
@ -3588,7 +3588,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1519">line 1519</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1522">line 1522</a>
</li></ul></dd>
@ -3745,7 +3745,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1894">line 1894</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1897">line 1897</a>
</li></ul></dd>
@ -3902,7 +3902,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1087">line 1087</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1090">line 1090</a>
</li></ul></dd>
@ -4059,7 +4059,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1884">line 1884</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1887">line 1887</a>
</li></ul></dd>
@ -4239,7 +4239,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1498">line 1498</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1501">line 1501</a>
</li></ul></dd>
@ -4396,7 +4396,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1559">line 1559</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1562">line 1562</a>
</li></ul></dd>
@ -4886,7 +4886,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1457">line 1457</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1460">line 1460</a>
</li></ul></dd>
@ -5222,7 +5222,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1393">line 1393</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1396">line 1396</a>
</li></ul></dd>
@ -5376,7 +5376,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1762">line 1762</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1765">line 1765</a>
</li></ul></dd>
@ -5533,7 +5533,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1592">line 1592</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1595">line 1595</a>
</li></ul></dd>
@ -5690,7 +5690,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1914">line 1914</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1917">line 1917</a>
</li></ul></dd>
@ -5847,7 +5847,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1161">line 1161</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1164">line 1164</a>
</li></ul></dd>
@ -6001,7 +6001,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1834">line 1834</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1837">line 1837</a>
</li></ul></dd>
@ -6155,7 +6155,7 @@ orphans, or confirm a transaction.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1789">line 1789</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1792">line 1792</a>
</li></ul></dd>
@ -6310,7 +6310,7 @@ if any of its outpoints are a double-spend.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line639">line 639</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line642">line 642</a>
</li></ul></dd>
@ -6487,7 +6487,7 @@ if any of its outpoints are a double-spend.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line664">line 664</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line667">line 667</a>
</li></ul></dd>
@ -6643,7 +6643,7 @@ to disconnect.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line831">line 831</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line834">line 834</a>
</li></ul></dd>
@ -6954,7 +6954,7 @@ to disconnect.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line788">line 788</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line791">line 791</a>
</li></ul></dd>
@ -7108,7 +7108,7 @@ to disconnect.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line965">line 965</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line968">line 968</a>
</li></ul></dd>
@ -7307,7 +7307,7 @@ to disconnect.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1935">line 1935</a>
<a href="bcoin_txdb.js.html">bcoin/txdb.js</a>, <a href="bcoin_txdb.js.html#line1938">line 1938</a>
</li></ul></dd>
@ -7355,7 +7355,7 @@ to disconnect.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:13 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

4
docs/VerifyError.html

@ -360,7 +360,7 @@ block verification error. Ultimately used to send
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_utils.js.html">bcoin/utils.js</a>, <a href="bcoin_utils.js.html#line2774">line 2774</a>
<a href="bcoin_utils.js.html">bcoin/utils.js</a>, <a href="bcoin_utils.js.html#line2787">line 2787</a>
</li></ul></dd>
@ -433,7 +433,7 @@ block verification error. Ultimately used to send
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:13 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/Wallet.html

@ -11518,7 +11518,7 @@ master key based on the <code>passphrase</code> option.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:13 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/WalletDB.html

@ -5269,7 +5269,7 @@ has been derived. Save to address table. Save wallet.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:13 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

430
docs/Witness.html

@ -40,7 +40,7 @@
<h4 class="name" id="Witness"><span class="type-signature"></span>new Witness<span class="signature">(items)</span><span class="type-signature"></span></h4>
<h4 class="name" id="Witness"><span class="type-signature"></span>new Witness<span class="signature">(items, mutable)</span><span class="type-signature"></span></h4>
@ -110,6 +110,30 @@ stack items or raw witness buffer.</p></td>
</tr>
<tr>
<td class="name"><code>mutable</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="description last"><p>Whether the script will
be changed in the future.</p></td>
</tr>
</tbody>
</table>
@ -118,6 +142,126 @@ stack items or raw witness buffer.</p></td>
<h5 class="subsection-title">Properties:</h5>
<table class="props">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>items</code></td>
<td class="type">
<span class="param-type">Array.&lt;Buffer></span>
</td>
<td class="attributes">
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>redeem</code></td>
<td class="type">
<span class="param-type"><a href="Script.html">Script</a></span>
</td>
<td class="attributes">
&lt;nullable><br>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>mutable</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="attributes">
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
@ -147,7 +291,7 @@ stack items or raw witness buffer.</p></td>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line40">line 40</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line45">line 45</a>
</li></ul></dd>
@ -299,7 +443,7 @@ opcodes).</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line180">line 180</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line209">line 209</a>
</li></ul></dd>
@ -462,7 +606,7 @@ opcodes as strings representing their symbolic name.
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line230">line 230</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line259">line 259</a>
</li></ul></dd>
@ -628,7 +772,7 @@ opcodes as strings representing their symbolic name.
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line269">line 269</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line298">line 298</a>
</li></ul></dd>
@ -731,7 +875,7 @@ to be altering the stack items by hand.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line75">line 75</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line85">line 85</a>
</li></ul></dd>
@ -836,7 +980,7 @@ This method is not 100% reliable.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line106">line 106</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line116">line 116</a>
</li></ul></dd>
@ -940,7 +1084,7 @@ This method is not 100% reliable.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line96">line 96</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line106">line 106</a>
</li></ul></dd>
@ -1040,7 +1184,7 @@ This method is not 100% reliable.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line163">line 163</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line179">line 179</a>
</li></ul></dd>
@ -1093,6 +1237,159 @@ This method is not 100% reliable.</p>
<h4 class="name" id="indexOf"><span class="type-signature"></span>indexOf<span class="signature">(data)</span><span class="type-signature"> &rarr; {Number}</span></h4>
<div class="description">
<p>Find a data element in a witness.</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>data</code></td>
<td class="type">
<span class="param-type">Buffer</span>
</td>
<td class="description last"><p>Data element to match against.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line195">line 195</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Index (<code>-1</code> if not present).</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Number</span>
</dd>
</dl>
<h4 class="name" id="inspect"><span class="type-signature"></span>inspect<span class="signature">()</span><span class="type-signature"> &rarr; {String}</span></h4>
@ -1144,7 +1441,7 @@ This method is not 100% reliable.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line63">line 63</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line73">line 73</a>
</li></ul></dd>
@ -1249,7 +1546,7 @@ This method is not 100% reliable.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line140">line 140</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line150">line 150</a>
</li></ul></dd>
@ -1350,7 +1647,7 @@ This method is not 100% reliable.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line130">line 130</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line140">line 140</a>
</li></ul></dd>
@ -1451,7 +1748,7 @@ This method is not 100% reliable.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line120">line 120</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line130">line 130</a>
</li></ul></dd>
@ -1552,7 +1849,108 @@ This method is not 100% reliable.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line150">line 150</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line160">line 160</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
<h4 class="name" id="isUnknownInput"><span class="type-signature"></span>isUnknownInput<span class="signature">()</span><span class="type-signature"> &rarr; {Boolean}</span></h4>
<div class="description">
<p>&quot;Guess&quot; whether the witness is an unknown/non-standard type.
This method is not 100% reliable.</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line170">line 170</a>
</li></ul></dd>
@ -1654,7 +2052,7 @@ a witness program.</p>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line86">line 86</a>
<a href="bcoin_script.js.html">bcoin/script.js</a>, <a href="bcoin_script.js.html#line96">line 96</a>
</li></ul></dd>
@ -1720,7 +2118,7 @@ a witness program.</p>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:22:01 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:13 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin.js.html

@ -62,7 +62,7 @@ module.exports = function BCoin(options) {
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_abstractblock.js.html

@ -207,7 +207,7 @@ return AbstractBlock;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_address.js.html

@ -853,7 +853,7 @@ return Address;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

16
docs/bcoin_block.js.html

@ -364,8 +364,8 @@ Block.prototype._verify = function _verify(ret) {
return false;
// Size can't be bigger than MAX_BLOCK_SIZE
if (this.txs.length > constants.block.maxSize
|| this.getVirtualSize() > constants.block.maxSize) {
if (this.txs.length > constants.block.MAX_SIZE
|| this.getVirtualSize() > constants.block.MAX_SIZE) {
ret.reason = 'bad-blk-length';
ret.score = 100;
return false;
@ -415,7 +415,7 @@ Block.prototype._verify = function _verify(ret) {
*/
Block.prototype.getCoinbaseHeight = function getCoinbaseHeight() {
var coinbase, code, height;
var coinbase, height;
if (this.version &lt; 2)
return -1;
@ -428,13 +428,7 @@ Block.prototype.getCoinbaseHeight = function getCoinbaseHeight() {
if (!coinbase || coinbase.inputs.length === 0)
return -1;
code = coinbase.inputs[0].script.code;
if (Buffer.isBuffer(code[0]) &amp;&amp; code[0].length &lt;= 6)
height = new bn(code[0], 'le').toNumber();
else
height = -1;
height = coinbase.inputs[0].script.getCoinbaseHeight();
this._cbHeight = height;
return height;
@ -756,7 +750,7 @@ return Block;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

53
docs/bcoin_bloom.js.html

@ -39,26 +39,32 @@ var utils = require('./utils');
* Bloom Filter
* @exports Bloom
* @constructor
* @param {Number} size - Filter size in bytes.
* @param {Number|Bufer} size - Filter size in bytes, or filter itself.
* @param {Number} n - Number of hash functions.
* @param {Number} tweak - Seed value.
* @property {Buffer} filter
* @property {Number} size
* @property {Number} n
* @property {Number} tweak
* @property {Number} update - Update flag (see {@link constants.filterFlags}).
*/
function Bloom(size, n, tweak) {
function Bloom(size, n, tweak, update) {
if (!(this instanceof Bloom))
return new Bloom(size, n, tweak);
return new Bloom(size, n, tweak, update);
if (Buffer.isBuffer(size)) {
this.filter = size;
this.size = this.filter.length * 8;
} else {
this.filter = new Buffer(Math.ceil(size / 8));
this.size = size;
this.reset();
}
this.filter = new Buffer(Math.ceil(size / 8));
this.size = size;
this.n = n;
this.tweak = tweak;
this.update = null;
this.reset();
this.update = update;
}
/**
@ -105,6 +111,7 @@ Bloom.prototype.add = function add(val, enc) {
* Test whether data is present in the filter.
* @param {Buffer|String} val
* @param {String?} enc - Can be any of the Buffer object's encodings.
* @returns {Boolean}
*/
Bloom.prototype.test = function test(val, enc) {
@ -135,6 +142,25 @@ Bloom.prototype.toBuffer = function toBuffer() {
return this.filter;
};
/**
* Ensure the filter is within the size limits.
* @returns {Boolean}
*/
Bloom.prototype.isWithinConstraints = function isWithinConstraints() {
if (this.filter.length > constants.bloom.MAX_BLOOM_FILTER_SIZE)
return false;
if (this.n > constants.bloom.MAX_HASH_FUNCS)
return false;
return true;
};
/*
* Murmur
*/
function mul32(a, b) {
var alo = a &amp; 0xffff;
var blo = b &amp; 0xffff;
@ -223,6 +249,15 @@ function murmur(data, seed) {
return hash;
}
/**
* Murmur3 hash.
* @static
* @function
* @param {Buffer} data
* @param {Number} seed
* @returns {Number}
*/
Bloom.hash = murmur;
module.exports = Bloom;
@ -242,7 +277,7 @@ module.exports = Bloom;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_bst.js.html

@ -788,7 +788,7 @@ module.exports = BST;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

516
docs/bcoin_chain.js.html

@ -62,10 +62,10 @@ var VerifyError = utils.VerifyError;
* @property {Locker} locker
* @property {Object} invalid
* @property {Number} bestHeight
* @property {Number} lastUpdate
* @property {ChainBlock?} tip
* @property {Number} height
* @property {Boolean} segwitActive
* @property {Boolean} csvActive
* @property {Object} orphan - Orphan map.
* @emits Chain#open
* @emits Chain#error
@ -102,10 +102,11 @@ function Chain(options) {
this.locker = new bcoin.locker(this, this.add, this.pendingLimit);
this.invalid = {};
this.bestHeight = -1;
this.lastUpdate = utils.now();
this.tip = null;
this.height = -1;
this.synced = false;
this.segwitActive = null;
this.csvActive = null;
this.orphan = {
map: {},
@ -243,22 +244,29 @@ Chain.prototype._init = function _init() {
self.tip = tip;
self.height = tip.height;
if (self.bestHeight === -1)
if (tip.height > self.bestHeight) {
self.bestHeight = tip.height;
network.height = tip.height;
}
self.isSegwitActive(function(err, result) {
self._getInitialState(function(err) {
if (err)
return self.emit('error', err);
if (result)
if (self.csvActive)
bcoin.debug('CSV is active.');
if (self.segwitActive)
bcoin.debug('Segwit is active.');
self.loaded = true;
self.emit('open');
self.emit('tip', tip);
if (self.isFull())
if (!self.synced &amp;&amp; self.isFull()) {
self.synced = true;
self.emit('full');
}
});
});
});
@ -364,18 +372,14 @@ Chain.prototype._preload = function _preload(callback) {
});
stream.on('error', function(err) {
var start = Math.max(0, height - 2);
self.reset(start, function(e) {
if (e)
return callback(e);
return callback(err);
});
stream.destroy();
return callback(err);
});
stream.on('data', function(data) {
var blocks = [];
var need = 80 - buf.size;
var lastEntry, block, entry, start;
var lastEntry, block, data, entry;
while (data.length >= need) {
buf.data.push(data.slice(0, need));
@ -396,11 +400,12 @@ Chain.prototype._preload = function _preload(callback) {
return;
for (i = 0; i &lt; blocks.length; i++) {
block = blocks[i];
data = blocks[i];
try {
data = parseHeader(data);
} catch (e) {
stream.destroy();
return callback(e);
}
@ -414,13 +419,8 @@ Chain.prototype._preload = function _preload(callback) {
// Do some paranoid checks.
if (lastEntry &amp;&amp; data.prevBlock !== lastEntry.hash) {
start = Math.max(0, height - 2);
stream.destroy();
return self.reset(start, function(err) {
if (err)
return callback(err);
return callback(new Error('Corrupt headers.'));
});
return callback(new Error('Corrupt headers.'));
}
// Create headers object for validation.
@ -429,13 +429,8 @@ Chain.prototype._preload = function _preload(callback) {
// Verify the block headers. We don't want to
// trust an external centralized source completely.
if (!block.verifyHeaders()) {
start = Math.max(0, height - 2);
stream.destroy();
return self.reset(start, function(err) {
if (err)
return callback(err);
return callback(new Error('Bad headers.'));
});
return callback(new Error('Bad headers.'));
}
// Create a chain entry.
@ -504,11 +499,8 @@ Chain.prototype._verifyContext = function _verifyContext(block, prev, callback)
Chain.prototype._verify = function _verify(block, prev, callback) {
var self = this;
var flags = constants.flags.MANDATORY_VERIFY_FLAGS;
var lockFlags = constants.flags.MANDATORY_LOCKTIME_FLAGS;
var height, ts, i, tx, coinbaseHeight;
var medianTime, segwit, commitmentHash;
var ret = {};
var height, ts, i, tx, medianTime, commitmentHash;
function done(err, result) {
prev.free();
@ -518,9 +510,12 @@ Chain.prototype._verify = function _verify(block, prev, callback) {
if (!block.verify(ret))
return done(new VerifyError(block, 'invalid', ret.reason, ret.score));
if (this.options.spv || block.type !== 'block')
return done(null, constants.flags.MANDATORY_VERIFY_FLAGS);
// Skip the genesis block
if (block.isGenesis())
return done(null, flags);
return done(null, constants.flags.MANDATORY_VERIFY_FLAGS);
// Ensure it's not an orphan
if (!prev)
@ -540,106 +535,26 @@ Chain.prototype._verify = function _verify(block, prev, callback) {
if (block.bits !== self.getTarget(prev, block))
return done(new VerifyError(block, 'invalid', 'bad-diffbits', 100));
// For some reason bitcoind has p2sh in the
// mandatory flags by default, when in reality
// it wasn't activated until march 30th 2012.
// The first p2sh output and redeem script
// appeared on march 7th 2012, only it did
// not have a signature. See:
// 6a26d2ecb67f27d1fa5524763b49029d7106e91e3cc05743073461a719776192
// 9c08a4d78931342b37fd5f72900fb9983087e6f46c4a097d8a1f52c74e28eaf6
if (block.ts &lt; constants.block.bip16time)
flags &amp;= ~constants.flags.VERIFY_P2SH;
// Only allow version 2 blocks (coinbase height)
// once the majority of blocks are using it.
if (block.version &lt; 2 &amp;&amp; prev.isOutdated(2))
return done(new VerifyError(block, 'obsolete', 'bad-version', 0));
// Only allow version 3 blocks (sig validation)
// once the majority of blocks are using it.
if (block.version &lt; 3 &amp;&amp; prev.isOutdated(3))
return done(new VerifyError(block, 'obsolete', 'bad-version', 0));
// Only allow version 4 blocks (checklocktimeverify)
// once the majority of blocks are using it.
if (block.version &lt; 4 &amp;&amp; prev.isOutdated(4))
return done(new VerifyError(block, 'obsolete', 'bad-version', 0));
// Only allow version 5 blocks (segwit)
// once the majority of blocks are using it.
if (network.type === 'segnet3' &amp;&amp; height >= network.segwitHeight) {
if (block.version &lt; 5 &amp;&amp; prev.isOutdated(5))
return done(new VerifyError(block, 'obsolete', 'bad-version', 0));
}
// Only allow version 8 blocks (locktime median past)
// once the majority of blocks are using it.
// if (block.version &lt; 8 &amp;&amp; prev.isOutdated(8))
// return done(new VerifyError(block, 'obsolete', 'bad-version', 0));
// Make sure the height contained in the coinbase is correct.
if (network.block.bip34height !== -1 &amp;&amp; height >= network.block.bip34height) {
if (block.version >= 2 &amp;&amp; prev.isUpgraded(2))
coinbaseHeight = true;
}
// Signature validation is now enforced (bip66)
if (block.version >= 3 &amp;&amp; prev.isUpgraded(3))
flags |= constants.flags.VERIFY_DERSIG;
// CHECKLOCKTIMEVERIFY is now usable (bip65)
if (block.version >= 4 &amp;&amp; prev.isUpgraded(4))
flags |= constants.flags.VERIFY_CHECKLOCKTIMEVERIFY;
// Segregrated witness is now usable
if (network.type === 'segnet3' &amp;&amp; height >= network.segwitHeight) {
if (block.version >= 5) {
if (prev.isUpgraded(5)) {
flags |= constants.flags.VERIFY_WITNESS;
segwit = true;
self.segwitActive = true;
} else {
self.segwitActive = false;
}
}
}
// Locktime median time past is now enforced.
// if (block.version >= 8 &amp;&amp; prev.isUpgraded(8))
// lockFlags |= constants.flags.MEDIAN_TIME_PAST;
if (network.type === 'segnet4') {
self.getState(prev, 'witness', function(err, state) {
if (err)
return callback(err);
if (state === constants.thresholdStates.ACTIVE) {
flags |= constants.flags.VERIFY_WITNESS;
segwit = true;
self.segwitActive = true;
} else {
self.segwitActive = false;
}
self._checkDeployments(block, prev, function(err, state) {
if (err)
return done(err);
return finish();
});
} else {
finish();
}
// Expose the state of csv and segwit globally.
self.csvActive = state.csv;
self.segwitActive = state.segwit;
function finish() {
// Can't verify any further when merkleblock or headers.
if (block.type !== 'block')
return done(null, flags);
return done(null, state.flags);
// Make sure the height contained in the coinbase is correct.
if (coinbaseHeight) {
if (state.coinbaseHeight) {
if (block.getCoinbaseHeight() !== height)
return done(new VerifyError(block, 'invalid', 'bad-cb-height', 100));
}
if (segwit) {
// Check the commitment hash for segwit.
if (state.segwit) {
commitmentHash = block.commitmentHash;
if (commitmentHash) {
if (!block.witnessNonce) {
@ -657,6 +572,8 @@ Chain.prototype._verify = function _verify(block, prev, callback) {
}
}
// Blocks that do not commit to
// witness data data cannot contain it.
if (!commitmentHash) {
if (block.hasWitness()) {
return done(new VerifyError(block,
@ -667,7 +584,7 @@ Chain.prototype._verify = function _verify(block, prev, callback) {
}
// Get timestamp for tx.isFinal().
ts = (lockFlags &amp; constants.flags.MEDIAN_TIME_PAST) !== 0
ts = (state.lockFlags &amp; constants.flags.MEDIAN_TIME_PAST) !== 0
? medianTime
: block.ts;
@ -685,15 +602,127 @@ Chain.prototype._verify = function _verify(block, prev, callback) {
}
}
return done(null, flags);
return done(null, state.flags);
});
});
};
/**
* Check all deployments on a chain, ranging from p2sh to segwit.
* @private
* @param {Block} block
* @param {ChainBlock} prev
* @param {Function} callback - Returns [{@link VerifyError}, Object].
*/
Chain.prototype._checkDeployments = function _checkDeployments(block, prev, callback) {
var self = this;
var height = prev.height + 1;
var state = {
flags: constants.flags.MANDATORY_VERIFY_FLAGS,
lockFlags: constants.flags.MANDATORY_LOCKTIME_FLAGS,
coinbaseHeight: false,
segwit: false,
csv: false
};
// For some reason bitcoind has p2sh in the
// mandatory flags by default, when in reality
// it wasn't activated until march 30th 2012.
// The first p2sh output and redeem script
// appeared on march 7th 2012, only it did
// not have a signature. See:
// 6a26d2ecb67f27d1fa5524763b49029d7106e91e3cc05743073461a719776192
// 9c08a4d78931342b37fd5f72900fb9983087e6f46c4a097d8a1f52c74e28eaf6
if (block.ts &lt; constants.block.BIP16_TIME)
state.flags &amp;= ~constants.flags.VERIFY_P2SH;
// Only allow version 2 blocks (coinbase height)
// once the majority of blocks are using it.
if (block.version &lt; 2 &amp;&amp; prev.isOutdated(2))
return callback(new VerifyError(block, 'obsolete', 'bad-version', 0));
// Only allow version 3 blocks (sig validation)
// once the majority of blocks are using it.
if (block.version &lt; 3 &amp;&amp; prev.isOutdated(3))
return callback(new VerifyError(block, 'obsolete', 'bad-version', 0));
// Only allow version 4 blocks (checklocktimeverify)
// once the majority of blocks are using it.
if (block.version &lt; 4 &amp;&amp; prev.isOutdated(4))
return callback(new VerifyError(block, 'obsolete', 'bad-version', 0));
// Only allow version 5 blocks (bip141 - segnet3)
// once the majority of blocks are using it.
if (network.segwitHeight !== -1 &amp;&amp; height >= network.segwitHeight) {
if (block.version &lt; 5 &amp;&amp; prev.isOutdated(5))
return callback(new VerifyError(block, 'obsolete', 'bad-version', 0));
}
// Make sure the height contained in the coinbase is correct.
if (block.version >= 2 &amp;&amp; prev.isUpgraded(2))
state.coinbaseHeight = true;
// Signature validation is now enforced (bip66)
if (block.version >= 3 &amp;&amp; prev.isUpgraded(3))
state.flags |= constants.flags.VERIFY_DERSIG;
// CHECKLOCKTIMEVERIFY is now usable (bip65)
if (block.version >= 4 &amp;&amp; prev.isUpgraded(4))
state.flags |= constants.flags.VERIFY_CHECKLOCKTIMEVERIFY;
// Segregrated witness is now usable (bip141 - segnet3)
if (network.segwitHeight !== -1 &amp;&amp; height >= network.segwitHeight) {
if (block.version >= 5 &amp;&amp; prev.isUpgraded(5)) {
state.flags |= constants.flags.VERIFY_WITNESS;
state.segwit = true;
}
}
utils.serial([
function(next) {
// CHECKSEQUENCEVERIFY and median time
// past locktimes are now usable (bip9 &amp; bip113).
self.isActive(prev, 'csv', function(err, active) {
if (err)
return next(err);
if (active) {
state.flags |= constants.flags.VERIFY_CHECKSEQUENCEVERIFY;
state.lockFlags |= constants.flags.VERIFY_SEQUENCE;
state.lockFlags |= constants.flags.MEDIAN_TIME_PAST;
state.csv = true;
}
return next();
});
},
function(next) {
// Segregrated witness is now usable (bip141 - segnet4)
self.isActive(prev, 'witness', function(err, active) {
if (err)
return next(err);
if (active) {
state.flags |= constants.flags.VERIFY_WITNESS;
state.segwit = true;
}
return next();
});
}
], function(err) {
if (err)
return callback(err);
return callback(null, state);
});
};
/**
* Check block for duplicate txids in blockchain
* history (BIP30). Note that txids are only considered
* duplicate if they are not yet completely spent.
* Determine whether to check block for duplicate txids in blockchain
* history (BIP30). If we're on a chain that has bip34 activated, we
* can skip this.
* @private
* @see https://github.com/bitcoin/bips/blob/master/bip-0030.mediawiki
* @param {Block|MerkleBlock} block
@ -711,6 +740,38 @@ Chain.prototype._checkDuplicates = function _checkDuplicates(block, prev, callba
if (block.isGenesis())
return callback();
if (network.block.bip34height === -1 || height &lt;= network.block.bip34height)
return this._findDuplicates(block, prev, callback);
this.db.get(network.block.bip34height, function(err, entry) {
if (err)
return callback(err);
// It was no longer possible to create duplicate
// TXs once bip34 went into effect. We can check
// for this to avoid a DB lookup.
if (entry &amp;&amp; entry.hash === network.block.bip34hash)
return callback();
return self._findDuplicates(block, prev, callback);
});
};
/**
* Check block for duplicate txids in blockchain
* history (BIP30). Note that txids are only considered
* duplicate if they are not yet completely spent.
* @private
* @see https://github.com/bitcoin/bips/blob/master/bip-0030.mediawiki
* @param {Block|MerkleBlock} block
* @param {ChainBlock} prev
* @param {Function} callback - Returns [{@link VerifyError}].
*/
Chain.prototype._findDuplicates = function _findDuplicates(block, prev, callback) {
var self = this;
var height = prev.height + 1;
// Check all transactions
utils.forEachSerial(block.txs, function(tx, next) {
var hash = tx.hash('hex');
@ -724,8 +785,8 @@ Chain.prototype._checkDuplicates = function _checkDuplicates(block, prev, callba
// Blocks 91842 and 91880 created duplicate
// txids by using the same exact output script
// and extraNonce.
if (network.type === 'main') {
if (height === 91842 || height === 91880)
if (constants.bip30[height]) {
if (block.hash('hex') === constants.bip30[height])
return next();
}
return next(new VerifyError(block, 'invalid', 'bad-txns-BIP30', 100));
@ -789,12 +850,12 @@ Chain.prototype._checkInputs = function _checkInputs(block, prev, flags, callbac
// Check for block sigops limits
// Start counting P2SH sigops once block
// timestamps reach March 31st, 2012.
if (block.ts >= constants.block.bip16time)
if (block.ts >= constants.block.BIP16_TIME)
sigops += tx.getSigops(true);
else
sigops += tx.getSigops();
if (sigops > constants.block.maxSigops) {
if (sigops > constants.block.MAX_SIGOPS) {
return callback(new VerifyError(block,
'invalid',
'bad-blk-sigops',
@ -1051,8 +1112,8 @@ Chain.prototype.disconnect = function disconnect(entry, callback) {
self.tip = entry;
self.height = entry.height;
if (self.bestHeight === -1)
network.height = entry.height;
self.bestHeight = entry.height;
network.height = entry.height;
self.emit('tip', entry);
@ -1106,8 +1167,8 @@ Chain.prototype.connect = function connect(entry, callback) {
self.tip = entry;
self.height = entry.height;
if (self.bestHeight === -1)
network.height = entry.height;
self.bestHeight = entry.height;
network.height = entry.height;
self.emit('tip', entry);
@ -1137,6 +1198,9 @@ Chain.prototype._setBestChain = function _setBestChain(entry, prev, block, callb
if (err)
return callback(err);
// Do "contextual" verification on our block
// now that we're certain its previous
// block is in the chain.
self._verifyContext(block, prev, function(err) {
if (err) {
// Couldn't verify block.
@ -1164,9 +1228,6 @@ Chain.prototype._setBestChain = function _setBestChain(entry, prev, block, callb
self.tip = entry;
self.height = entry.height;
if (self.bestHeight === -1)
network.height = entry.height;
self.emit('tip', entry);
return callback();
@ -1174,10 +1235,6 @@ Chain.prototype._setBestChain = function _setBestChain(entry, prev, block, callb
});
}
// Update the timestamp to
// maintain a time delta of blocks.
this.lastUpdate = utils.now();
// We don't have a genesis block yet.
if (!this.tip) {
if (entry.hash !== network.genesis.hash) {
@ -1191,9 +1248,6 @@ Chain.prototype._setBestChain = function _setBestChain(entry, prev, block, callb
}
// Everything is in order.
// Do "contextual" verification on our block
// now that we're certain its previous
// block is in the chain.
if (entry.prevBlock === this.tip.hash)
return done();
@ -1409,6 +1463,11 @@ Chain.prototype.add = function add(block, callback, force) {
network.height = self.bestHeight;
}
if (height > self.bestHeight) {
self.bestHeight = height;
network.height = height;
}
// If previous block wasn't ever seen,
// add it current to orphans and break.
if (!prev) {
@ -1554,8 +1613,10 @@ Chain.prototype.add = function add(block, callback, force) {
}
utils.nextTick(function() {
if (self.isFull())
if (!self.synced &amp;&amp; self.isFull()) {
self.synced = true;
self.emit('full');
}
if (err)
callback(err);
@ -1794,14 +1855,7 @@ Chain.prototype.getOrphan = function getOrphan(hash) {
*/
Chain.prototype.isFull = function isFull() {
var delta;
if (!this.tip)
return false;
delta = utils.now() - this.tip.ts;
return delta &lt; 4 * 60 * 60;
return !this.isInitial();
};
/**
@ -1813,16 +1867,17 @@ Chain.prototype.isFull = function isFull() {
*/
Chain.prototype.isInitial = function isInitial() {
var now, delta;
if (!this.tip)
return true;
now = utils.now();
delta = now - this.lastUpdate;
if (this.synced)
return false;
if (this.height &lt; network.checkpoints.lastHeight)
return true;
// Should mimic the original IsInitialBlockDownload() function
return delta &lt; 10 &amp;&amp; this.tip.ts &lt; now - 24 * 60 * 60;
return this.height &lt; this.bestHeight - 24 * 6
|| this.tip.ts &lt; utils.now() - network.block.maxTipAge;
};
/**
@ -2018,7 +2073,7 @@ Chain.prototype.getOrphanRoot = function getOrphanRoot(hash) {
Chain.prototype.getCurrentTarget = function getCurrentTarget(callback) {
if (!this.tip)
return callback(null, utils.toCompact(network.powLimit));
return callback(null, utils.toCompact(network.pow.limit));
return this.getTargetAsync(this.tip, null, callback);
};
@ -2033,12 +2088,12 @@ Chain.prototype.getCurrentTarget = function getCurrentTarget(callback) {
Chain.prototype.getTargetAsync = function getTargetAsync(last, block, callback) {
var self = this;
if ((last.height + 1) % network.powDiffInterval !== 0) {
if (!network.powAllowMinDifficultyBlocks)
if ((last.height + 1) % network.pow.retargetInterval !== 0) {
if (!network.pow.allowMinDifficultyBlocks)
return utils.asyncify(callback)(null, this.getTarget(last, block));
}
return last.getAncestors(network.powDiffInterval, function(err, ancestors) {
return last.getAncestors(network.pow.retargetInterval, function(err, ancestors) {
if (err)
return callback(err);
@ -2057,7 +2112,7 @@ Chain.prototype.getTargetAsync = function getTargetAsync(last, block, callback)
*/
Chain.prototype.getTarget = function getTarget(last, block, ancestors) {
var powLimit = utils.toCompact(network.powLimit);
var powLimit = utils.toCompact(network.pow.limit);
var ts, first, i;
// Genesis
@ -2068,16 +2123,16 @@ Chain.prototype.getTarget = function getTarget(last, block, ancestors) {
ancestors = last.ancestors;
// Do not retarget
if ((last.height + 1) % network.powDiffInterval !== 0) {
if (network.powAllowMinDifficultyBlocks) {
if ((last.height + 1) % network.pow.retargetInterval !== 0) {
if (network.pow.allowMinDifficultyBlocks) {
// Special behavior for testnet:
ts = block ? (block.ts || block) : utils.now();
if (ts > last.ts + network.powTargetSpacing * 2)
if (ts > last.ts + network.pow.targetSpacing * 2)
return powLimit;
i = 1;
while (ancestors[i]
&amp;&amp; last.height % network.powDiffInterval !== 0
&amp;&amp; last.height % network.pow.retargetInterval !== 0
&amp;&amp; last.bits === powLimit) {
last = ancestors[i++];
}
@ -2086,7 +2141,7 @@ Chain.prototype.getTarget = function getTarget(last, block, ancestors) {
}
// Back 2 weeks
first = ancestors[network.powDiffInterval - 1];
first = ancestors[network.pow.retargetInterval - 1];
assert(first);
@ -2102,10 +2157,10 @@ Chain.prototype.getTarget = function getTarget(last, block, ancestors) {
*/
Chain.prototype.retarget = function retarget(last, first) {
var powTargetTimespan = new bn(network.powTargetTimespan);
var powTargetTimespan = new bn(network.pow.targetTimespan);
var actualTimespan, target;
if (network.powNoRetargeting)
if (network.pow.noRetargeting)
return last.bits;
actualTimespan = new bn(last.ts - first.ts);
@ -2120,8 +2175,8 @@ Chain.prototype.retarget = function retarget(last, first) {
target.imul(actualTimespan);
target = target.div(powTargetTimespan);
if (target.cmp(network.powLimit) > 0)
target = network.powLimit.clone();
if (target.cmp(network.pow.limit) > 0)
target = network.pow.limit.clone();
return utils.toCompact(target);
};
@ -2152,6 +2207,29 @@ Chain.prototype.findLocator = function findLocator(locator, callback) {
}, callback);
};
/**
* Check whether a versionbits deployment is active (BIP9: versionbits).
* @example
* chain.isActive(entry, 'witness', callback);
* @see https://github.com/bitcoin/bips/blob/master/bip-0009.mediawiki
* @param {ChainBlock} prev - Previous chain entry.
* @param {String} id - Deployment id.
* @param {Function} callback - Returns [Error, Number].
*/
Chain.prototype.isActive = function isActive(prev, id, callback) {
// Optimization for main
if (network.type === 'main' &amp;&amp; prev.height &lt; 400000)
return callback(null, false);
this.getState(prev, id, function(err, state) {
if (err)
return callback(err);
return callback(null, state === constants.thresholdStates.ACTIVE);
});
};
/**
* Get chain entry state for a deployment (BIP9: versionbits).
* @example
@ -2222,7 +2300,7 @@ Chain.prototype.getState = function getState(prev, id, callback) {
})(null, prev);
function walkForward(state) {
var entry;
var entry, count, i;
if (compute.length === 0)
return callback(null, state);
@ -2251,8 +2329,8 @@ Chain.prototype.getState = function getState(prev, id, callback) {
if (medianTime >= timeTimeout)
return walkForward(constants.thresholdStates.FAILED);
var count = 0;
var i = 0;
count = 0;
i = 0;
(function next(err, entry) {
if (err)
@ -2333,70 +2411,46 @@ Chain.prototype.computeBlockVersion = function computeBlockVersion(prev, callbac
* A helper function to test whether segwit is active at any
* given time. Since segwit affects almost all of bitcoin, it
* is one deployment that needs to be checked frequently.
* @private
* @param {Function} callback - Returns [Error, Boolean].
*/
Chain.prototype.isSegwitActive = function isSegwitActive(callback, force) {
Chain.prototype._getInitialState = function _getInitialState(callback) {
var self = this;
var unlock;
if (this.segwitActive != null)
return utils.asyncify(callback)(null, this.segwitActive);
if (!network.witness) {
this.segwitActive = false;
return utils.asyncify(callback)(null, false);
}
return utils.nextTick(callback);
if (!this.tip)
return utils.asyncify(callback)(null, false);
// unlock = this._lock(isSegwitActive, [callback], force);
// if (!unlock)
// return;
// callback = utils.wrap(callback, unlock);
if (network.type === 'segnet4') {
return this.tip.getPrevious(function(err, prev) {
if (err)
return callback(err);
return self.getState(prev, 'witness', function(err, state) {
if (err)
return callback(err);
self.segwitActive = state === constants.thresholdStates.ACTIVE;
return callback(null, self.segwitActive);
});
});
}
assert(network.type === 'segnet3');
if (!(network.segwitHeight !== -1 &amp;&amp; this.tip.height >= network.segwitHeight))
return utils.asyncify(callback)(null, false);
return utils.nextTick(callback);
return this.tip.getPrevious(function(err, prev) {
if (err)
return callback(err);
if (!prev) {
self.csvActive = false;
self.segwitActive = false;
return callback(null, false);
return callback();
}
prev.ensureAncestors(function(err) {
if (err)
return callback(err);
if (self.tip.version >= 5 &amp;&amp; prev.isUpgraded(5)) {
if (err) {
prev.free();
self.segwitActive = true;
return callback(null, true);
return callback(err);
}
self._checkDeployments(self.tip, prev, function(err, state) {
if (err) {
prev.free();
return callback(err);
}
prev.free();
self.segwitActive = false;
return callback(null, false);
self.csvActive = state.csv;
self.segwitActive = state.segwit;
prev.free();
return callback();
});
});
});
};
@ -2416,14 +2470,9 @@ Chain.prototype.isSegwitActive = function isSegwitActive(callback, force) {
* @param {Function} callback - Returns [Error, Boolean].
*/
Chain.prototype.checkFinal = function checkFinal(prev, tx, flags, callback, force) {
Chain.prototype.checkFinal = function checkFinal(prev, tx, flags, callback) {
var height = prev.height + 1;
// var unlock = this._lock(checkFinal, [prev, tx, flags, callback], force);
// if (!unlock)
// return;
// callback = utils.wrap(callback, unlock);
function check(err, ts) {
if (err)
return callback(err);
@ -2448,10 +2497,10 @@ Chain.prototype.checkFinal = function checkFinal(prev, tx, flags, callback, forc
Chain.prototype.getLocks = function getLocks(tx, flags, entry, callback) {
var self = this;
var mask = constants.sequenceLocktimeMask;
var granularity = constants.sequenceLocktimeGranularity;
var disableFlag = constants.sequenceLocktimeDisableFlag;
var typeFlag = constants.sequenceLocktimeTypeFlag;
var mask = constants.sequence.MASK;
var granularity = constants.sequence.GRANULARITY;
var disableFlag = constants.sequence.DISABLE_FLAG;
var typeFlag = constants.sequence.TYPE_FLAG;
var hasFlag = flags &amp; constants.flags.VERIFY_SEQUENCE;
var minHeight = -1;
var minTime = -1;
@ -2531,14 +2580,9 @@ Chain.prototype.evalLocks = function evalLocks(entry, minHeight, minTime, callba
* @param {Function} callback - Returns [Error, Boolean].
*/
Chain.prototype.checkLocks = function checkLocks(tx, flags, entry, callback, force) {
Chain.prototype.checkLocks = function checkLocks(tx, flags, entry, callback) {
var self = this;
// var unlock = this._lock(checkLocks, [tx, flags, entry, callback], force);
// if (!unlock)
// return;
// callback = utils.wrap(callback, unlock);
this.getLocks(tx, flags, entry, function(err, minHeight, minTime) {
if (err)
return callback(err);
@ -2569,7 +2613,7 @@ return Chain;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

67
docs/bcoin_chainblock.js.html

@ -129,9 +129,9 @@ ChainBlock.prototype.isGenesis = function isGenesis() {
ChainBlock.prototype.ensureAncestors = function ensureAncestors(callback) {
var majorityWindow = network.block.majorityWindow;
var medianTimespan = constants.block.medianTimespan;
var powDiffInterval = network.powDiffInterval;
var allowMinDiff = network.powAllowMinDifficultyBlocks;
var medianTimespan = constants.block.MEDIAN_TIMESPAN;
var powDiffInterval = network.pow.retargetInterval;
var allowMinDiff = network.pow.allowMinDifficultyBlocks;
var max = Math.max(majorityWindow, medianTimespan);
if ((this.height + 1) % powDiffInterval === 0 || allowMinDiff)
max = Math.max(max, powDiffInterval);
@ -316,7 +316,7 @@ ChainBlock.prototype.getNext = function getNext(callback) {
ChainBlock.prototype.getMedianTime = function getMedianTime(ancestors) {
var entry = this;
var median = [];
var timeSpan = constants.block.medianTimespan;
var timeSpan = constants.block.MEDIAN_TIMESPAN;
var i;
if (!ancestors)
@ -330,6 +330,22 @@ ChainBlock.prototype.getMedianTime = function getMedianTime(ancestors) {
return median[median.length / 2 | 0];
};
/**
* Get median time past asynchronously (see {@link ChainBlock#getMedianTime}).
* @param {Function} callback - Returns [Error, Number].
*/
ChainBlock.prototype.getMedianTimeAsync = function getMedianTimeAsync(callback) {
var self = this;
return this.getAncestors(constants.block.MEDIAN_TIMESPAN, function(err, ancestors) {
if (err)
return callback(err);
return callback(null, self.getMedianTime(ancestors));
});
};
/**
* Check isSuperMajority against majorityRejectOutdated.
* @param {Number} version
@ -341,6 +357,20 @@ ChainBlock.prototype.isOutdated = function isOutdated(version, ancestors) {
return this.isSuperMajority(version, network.block.majorityRejectOutdated, ancestors);
};
/**
* Check {@link ChainBlock#isUpgraded asynchronously}.
* @param {Number} version
* @param {Function} callback - Returns [Error, Boolean].
* @returns {Boolean}
*/
ChainBlock.prototype.isOutdatedAsync = function isOutdatedAsync(version, callback) {
return this.isSuperMajorityAsync(
version,
network.block.majorityRejectOutdated,
callback);
};
/**
* Check isSuperMajority against majorityEnforceUpgrade.
* @param {Number} version
@ -352,6 +382,20 @@ ChainBlock.prototype.isUpgraded = function isUpgraded(version, ancestors) {
return this.isSuperMajority(version, network.block.majorityEnforceUpgrade, ancestors);
};
/**
* Check {@link ChainBlock#isUpgraded} asynchronously.
* @param {Number} version
* @param {Function} callback
* @returns {Boolean}
*/
ChainBlock.prototype.isUpgradedAsync = function isUpgradedAsync(version, callback) {
return this.isSuperMajorityAsync(
version,
network.block.majorityEnforceUpgrade,
callback);
};
/**
* Calculate found number of block versions within the majority window.
* @param {Number} version
@ -379,18 +423,21 @@ ChainBlock.prototype.isSuperMajority = function isSuperMajority(version, require
};
/**
* Get median time past asynchronously.
* @param {Function} callback - Returns [Error, Number].
* Calculate {@link ChainBlock#isSuperMajority asynchronously}.
* @param {Number} version
* @param {Number} required
* @param {Function} callback - Returns [Error, Boolean].
* @returns {Boolean}
*/
ChainBlock.prototype.getMedianTimeAsync = function getMedianTimeAsync(callback) {
ChainBlock.prototype.isSuperMajorityAsync = function isSuperMajorityAsync(version, required, callback) {
var self = this;
return this.getAncestors(constants.block.medianTimespan, function(err, ancestors) {
return this.getAncestors(network.block.majorityWindow, function(err, ancestors) {
if (err)
return callback(err);
return callback(null, self.getMedianTime(ancestors));
return callback(null, self.isSuperMajority(version, required, ancestors));
});
};
@ -522,7 +569,7 @@ return ChainBlock;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

9
docs/bcoin_chaindb.js.html

@ -88,8 +88,8 @@ function ChainDB(chain, options) {
// Need to cache up to the retarget interval
// if we're going to be checking the damn
// target all the time.
if (network.powAllowMinDifficultyBlocks)
this._cacheWindow = network.powDiffInterval + 1;
if (network.pow.allowMinDifficultyBlocks)
this._cacheWindow = network.pow.retargetInterval + 1;
else
this._cacheWindow = network.block.majorityWindow + 1;
@ -1573,8 +1573,7 @@ ChainDB.prototype._pruneBlock = function _pruneBlock(block, batch, callback) {
if (!this.prune)
return callback();
// Keep the genesis block
if (block.isGenesis())
if (block.height &lt;= network.block.pruneAfterHeight)
return callback();
futureHeight = pad32(block.height + this.keepBlocks);
@ -1774,7 +1773,7 @@ return ChainDB;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

8
docs/bcoin_coin.js.html

@ -73,7 +73,9 @@ function Coin(tx, index) {
this.version = tx.version;
this.height = tx.height;
this.value = tx.outputs[index].value;
this.script = tx.outputs[index].script;
if (tx.mutable)
this.value = this.value.clone();
this.script = bcoin.script(tx.outputs[index].script, false);
this.coinbase = tx.isCoinbase();
this.hash = tx.hash('hex');
this.index = index;
@ -83,7 +85,7 @@ function Coin(tx, index) {
this.version = options.version;
this.height = options.height;
this.value = options.value;
this.script = bcoin.script(options.script);
this.script = bcoin.script(options.script, false);
this.coinbase = options.coinbase;
this.hash = options.hash;
this.index = options.index;
@ -332,7 +334,7 @@ return Coin;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_coins.js.html

@ -323,7 +323,7 @@ return Coins;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_coinview.js.html

@ -208,7 +208,7 @@ return CoinView;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

24
docs/bcoin_compactblock.js.html

@ -83,12 +83,7 @@ function CompactBlock(data) {
bcoin.abstractblock.call(this, data);
this.type = 'compactblock';
this.coinbaseHeight = -1;
if (this.version >= 2) {
if (Buffer.isBuffer(data.coinbaseHeight) &amp;&amp; data.coinbaseHeight.length &lt;= 6)
this.coinbaseHeight = new bn(data.coinbaseHeight, 'le').toNumber();
}
this.coinbaseHeight = data.coinbaseHeight;
}
utils.inherits(CompactBlock, bcoin.abstractblock);
@ -122,13 +117,10 @@ CompactBlock.prototype.getCoinbaseHeight = function getCoinbaseHeight() {
*/
CompactBlock.prototype.toBlock = function toBlock() {
var block = bcoin.protocol.parser.parseBlock(this._raw);
var data = bcoin.protocol.parser.parseBlock(this._raw);
delete this._raw;
assert(!block._raw);
block = new bcoin.block(block);
if (this.valid != null)
block.valid = this.valid;
return block;
assert(!data._raw);
return new bcoin.block(data);
};
/**
@ -137,10 +129,8 @@ CompactBlock.prototype.toBlock = function toBlock() {
* @returns {Boolean}
*/
CompactBlock.isCompactBlock = function isCompactBlock(block) {
return block
&amp;&amp; block.type === 'compactblock'
&amp;&amp; typeof block.toBlock === 'function';
CompactBlock.isCompactBlock = function isCompactBlock(obj) {
return obj &amp;&amp; typeof obj.toBlock === 'function';
};
return CompactBlock;
@ -161,7 +151,7 @@ return CompactBlock;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_ec.js.html

@ -340,7 +340,7 @@ ec.toLowS = function toLowS(sig) {
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_env.js.html

@ -336,7 +336,7 @@ module.exports = Environment;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

8
docs/bcoin_fullnode.js.html

@ -37,6 +37,7 @@ module.exports = function(bcoin) {
var utils = require('./utils');
var assert = utils.assert;
var network = bcoin.protocol.network;
/**
* Create a fullnode complete with a chain,
@ -75,9 +76,6 @@ function Fullnode(options) {
if (!(this instanceof Fullnode))
return new Fullnode(options);
if (!options)
options = {};
bcoin.node.call(this, options);
this.loaded = false;
@ -114,7 +112,7 @@ Fullnode.prototype._init = function _init() {
this.pool = new bcoin.pool({
chain: this.chain,
mempool: this.mempool,
witness: this.network.witness,
witness: network.witness,
listen: this.options.listen,
selfish: this.options.selfish,
spv: false
@ -644,7 +642,7 @@ return Fullnode;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

58
docs/bcoin_hd.js.html

@ -371,9 +371,9 @@ HDPrivateKey.prototype.derive = function derive(index, hardened) {
if (cached)
return cached;
hardened = index >= constants.hd.hardened ? true : hardened;
if (index &lt; constants.hd.hardened &amp;&amp; hardened)
index += constants.hd.hardened;
hardened = index >= constants.hd.HARDENED ? true : hardened;
if (index &lt; constants.hd.HARDENED &amp;&amp; hardened)
index += constants.hd.HARDENED;
p = new BufferWriter();
@ -399,7 +399,7 @@ HDPrivateKey.prototype.derive = function derive(index, hardened) {
if (!this.fingerPrint) {
this.fingerPrint = utils.ripesha(this.publicKey)
.slice(0, constants.hd.parentFingerPrintSize);
.slice(0, constants.hd.PARENT_FINGERPRINT_SIZE);
}
child = new HDPrivateKey({
@ -484,7 +484,7 @@ HDPrivateKey.prototype.derivePurpose45 = function derivePurpose45() {
HDPrivateKey.prototype.isPurpose45 = function isPurpose45() {
if (this.depth !== 1)
return false;
return this.childIndex === constants.hd.hardened + 45;
return this.childIndex === constants.hd.HARDENED + 45;
};
/**
@ -493,7 +493,7 @@ HDPrivateKey.prototype.isPurpose45 = function isPurpose45() {
*/
HDPrivateKey.prototype.isAccount44 = function isAccount44() {
if (this.childIndex &lt; constants.hd.hardened)
if (this.childIndex &lt; constants.hd.HARDENED)
return false;
return this.depth === 3;
};
@ -505,10 +505,19 @@ HDPrivateKey.prototype.isAccount44 = function isAccount44() {
*/
HDPrivateKey.isExtended = function isExtended(data) {
var i, type, prefix;
if (typeof data !== 'string')
return false;
return network.xprivkeys[data.slice(0, 4)];
for (i = 0; i &lt; network.types.length; i++) {
type = network.types[i];
prefix = network[type].prefixes.xprivkey58;
if (data.indexOf(prefix) === 0)
return true;
}
return false;
};
/**
@ -523,10 +532,10 @@ HDPrivateKey._getIndexes = function _getIndexes(path) {
var indexes = [];
var i, step, hardened, index;
if (~constants.hd.pathRoots.indexOf(path))
if (~constants.hd.PATH_ROOTS.indexOf(path))
return indexes;
if (!~constants.hd.pathRoots.indexOf(root))
if (!~constants.hd.PATH_ROOTS.indexOf(root))
return null;
for (i = 0; i &lt; steps.length; i++) {
@ -542,7 +551,7 @@ HDPrivateKey._getIndexes = function _getIndexes(path) {
index = +step;
if (hardened)
index += constants.hd.hardened;
index += constants.hd.HARDENED;
indexes.push(index);
}
@ -566,9 +575,9 @@ HDPrivateKey.isValidPath = function isValidPath(path, hardened) {
}
if (typeof path === 'number') {
if (path &lt; constants.hd.hardened &amp;&amp; hardened)
path += constants.hd.hardened;
return path >= 0 &amp;&amp; path &lt; constants.hd.maxIndex;
if (path &lt; constants.hd.HARDENED &amp;&amp; hardened)
path += constants.hd.HARDENED;
return path >= 0 &amp;&amp; path &lt; constants.hd.MAX_INDEX;
}
return false;
@ -607,8 +616,8 @@ HDPrivateKey._fromSeed = function _fromSeed(seed, networkType) {
var data = seed.createSeed();
var hash;
if (data.length &lt; constants.hd.minEntropy
|| data.length > constants.hd.maxEntropy) {
if (data.length &lt; constants.hd.MIN_ENTROPY
|| data.length > constants.hd.MAX_ENTROPY) {
throw new Error('Entropy not in range.');
}
@ -993,7 +1002,7 @@ HDPublicKey.prototype.derive = function derive(index, hardened) {
if (cached)
return cached;
if (index >= constants.hd.hardened || hardened)
if (index >= constants.hd.HARDENED || hardened)
throw new Error('Invalid index.');
if (index &lt; 0)
@ -1014,7 +1023,7 @@ HDPublicKey.prototype.derive = function derive(index, hardened) {
if (!this.fingerPrint) {
this.fingerPrint = utils.ripesha(this.publicKey)
.slice(0, constants.hd.parentFingerPrintSize);
.slice(0, constants.hd.PARENT_FINGERPRINT_SIZE);
}
child = new HDPublicKey({
@ -1086,7 +1095,7 @@ HDPublicKey.isValidPath = function isValidPath(arg) {
}
if (typeof arg === 'number')
return arg >= 0 &amp;&amp; arg &lt; constants.hd.hardened;
return arg >= 0 &amp;&amp; arg &lt; constants.hd.HARDENED;
return false;
};
@ -1139,10 +1148,19 @@ HDPublicKey.fromJSON = HDPrivateKey.fromJSON;
*/
HDPublicKey.isExtended = function isExtended(data) {
var i, type, prefix;
if (typeof data !== 'string')
return false;
return network.xpubkeys[data.slice(0, 4)];
for (i = 0; i &lt; network.types.length; i++) {
type = network.types[i];
prefix = network[type].prefixes.xpubkey58;
if (data.indexOf(prefix) === 0)
return true;
}
return false;
};
/**
@ -1305,7 +1323,7 @@ return HD;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

9
docs/bcoin_headers.js.html

@ -62,8 +62,6 @@ function Headers(data) {
return new Headers(data);
bcoin.abstractblock.call(this, data);
this.type = 'headers';
}
utils.inherits(Headers, bcoin.abstractblock);
@ -179,7 +177,10 @@ Headers.fromRaw = function fromRaw(data, enc) {
*/
Headers.isHeaders = function isHeaders(obj) {
return obj &amp;&amp; obj.type === 'headers' &amp;&amp; typeof obj.render === 'function';
return obj
&amp;&amp; !obj.txs
&amp;&amp; typeof obj.abbr === 'function'
&amp;&amp; typeof obj.toBlock !== 'function';
};
/**
@ -204,7 +205,7 @@ return Headers;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_http_base.js.html

@ -551,7 +551,7 @@ module.exports = HTTPBase;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_http_client.js.html

@ -960,7 +960,7 @@ return HTTPClient;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_http_provider.js.html

@ -247,7 +247,7 @@ return HTTPProvider;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_http_request.js.html

@ -381,7 +381,7 @@ module.exports = request;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

8
docs/bcoin_http_server.js.html

@ -95,7 +95,7 @@ HTTPServer.prototype._init = function _init() {
}
res.setHeader('X-Bcoin-Network', network.type);
res.setHeader('X-Bcoin-Version', constants.userAgent);
res.setHeader('X-Bcoin-Version', constants.USER_AGENT);
next();
});
@ -210,7 +210,7 @@ HTTPServer.prototype._init = function _init() {
this.get('/', function(req, res, next, send) {
send(200, {
version: constants.userAgent,
version: constants.USER_AGENT,
network: network.type
});
});
@ -631,7 +631,7 @@ HTTPServer.prototype._initIO = function _initIO() {
self.emit('websocket', socket);
socket.emit('version', {
version: constants.userAgent,
version: constants.USER_AGENT,
network: network.type
});
});
@ -765,7 +765,7 @@ return HTTPServer;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

19
docs/bcoin_input.js.html

@ -46,7 +46,7 @@ var BufferWriter = require('./writer');
* @exports Input
* @constructor
* @param {NakedInput} options
* @param {TX?} tx
* @param {Boolean?} mutable
* @property {Object} prevout - Outpoint.
* @property {Hash} prevout.hash - Previous transaction hash.
* @property {Number} prevout.index - Previous output index.
@ -56,17 +56,18 @@ var BufferWriter = require('./writer');
* @property {Coin?} coin - Previous output.
* @property {String} type - Script type.
* @property {String?} address - Input address.
* @property {Boolean} mutable
*/
function Input(options, tx) {
function Input(options, mutable) {
if (!(this instanceof Input))
return new Input(options);
this.mutable = !!mutable;
this.prevout = options.prevout;
this.script = bcoin.script(options.script);
this.script = bcoin.script(options.script, this.mutable);
this.sequence = options.sequence == null ? 0xffffffff : options.sequence;
this.witness = bcoin.script.witness(options.witness);
this._mutable = !tx || (tx instanceof bcoin.mtx);
this.witness = bcoin.script.witness(options.witness, this.mutable);
if (options.coin)
this.coin = bcoin.coin(options.coin);
@ -111,7 +112,7 @@ Input.prototype.getType = function getType() {
if (!type || type === 'unknown')
type = this.script.getInputType();
if (!this._mutable)
if (!this.mutable)
this._type = type;
return type;
@ -188,7 +189,7 @@ Input.prototype.getAddress = function getAddress() {
if (!address)
address = this.script.getInputAddress();
if (!this._mutable)
if (!this.mutable)
this._address = address;
return address;
@ -209,7 +210,7 @@ Input.prototype.isFinal = function isFinal() {
*/
Input.prototype.isCoinbase = function isCoinbase() {
return this.prevout.hash === constants.nullHash;
return this.prevout.hash === constants.NULL_HASH;
};
/**
@ -460,7 +461,7 @@ return Input;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_keypair.js.html

@ -308,7 +308,7 @@ return KeyPair;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_ldb.js.html

@ -178,7 +178,7 @@ return ldb;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_locker.js.html

@ -209,7 +209,7 @@ module.exports = Locker;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_lowlevelup.js.html

@ -218,7 +218,7 @@ module.exports = LowlevelUp;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_lru.js.html

@ -373,7 +373,7 @@ module.exports = LRU;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

107
docs/bcoin_mempool.js.html

@ -117,63 +117,6 @@ function Mempool(options) {
utils.inherits(Mempool, EventEmitter);
/**
* Standard verify flags.
* @const {VerifyFlags}
* @default
*/
Mempool.flags = constants.flags.STANDARD_VERIFY_FLAGS;
/**
* Mandatory verify flags.
* @const {VerifyFlags}
* @default
*/
Mempool.mandatory = constants.flags.MANDATORY_VERIFY_FLAGS;
/**
* Locktime flags.
* @const {LockFlags}
* @default
*/
Mempool.lockFlags = constants.flags.STANDARD_LOCKTIME_FLAGS;
/**
* Ancestor limit.
* @const {Number}
* @default
*/
Mempool.ANCESTOR_LIMIT = 25;
/**
* Maximum mempool size in bytes.
* @const {Number}
* @default
*/
Mempool.MAX_MEMPOOL_SIZE = 300 &lt;&lt; 20;
/**
* The time at which transactions
* fall out of the mempool.
* @const {Number}
* @default
*/
Mempool.MEMPOOL_EXPIRY = 72 * 60 * 60;
/**
* Maximum number of orphan transactions.
* @const {Number}
* @default
*/
Mempool.MAX_ORPHAN_TX = 100;
Mempool.prototype._lock = function _lock(func, args, force) {
return this.locker.lock(func, args, force);
};
@ -368,12 +311,12 @@ Mempool.prototype.removeBlock = function removeBlock(block, callback, force) {
Mempool.prototype.limitMempoolSize = function limitMempoolSize(callback) {
var self = this;
if (this.size &lt;= Mempool.MAX_MEMPOOL_SIZE)
if (this.size &lt;= constants.mempool.MAX_MEMPOOL_SIZE)
return callback(null, true);
this.tx.getRange({
start: 0,
end: utils.now() - Mempool.MEMPOOL_EXPIRY
end: utils.now() - constants.mempool.MEMPOOL_EXPIRY
}, function(err, txs) {
if (err)
return callback(err);
@ -388,7 +331,7 @@ Mempool.prototype.limitMempoolSize = function limitMempoolSize(callback) {
if (err)
return callback(err);
return callback(self.size &lt;= Mempool.MAX_MEMPOOL_SIZE);
return callback(self.size &lt;= constants.mempool.MAX_MEMPOOL_SIZE);
});
});
});
@ -554,8 +497,8 @@ Mempool.prototype.hasTX = function hasTX(hash, callback) {
Mempool.prototype.addTX = function addTX(tx, callback, force) {
var self = this;
var flags = Mempool.flags;
var lockFlags = Mempool.lockFlags;
var flags = constants.flags.STANDARD_VERIFY_FLAGS;
var lockFlags = constants.flags.STANDARD_LOCKTIME_FLAGS;
var ret = {};
var now;
@ -563,6 +506,9 @@ Mempool.prototype.addTX = function addTX(tx, callback, force) {
if (!unlock)
return;
if (tx.mutable)
tx = tx.toTX();
if (this.chain.segwitActive) {
flags |= constants.flags.VERIFY_WITNESS;
flags |= constants.flags.VERIFY_DISCOURAGE_UPGRADABLE_WITNESS_PROGRAM;
@ -589,6 +535,18 @@ Mempool.prototype.addTX = function addTX(tx, callback, force) {
if (tx.isCoinbase())
return callback(new VerifyError(tx, 'invalid', 'coinbase', 100));
if (this.requireStandard) {
if (!tx.isStandard(flags, ret))
return callback(new VerifyError(tx, ret.reason, 0));
if (!this.chain.csvActive &amp;&amp; tx.version >= 2) {
return callback(new VerifyError(tx,
'nonstandard',
'premature-version2-tx',
0));
}
}
this.chain.checkFinal(this.chain.tip, tx, lockFlags, function(err, isFinal) {
if (err)
return callback(err);
@ -596,11 +554,6 @@ Mempool.prototype.addTX = function addTX(tx, callback, force) {
if (!isFinal)
return callback(new VerifyError(tx, 'nonstandard', 'non-final', 0));
if (self.requireStandard) {
if (!tx.isStandard(flags, ret))
return callback(new VerifyError(tx, ret.reason, 0));
}
self.seenTX(tx, function(err, exists) {
if (err)
return callback(err);
@ -628,7 +581,7 @@ Mempool.prototype.addTX = function addTX(tx, callback, force) {
return callback(err);
if (!tx.hasCoins()) {
if (self.totalSize > Mempool.MAX_MEMPOOL_SIZE) {
if (self.totalSize > constants.mempool.MAX_MEMPOOL_SIZE) {
return callback(new VerifyError(tx,
'insufficientfee',
'mempool full',
@ -751,9 +704,9 @@ Mempool.prototype.removeUnchecked = function removeUnchecked(tx, callback) {
Mempool.prototype.verify = function verify(tx, callback) {
var self = this;
var height = this.chain.height + 1;
var lockFlags = Mempool.lockFlags;
var flags = Mempool.flags;
var mandatory = Mempool.mandatory;
var lockFlags = constants.flags.STANDARD_LOCKTIME_FLAGS;
var flags = constants.flags.STANDARD_VERIFY_FLAGS;
var mandatory = constants.flags.MANDATORY_VERIFY_FLAGS;
var ret = {};
var fee, now, free, minFee;
@ -781,7 +734,7 @@ Mempool.prototype.verify = function verify(tx, callback) {
0));
}
if (tx.getSigops(true) > constants.tx.maxSigops) {
if (tx.getSigops(true) > constants.tx.MAX_SIGOPS) {
return callback(new VerifyError(tx,
'nonstandard',
'bad-txns-too-many-sigops',
@ -836,7 +789,7 @@ Mempool.prototype.verify = function verify(tx, callback) {
if (err)
return callback(err);
if (count > Mempool.ANCESTOR_LIMIT) {
if (count > constants.mempool.ANCESTOR_LIMIT) {
return callback(new VerifyError(tx,
'nonstandard',
'too-long-mempool-chain',
@ -962,7 +915,7 @@ Mempool.prototype.storeOrphan = function storeOrphan(tx, callback, force) {
batch.put('m/D/' + hash, tx.toExtended(true));
if (self.orphans > Mempool.MAX_ORPHAN_TX) {
if (self.orphans > constants.mempool.MAX_ORPHAN_TX) {
return self.purgeOrphans(function(err) {
if (err)
return callback(err);
@ -1320,10 +1273,10 @@ Mempool.prototype.checkLocks = function checkLocks(tx, flags, callback) {
var tip = this.chain.tip;
var index = new bcoin.chainblock(this.chain, {
hash: utils.toHex(constants.zeroHash),
hash: utils.toHex(constants.ZERO_HASH),
version: tip.version,
prevBlock: tip.hash,
merkleRoot: utils.toHex(constants.zeroHash),
merkleRoot: utils.toHex(constants.ZERO_HASH),
ts: utils.now(),
bits: 0,
nonce: 0,
@ -1600,7 +1553,7 @@ return Mempool;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

43
docs/bcoin_merkleblock.js.html

@ -69,8 +69,6 @@ function MerkleBlock(data) {
bcoin.abstractblock.call(this, data);
this.type = 'merkleblock';
this.hashes = (data.hashes || []).map(function(hash) {
return utils.toBuffer(hash, 'hex');
});
@ -80,6 +78,7 @@ function MerkleBlock(data) {
// List of matched TXs
this.txMap = {};
this.tx = [];
this._partialVerified = null;
// TXs that will be pushed on
this.txs = [];
@ -148,6 +147,8 @@ MerkleBlock.prototype.hasTX = function hasTX(hash) {
if (hash instanceof bcoin.tx)
hash = hash.hash('hex');
this.verifyPartial();
return this.txMap[hash] === true;
};
@ -158,7 +159,7 @@ MerkleBlock.prototype.hasTX = function hasTX(hash) {
* @returns {Boolean}
*/
MerkleBlock.prototype._verifyPartial = function _verifyPartial() {
MerkleBlock.prototype.verifyPartial = function verifyPartial() {
var height = 0;
var tx = [];
var txMap = {};
@ -167,6 +168,9 @@ MerkleBlock.prototype._verifyPartial = function _verifyPartial() {
var flags = this.flags;
var i, root;
if (this._partialVerified != null)
return this._partialVerified;
// Count leaves
for (i = this.totalTX; i > 0; i >>= 1)
height++;
@ -208,11 +212,14 @@ MerkleBlock.prototype._verifyPartial = function _verifyPartial() {
root = utils.toHex(visit(1));
if (!root || root !== this.merkleRoot)
if (!root || root !== this.merkleRoot) {
this._partialVerified = false;
return false;
}
this.tx = tx;
this.txMap = txMap;
this._partialVerified = true;
return true;
};
@ -234,7 +241,7 @@ MerkleBlock.prototype._verify = function _verify(ret) {
return false;
// Verify the partial merkle tree if we are a merkleblock.
if (!this._verifyPartial()) {
if (!this.verifyPartial()) {
ret.reason = 'bad-txnmrklroot';
ret.score = 100;
return false;
@ -312,18 +319,6 @@ MerkleBlock.fromRaw = function fromRaw(data, enc) {
return new MerkleBlock(MerkleBlock._fromRaw(data, enc));
};
/**
* Test an object to see if it is a MerkleBlock object.
* @param {Object} obj
* @returns {Boolean}
*/
MerkleBlock.isMerkleBlock = function isMerkleBlock(obj) {
return obj
&amp;&amp; Array.isArray(obj.flags)
&amp;&amp; typeof obj._verifyPartial === 'function';
};
/**
* Create a merkleblock from a {@link Block} object, passing
* it through a filter first. This will build the partial
@ -422,6 +417,18 @@ MerkleBlock.fromBlock = function fromBlock(block, bloom) {
return block;
};
/**
* Test an object to see if it is a MerkleBlock object.
* @param {Object} obj
* @returns {Boolean}
*/
MerkleBlock.isMerkleBlock = function isMerkleBlock(obj) {
return obj
&amp;&amp; Array.isArray(obj.flags)
&amp;&amp; typeof obj.verifyPartial === 'function';
};
return MerkleBlock;
};
</code></pre>
@ -440,7 +447,7 @@ return MerkleBlock;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

18
docs/bcoin_miner.js.html

@ -364,7 +364,7 @@ function MinerBlock(options) {
this.coinbase.addInput({
prevout: {
hash: constants.nullHash,
hash: constants.NULL_HASH,
index: 0xffffffff
},
coin: null,
@ -397,7 +397,7 @@ function MinerBlock(options) {
this.block = new bcoin.block({
version: options.version,
prevBlock: this.tip.hash,
merkleRoot: constants.nullHash,
merkleRoot: constants.NULL_HASH,
ts: Math.max(utils.now(), this.tip.ts + 1),
bits: options.target,
nonce: 0,
@ -469,10 +469,15 @@ MinerBlock.prototype.updateMerkle = function updateMerkle() {
*/
MinerBlock.prototype.addTX = function addTX(tx) {
var size = this.block.getVirtualSize(true) + tx.getVirtualSize();
var size;
if (tx.mutable)
tx = tx.toTX();
size = this.block.getVirtualSize(true) + tx.getVirtualSize();
// Deliver me from the block size debate, please
if (size > constants.block.maxSize)
if (size > constants.block.MAX_SIZE)
return false;
if (this.block.hasTX(tx))
@ -602,6 +607,8 @@ MinerBlock.prototype.mine = function mine(callback) {
if (!self.findNonce())
return self.mine(callback);
self.block.txs[0] = self.block.txs[0].toTX();
return callback(null, self.block);
}, 100);
};
@ -613,6 +620,7 @@ MinerBlock.prototype.mine = function mine(callback) {
MinerBlock.prototype.mineSync = function mineSync() {
while (!this.findNonce());
this.block.txs[0] = this.block.txs[0].toTX();
return this.block;
};
@ -680,7 +688,7 @@ return Miner;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

37
docs/bcoin_mtx.js.html

@ -103,6 +103,7 @@ function MTX(options) {
this.ps = options.ps != null ? options.ps : utils.now();
this.changeIndex = options.changeIndex != null ? options.changeIndex : -1;
this.height = -1;
this.mutable = true;
this._hash = null;
this._whash = null;
@ -165,8 +166,8 @@ MTX.prototype.witnessHash = function witnessHash(enc) {
if (this.isCoinbase()) {
return enc === 'hex'
? utils.toHex(constants.zeroHash)
: utils.slice(constants.zeroHash);
? utils.toHex(constants.ZERO_HASH)
: utils.slice(constants.ZERO_HASH);
}
if (!this.hasWitness())
@ -280,13 +281,7 @@ MTX.prototype.addInput = function addInput(options, index) {
assert(options.prevout);
input = bcoin.input(options, this);
if (options.script instanceof Script)
input.script = options.script.clone();
if (options.witness instanceof Witness)
input.witness = options.witness.clone();
input = bcoin.input(options, true);
this.inputs.push(input);
@ -414,7 +409,7 @@ MTX.prototype.scriptInput = function scriptInput(index, addr) {
vector[1] = addr.publicKey;
} else if (prev.isMultisig()) {
// Multisig
if (utils.indexOf(prev.code, addr.publicKey) === -1)
if (prev.code.indexOf(addr.publicKey) === -1)
return false;
// Already has a script template (at least)
@ -433,7 +428,7 @@ MTX.prototype.scriptInput = function scriptInput(index, addr) {
for (i = 0; i &lt; n; i++)
vector[i + 1] = dummy;
} else {
if (utils.indexOf(prev.code, addr.publicKey) === -1)
if (prev.code.indexOf(addr.publicKey) === -1)
return false;
// Already has a script template (at least)
@ -487,7 +482,7 @@ MTX.prototype.createSignature = function createSignature(index, prev, key, type,
type = 'all';
if (typeof type === 'string')
type = constants.hashType[type];
type = constants.hashType[type.toUpperCase()];
// Get the hash of the current tx, minus the other
// inputs, plus the sighash type.
@ -827,7 +822,7 @@ MTX.prototype.addOutput = function addOutput(obj, value) {
options = obj;
}
output = bcoin.output(options, this);
output = bcoin.output(options, true);
this.outputs.push(output);
@ -856,9 +851,7 @@ MTX.prototype.scriptOutput = function scriptOutput(index, options) {
output = this.outputs[index];
assert(output);
if (options.script instanceof Script)
output.script = options.script.clone();
else if (options.script)
if (options.script)
output.script = Script(options.script);
else
output.script = Script.createOutputScript(options);
@ -1137,7 +1130,7 @@ MTX.prototype.selectCoins = function selectCoins(coins, options) {
continue;
if (network.height !== -1 &amp;&amp; coin.coinbase) {
if (network.height + 1 &lt; coin.height + constants.tx.coinbaseMaturity)
if (network.height + 1 &lt; coin.height + constants.tx.COINBASE_MATURITY)
continue;
}
@ -1163,7 +1156,7 @@ MTX.prototype.selectCoins = function selectCoins(coins, options) {
// Transfer `total` funds maximum.
addCoins();
} else {
fee = new bn(constants.tx.minFee);
fee = new bn(constants.tx.MIN_FEE);
// Transfer `total` funds maximum.
addCoins();
@ -1174,7 +1167,7 @@ MTX.prototype.selectCoins = function selectCoins(coins, options) {
address: options.changeAddress,
// In case we don't have a change address,
// use a fake p2pkh output to gauge size.
keyHash: constants.zeroHash.slice(0, 20),
keyHash: constants.ZERO_HASH.slice(0, 20),
value: new bn(0)
});
@ -1215,7 +1208,7 @@ MTX.prototype.selectCoins = function selectCoins(coins, options) {
// Attempt to subtract fee.
if (options.subtractFee != null) {
minValue = fee.addn(constants.tx.dustThreshold);
minValue = fee.addn(constants.tx.DUST_THRESHOLD);
if (typeof options.subtractFee === 'number') {
i = options.subtractFee;
@ -1269,7 +1262,7 @@ MTX.prototype.fill = function fill(coins, options) {
for (i = 0; i &lt; result.coins.length; i++)
this.addInput(result.coins[i]);
if (result.change.cmpn(constants.tx.dustThreshold) &lt; 0) {
if (result.change.cmpn(constants.tx.DUST_THRESHOLD) &lt; 0) {
// Do nothing. Change is added to fee.
assert(this.getFee().cmp(result.fee.add(result.change)) === 0);
this.changeIndex = -1;
@ -1454,7 +1447,7 @@ return MTX;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

4
docs/bcoin_node.js.html

@ -36,7 +36,6 @@
module.exports = function(bcoin) {
var EventEmitter = require('events').EventEmitter;
var network = bcoin.protocol.network;
var utils = require('./utils');
/**
@ -59,7 +58,6 @@ function Node(options) {
this.options = options;
this.network = network;
this.mempool = null;
this.pool = null;
this.chain = null;
@ -87,7 +85,7 @@ return Node;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

17
docs/bcoin_output.js.html

@ -44,14 +44,15 @@ var assert = utils.assert;
* @exports Output
* @constructor
* @param {NakedOutput} options
* @param {TX?} tx
* @param {Boolean?} mutable
* @property {BN} value - Value in satoshis.
* @property {Script} script
* @property {String} type - Script type.
* @property {String?} address - Input address.
* @property {Boolean} mutable
*/
function Output(options, tx) {
function Output(options, mutable) {
var value;
if (!(this instanceof Output))
@ -64,12 +65,12 @@ function Output(options, tx) {
value = new bn(value);
}
this.mutable = !!mutable;
this.value = utils.satoshi(value || new bn(0));
this.script = bcoin.script(options.script);
this._mutable = !tx || (tx instanceof bcoin.mtx);
this.script = bcoin.script(options.script, false);
assert(typeof value !== 'number');
assert(!this._mutable || !this.value.isNeg());
assert(!this.mutable || !this.value.isNeg());
}
Output.prototype.__defineGetter__('type', function() {
@ -93,7 +94,7 @@ Output.prototype.getType = function getType() {
type = this.script.getType();
if (!this._mutable)
if (!this.mutable)
this._type = type;
return type;
@ -112,7 +113,7 @@ Output.prototype.getAddress = function getAddress() {
address = this.script.getAddress();
if (!this._mutable)
if (!this.mutable)
this._address = address;
return address;
@ -271,7 +272,7 @@ return Output;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

157
docs/bcoin_peer.js.html

@ -233,7 +233,7 @@ Peer.prototype._init = function init() {
this.challenge = utils.nonce();
this._ping.timer = setInterval(function() {
self._write(self.framer.ping({
self.write(self.framer.ping({
nonce: self.challenge
}));
}, this._ping.interval);
@ -249,16 +249,16 @@ Peer.prototype._init = function init() {
self.emit('ack');
self.ts = utils.now();
self._write(self.framer.getAddr());
self.write(self.framer.getAddr());
if (self.options.headers) {
if (self.version &amp;&amp; self.version.version > 70012)
self._write(self.framer.sendHeaders());
self.write(self.framer.sendHeaders());
}
if (self.options.witness) {
if (self.version &amp;&amp; self.version.version >= 70012)
self._write(self.framer.haveWitness());
self.write(self.framer.haveWitness());
}
if (self.chain.isFull())
@ -266,7 +266,7 @@ Peer.prototype._init = function init() {
});
// Send hello
this._write(this.framer.version({
this.write(this.framer.version({
height: this.chain.height,
relay: this.options.relay
}));
@ -340,26 +340,30 @@ Peer.prototype.broadcast = function broadcast(items) {
items = [items];
items.forEach(function(item) {
var key = item.hash('hex');
var old = this._broadcast.map[key];
var type = item.type;
var entry, packetType;
var key, old, type, entry, packetType;
if (item.mutable)
item = item.toTX();
key = item.hash('hex');
old = this._broadcast.map[key];
type = item.type;
if (typeof type === 'string')
type = constants.inv[type];
type = constants.inv[type.toUpperCase()];
// INV does not set the witness
// mask (only GETDATA does this).
type &amp;= ~constants.invWitnessMask;
type &amp;= ~constants.WITNESS_MASK;
if (type === constants.inv.block)
if (type === constants.inv.BLOCK)
packetType = 'block';
else if (type === constants.inv.tx)
else if (type === constants.inv.TX)
packetType = 'tx';
else
assert(false, 'Bad type.');
if (self.filter &amp;&amp; type === constants.inv.tx) {
if (self.filter &amp;&amp; type === constants.inv.TX) {
if (!item.isWatched(self.filter))
return;
}
@ -380,7 +384,7 @@ Peer.prototype.broadcast = function broadcast(items) {
// Retransmit
interval: setInterval(function() {
self._write(entry.inv);
self.write(entry.inv);
}, this._broadcast.interval),
inv: this.framer.inv([{
@ -405,7 +409,7 @@ Peer.prototype.broadcast = function broadcast(items) {
});
}, this);
this._write(this.framer.inv(payload));
this.write(this.framer.inv(payload));
return result;
};
@ -419,11 +423,11 @@ Peer.prototype.updateWatch = function updateWatch() {
return;
if (this.ack) {
this._write(this.framer.filterLoad({
this.write(this.framer.filterLoad({
filter: this.bloom.toBuffer(),
n: this.bloom.n,
tweak: this.bloom.tweak,
update: 'none'
update: constants.filterFlags.NONE
}));
}
};
@ -461,15 +465,15 @@ Peer.prototype.destroy = function destroy() {
/**
* Write data to the peer's socket.
* @private
* @param {Buffer} chunk
* @returns {Boolean}
*/
Peer.prototype._write = function write(chunk) {
Peer.prototype.write = function write(chunk) {
if (this.destroyed)
return;
return false;
this.socket.write(chunk);
return this.socket.write(chunk);
};
/**
@ -485,7 +489,7 @@ Peer.prototype._error = function error(err) {
if (typeof err === 'string')
err = new Error(err);
err.message += ' (' + this.host + ')';
err.message += ' (' + this.host + ':' + this.port + ')';
this.destroy();
this.emit('error', err);
@ -575,7 +579,7 @@ Peer.prototype._res = function _res(cmd, payload) {
*/
Peer.prototype.getData = function getData(items) {
this._write(this.framer.getData(items));
this.write(this.framer.getData(items));
};
Peer.prototype._onPacket = function onPacket(packet) {
@ -673,10 +677,19 @@ Peer.prototype._emitMerkle = function _emitMerkle() {
};
Peer.prototype._handleFilterLoad = function _handleFilterLoad(payload) {
var size = payload.filter.length * 8;
this.filter = new bcoin.bloom(size, payload.n, payload.tweak);
this.filter.filter = payload.filter;
this.filter.update = payload.update;
this.filter = new bcoin.bloom(
payload.filter,
payload.n,
payload.tweak,
payload.update
);
if (!this.filter.isWithinConstraints()) {
delete this.filter;
this.setMisbehavior(100);
return;
}
this.relay = true;
};
@ -756,7 +769,7 @@ Peer.prototype._getUTXOs = function getUTXOs(utxos, callback) {
return callback(null, payload.coins);
});
this._write(this.framer.getUTXOs({
this.write(this.framer.getUTXOs({
mempool: true,
prevout: utxos.map(function(item) {
return { hash: item[0], index: item[1] };
@ -841,7 +854,7 @@ Peer.prototype._handleGetUTXOs = function _handleGetUTXOs(payload) {
if (err)
self.emit('error', err);
self._write(self.framer.UTXOs({
self.write(self.framer.UTXOs({
height: self.chain.height,
tip: self.chain.tip.hash,
hits: hits,
@ -901,7 +914,7 @@ Peer.prototype._handleGetHeaders = function _handleGetHeaders(payload) {
if (err)
return self.emit('error', err);
self._write(self.framer.headers(headers));
self.write(self.framer.headers(headers));
}
if (!payload.locator)
@ -934,7 +947,7 @@ Peer.prototype._handleGetBlocks = function _handleGetBlocks(payload) {
function done(err) {
if (err)
return self.emit('error', err);
self._write(self.framer.inv(blocks));
self.write(self.framer.inv(blocks));
}
this.chain.findLocator(payload.locator, function(err, tip) {
@ -952,7 +965,7 @@ Peer.prototype._handleGetBlocks = function _handleGetBlocks(payload) {
if (!hash)
return done();
blocks.push({ type: constants.inv.block, hash: hash });
blocks.push({ type: constants.inv.BLOCK, hash: hash });
if (hash === payload.stop)
return done();
@ -969,7 +982,7 @@ Peer.prototype._handleGetBlocks = function _handleGetBlocks(payload) {
};
Peer.prototype._handleVersion = function handleVersion(payload) {
if (payload.version &lt; constants.minVersion) {
if (payload.version &lt; constants.MIN_VERSION) {
this._error('Peer doesn\'t support required protocol version.');
this.setMisbehavior(100);
return;
@ -1018,7 +1031,7 @@ Peer.prototype._handleVersion = function handleVersion(payload) {
this.relay = false;
// ACK
this._write(this.framer.verack());
this.write(this.framer.verack());
this.version = payload;
this.emit('version', payload);
};
@ -1039,11 +1052,11 @@ Peer.prototype._handleMempool = function _handleMempool() {
return self.emit('error', err);
for (i = 0; i &lt; hashes.length; i++)
items.push({ type: constants.inv.tx, hash: hashes[i] });
items.push({ type: constants.inv.TX, hash: hashes[i] });
bcoin.debug('Sending mempool snapshot to %s.', self.host);
self._write(self.framer.inv(items));
self.write(self.framer.inv(items));
});
};
@ -1061,7 +1074,7 @@ Peer.prototype._handleGetData = function handleGetData(items) {
hash = utils.toHex(item.hash);
entry = this._broadcast.map[hash];
isWitness = item.type &amp; constants.invWitnessMask;
isWitness = item.type &amp; constants.WITNESS_MASK;
value = null;
if (!entry) {
@ -1069,7 +1082,7 @@ Peer.prototype._handleGetData = function handleGetData(items) {
continue;
}
if ((item.type &amp; ~constants.invWitnessMask) !== entry.type) {
if ((item.type &amp; ~constants.WITNESS_MASK) !== entry.type) {
bcoin.debug(
'Peer %s requested an existing item with the wrong type.',
this.host);
@ -1084,9 +1097,9 @@ Peer.prototype._handleGetData = function handleGetData(items) {
isWitness ? 'witness' : 'normal');
if (isWitness)
this._write(this.framer.packet(entry.packetType, entry.witnessValue));
this.write(this.framer.packet(entry.packetType, entry.witnessValue));
else
this._write(this.framer.packet(entry.packetType, entry.value));
this.write(this.framer.packet(entry.packetType, entry.value));
entry.e.emit('request');
}
@ -1095,14 +1108,14 @@ Peer.prototype._handleGetData = function handleGetData(items) {
return;
utils.forEachSerial(check, function(item, next) {
var isWitness = item.type &amp; constants.invWitnessMask;
var type = item.type &amp; ~constants.invWitnessMask;
var isWitness = item.type &amp; constants.WITNESS_MASK;
var type = item.type &amp; ~constants.WITNESS_MASK;
var hash = utils.toHex(item.hash);
var i, tx, data;
if (type === constants.inv.tx) {
if (type === constants.inv.TX) {
if (!self.mempool) {
notfound.push({ type: constants.inv.tx, hash: hash });
notfound.push({ type: constants.inv.TX, hash: hash });
return next();
}
return self.mempool.getTX(hash, function(err, tx) {
@ -1110,7 +1123,7 @@ Peer.prototype._handleGetData = function handleGetData(items) {
return next(err);
if (!tx) {
notfound.push({ type: constants.inv.tx, hash: hash });
notfound.push({ type: constants.inv.TX, hash: hash });
return next();
}
@ -1119,19 +1132,19 @@ Peer.prototype._handleGetData = function handleGetData(items) {
else
data = tx.renderNormal();
self._write(self.framer.packet('tx', data));
self.write(self.framer.packet('tx', data));
next();
});
}
if (type === constants.inv.block) {
if (type === constants.inv.BLOCK) {
if (self.chain.db.options.spv) {
notfound.push({ type: constants.inv.block, hash: hash });
notfound.push({ type: constants.inv.BLOCK, hash: hash });
return next();
}
if (self.chain.db.options.prune) {
notfound.push({ type: constants.inv.block, hash: hash });
notfound.push({ type: constants.inv.BLOCK, hash: hash });
return;
}
return self.chain.db.getBlock(hash, function(err, block) {
@ -1139,7 +1152,7 @@ Peer.prototype._handleGetData = function handleGetData(items) {
return next(err);
if (!block) {
notfound.push({ type: constants.inv.block, hash: hash });
notfound.push({ type: constants.inv.BLOCK, hash: hash });
return next();
}
@ -1148,11 +1161,11 @@ Peer.prototype._handleGetData = function handleGetData(items) {
else
data = block.renderNormal();
self._write(self.framer.packet('block', data));
self.write(self.framer.packet('block', data));
if (hash === self.hashContinue) {
self._write(self.framer.inv([{
type: constants.inv.block,
self.write(self.framer.inv([{
type: constants.inv.BLOCK,
hash: self.chain.tip.hash
}]));
self.hashContinue = null;
@ -1162,13 +1175,13 @@ Peer.prototype._handleGetData = function handleGetData(items) {
});
}
if (type === constants.inv.filteredblock) {
if (type === constants.inv.FILTERED_BLOCK) {
if (self.chain.db.options.spv) {
notfound.push({ type: constants.inv.block, hash: hash });
notfound.push({ type: constants.inv.BLOCK, hash: hash });
return next();
}
if (self.chain.db.options.prune) {
notfound.push({ type: constants.inv.block, hash: hash });
notfound.push({ type: constants.inv.BLOCK, hash: hash });
return;
}
return self.chain.db.getBlock(hash, function(err, block) {
@ -1176,13 +1189,13 @@ Peer.prototype._handleGetData = function handleGetData(items) {
return next(err);
if (!block) {
notfound.push({ type: constants.inv.block, hash: hash });
notfound.push({ type: constants.inv.BLOCK, hash: hash });
return next();
}
block = block.toMerkle(self.filter);
self._write(self.framer.merkleBlock(block));
self.write(self.framer.merkleBlock(block));
for (i = 0; i &lt; block.txs.length; i++) {
tx = block.txs[i];
@ -1192,12 +1205,12 @@ Peer.prototype._handleGetData = function handleGetData(items) {
else
tx = tx.renderNormal();
self._write(self.framer.packet('tx', tx));
self.write(self.framer.packet('tx', tx));
}
if (hash === self.hashContinue) {
self._write(self.framer.inv([{
type: constants.inv.block,
self.write(self.framer.inv([{
type: constants.inv.BLOCK,
hash: self.chain.tip.hash
}]));
self.hashContinue = null;
@ -1220,7 +1233,7 @@ Peer.prototype._handleGetData = function handleGetData(items) {
notfound.length);
if (notfound.length > 0)
self._write(self.framer.notFound(notfound));
self.write(self.framer.notFound(notfound));
});
};
@ -1261,7 +1274,7 @@ Peer.prototype._handleAddr = function handleAddr(addrs) {
};
Peer.prototype._handlePing = function handlePing(data) {
this._write(this.framer.pong({
this.write(this.framer.pong({
nonce: data.nonce
}));
this.emit('ping', data);
@ -1311,7 +1324,7 @@ Peer.prototype._handleGetAddr = function handleGetAddr() {
});
}
return this._write(this.framer.addr(peers));
return this.write(this.framer.addr(peers));
};
Peer.prototype._handleInv = function handleInv(items) {
@ -1323,9 +1336,9 @@ Peer.prototype._handleInv = function handleInv(items) {
for (i = 0; i &lt; items.length; i++) {
item = items[i];
if (item.type === constants.inv.tx)
if (item.type === constants.inv.TX)
txs.push(item.hash);
else if (item.type === constants.inv.block)
else if (item.type === constants.inv.BLOCK)
blocks.push(item.hash);
}
@ -1393,7 +1406,7 @@ Peer.prototype.getHeaders = function getHeaders(locator, stop) {
locator &amp;&amp; locator.length ? utils.revHex(locator[0]) : 0,
stop ? utils.revHex(stop) : 0);
this._write(this.framer.getHeaders({ locator: locator, stop: stop }));
this.write(this.framer.getHeaders({ locator: locator, stop: stop }));
};
/**
@ -1412,7 +1425,7 @@ Peer.prototype.getBlocks = function getBlocks(locator, stop) {
locator &amp;&amp; locator.length ? utils.revHex(locator[0]) : 0,
stop ? utils.revHex(stop) : 0);
this._write(this.framer.getBlocks({ locator: locator, stop: stop }));
this.write(this.framer.getBlocks({ locator: locator, stop: stop }));
};
/**
@ -1424,7 +1437,7 @@ Peer.prototype.getMempool = function getMempool() {
'Requesting inv packet from %s with mempool',
this.host);
this._write(this.framer.mempool());
this.write(this.framer.mempool());
};
/**
@ -1437,7 +1450,7 @@ Peer.prototype.reject = function reject(details) {
'Sending reject packet to %s',
this.host);
this._write(this.framer.reject(details));
this.write(this.framer.reject(details));
};
/**
@ -1489,7 +1502,7 @@ return Peer;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

22
docs/bcoin_pool.js.html

@ -179,19 +179,19 @@ function Pool(options) {
versionHeight: 0,
bestHash: null,
type: !options.spv
? constants.inv.block
: constants.inv.filteredblock
? constants.inv.BLOCK
: constants.inv.FILTERED_BLOCK
};
this.tx = {
state: {},
count: 0,
type: constants.inv.tx
type: constants.inv.TX
};
if (this.options.witness) {
this.block.type |= constants.invWitnessMask;
this.tx.type |= constants.invWitnessMask;
this.block.type |= constants.WITNESS_MASK;
this.tx.type |= constants.WITNESS_MASK;
}
this.request = {
@ -1894,10 +1894,14 @@ Pool.prototype.sendTX = function sendTX(tx, callback) {
Pool.prototype.broadcast = function broadcast(msg, callback) {
var self = this;
var e = new EventEmitter();
var entry;
callback = utils.once(callback);
var entry = {
if (msg.mutable)
msg = msg.toTX();
entry = {
msg: msg,
e: e,
timer: setTimeout(function() {
@ -2190,7 +2194,7 @@ Pool.prototype.removeSeed = function removeSeed(seed) {
Pool.prototype.setMisbehavior = function setMisbehavior(peer, score) {
peer.banScore += score;
if (peer.banScore >= constants.banScore) {
if (peer.banScore >= constants.BAN_SCORE) {
this.peers.misbehaving[peer.host] = utils.now();
bcoin.debug('Ban threshold exceeded for %s', peer.host);
peer.destroy();
@ -2215,7 +2219,7 @@ Pool.prototype.isMisbehaving = function isMisbehaving(host) {
time = this.peers.misbehaving[host];
if (time) {
if (utils.now() > time + constants.banTime) {
if (utils.now() > time + constants.BAN_TIME) {
delete this.peers.misbehaving[host];
peer = this.getPeer(host);
if (peer)
@ -2361,7 +2365,7 @@ return Pool;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_profiler.js.html

@ -286,7 +286,7 @@ return profiler;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

367
docs/bcoin_protocol_constants.js.html

@ -46,7 +46,7 @@ var utils = require('../utils');
* @default
*/
exports.minVersion = 70001;
exports.MIN_VERSION = 70001;
/**
* BCoin's protocol version.
@ -54,7 +54,7 @@ exports.minVersion = 70001;
* @default
*/
exports.version = 70012;
exports.VERSION = 70012;
/**
* Max message size (~4mb with segwit, formerly 2mb)
@ -62,7 +62,7 @@ exports.version = 70012;
* @default
*/
exports.maxMessage = 4 * 1000 * 1000;
exports.MAX_MESSAGE = 4 * 1000 * 1000;
/**
* Service bits.
@ -71,10 +71,29 @@ exports.maxMessage = 4 * 1000 * 1000;
*/
exports.services = {
network: (1 &lt;&lt; 0),
getutxo: (1 &lt;&lt; 1),
bloom: (1 &lt;&lt; 2),
witness: (1 &lt;&lt; 3)
/**
* Whether network services are enabled.
*/
NETWORK: (1 &lt;&lt; 0),
/**
* Whether the peer supports the getutxos packet.
*/
GETUTXO: (1 &lt;&lt; 1),
/**
* Whether the peer supports BIP37.
*/
BLOOM: (1 &lt;&lt; 2),
/**
* Whether the peer supports segregated witness.
*/
WITNESS: (1 &lt;&lt; 3)
};
/**
@ -83,8 +102,7 @@ exports.services = {
* @default
*/
exports.localServices = exports.services.network
| exports.services.witness;
exports.LOCAL_SERVICES = exports.services.NETWORK | exports.services.WITNESS;
/**
* Inv types.
@ -93,13 +111,13 @@ exports.localServices = exports.services.network
*/
exports.inv = {
error: 0,
tx: 1,
block: 2,
filteredblock: 3,
witnesstx: 1 | (1 &lt;&lt; 30),
witnessblock: 2 | (1 &lt;&lt; 30),
witnessfilteredblock: 3 | (1 &lt;&lt; 30)
ERROR: 0,
TX: 1,
BLOCK: 2,
FILTERED_BLOCK: 3,
WITNESS_TX: 1 | (1 &lt;&lt; 30),
WITNESS_BLOCK: 2 | (1 &lt;&lt; 30),
WITNESS_FILTERED_BLOCK: 3 | (1 &lt;&lt; 30)
};
/**
@ -121,7 +139,7 @@ exports.invByVal = utils.revMap(exports.inv);
* @default
*/
exports.invWitnessMask = 1 &lt;&lt; 30;
exports.WITNESS_MASK = 1 &lt;&lt; 30;
/**
* Bloom filter update flags.
@ -130,9 +148,35 @@ exports.invWitnessMask = 1 &lt;&lt; 30;
*/
exports.filterFlags = {
none: 0,
all: 1,
pubkeyOnly: 2
/**
* Never update the filter with outpoints.
*/
NONE: 0,
/**
* Always update the filter with outpoints.
*/
ALL: 1,
/**
* Only update the filter with outpoints if it is
* "asymmetric" in terms of addresses (pubkey/multisig).
*/
PUBKEY_ONLY: 2
};
/**
* Bloom filter limits.
* @enum {Number}
* @default
*/
exports.bloom = {
MAX_BLOOM_FILTER_SIZE: 36000,
MAX_HASH_FUNCS: 50
};
/**
@ -296,7 +340,7 @@ exports.opcodesByVal = utils.revMap(exports.opcodes);
* @default
*/
exports.coin = new bn(10000000).muln(10);
exports.COIN = new bn(10000000).muln(10);
/**
* One bitcoin / 100.
@ -304,7 +348,7 @@ exports.coin = new bn(10000000).muln(10);
* @default
*/
exports.cent = new bn(1000000);
exports.CENT = new bn(1000000);
/**
* Maximum amount of money in satoshis (1btc * 21million)
@ -312,7 +356,7 @@ exports.cent = new bn(1000000);
* @default
*/
exports.maxMoney = new bn(21000000).mul(exports.coin);
exports.MAX_MONEY = new bn(21000000).mul(exports.COIN);
/**
* Sighash Types.
@ -321,10 +365,29 @@ exports.maxMoney = new bn(21000000).mul(exports.coin);
*/
exports.hashType = {
all: 1,
none: 2,
single: 3,
anyonecanpay: 0x80
/**
* Sign all outputs.
*/
ALL: 1,
/**
* Do not sign outputs (zero sequences).
*/
NONE: 2,
/**
* Sign output at the same index (zero sequences).
*/
SINGLE: 3,
/**
* Sign only the current input (mask).
*/
ANYONECANPAY: 0x80
};
/**
@ -341,12 +404,23 @@ exports.hashTypeByVal = utils.revMap(exports.hashType);
*/
exports.block = {
maxSize: 1000000,
maxSigops: 1000000 / 50,
maxOrphanTx: 1000000 / 100,
medianTimespan: 11,
bip16time: 1333238400,
sighashLimit: 1300000000
MAX_SIZE: 1000000,
MAX_SIGOPS: 1000000 / 50,
MEDIAN_TIMESPAN: 11,
BIP16_TIME: 1333238400,
SIGHASH_LIMIT: 1300000000
};
/**
* Map of historical blocks which create duplicate transactions hashes.
* @see https://github.com/bitcoin/bips/blob/master/bip-0030.mediawiki
* @const {Object}
* @default
*/
exports.bip30 = {
91842: 'eccae000e3c8e4e093936360431f3b7603c563c1ff6181390a4d0a0000000000',
91880: '21d77ccb4c08386a04ac0196ae10f6a1d2c2a377558ca190f143070000000000'
};
/**
@ -356,16 +430,16 @@ exports.block = {
*/
exports.tx = {
version: 2,
maxSize: 100000,
minFee: 10000,
bareMultisig: true,
freeThreshold: exports.coin.muln(144).divn(250),
maxSigops: exports.block.maxSigops / 5,
coinbaseMaturity: 100
MAX_VERSION: 2,
MAX_SIZE: 100000,
MIN_FEE: 10000,
BARE_MULTISIG: true,
FREE_THRESHOLD: exports.COIN.muln(144).divn(250),
MAX_SIGOPS: exports.block.MAX_SIGOPS / 5,
COINBASE_MATURITY: 100
};
exports.tx.dustThreshold = 182 * exports.tx.minFee / 1000 * 3;
exports.tx.DUST_THRESHOLD = 182 * exports.tx.MIN_FEE / 1000 * 3;
/**
* Script-related constants.
@ -374,14 +448,47 @@ exports.tx.dustThreshold = 182 * exports.tx.minFee / 1000 * 3;
*/
exports.script = {
maxSize: 10000,
maxStack: 1000,
maxPush: 520,
maxOps: 201,
maxPubkeysPerMultisig: 20,
maxScripthashSigops: 15,
maxOpReturnBytes: 83,
maxOpReturn: 80
MAX_SIZE: 10000,
MAX_STACK: 1000,
MAX_PUSH: 520,
MAX_OPS: 201,
MAX_MULTISIG_PUBKEYS: 20,
MAX_SCRIPTHASH_SIGOPS: 15,
MAX_OP_RETURN_BYTES: 83,
MAX_OP_RETURN: 80
};
/**
* Mempool-related constants.
* @enum {Number}
* @default
*/
exports.mempool = {
/**
* Ancestor limit.
*/
ANCESTOR_LIMIT: 25,
/**
* Maximum mempool size in bytes.
*/
MAX_MEMPOOL_SIZE: 300 &lt;&lt; 20,
/**
* The time at which transactions
* fall out of the mempool.
*/
MEMPOOL_EXPIRY: 72 * 60 * 60,
/**
* Maximum number of orphan transactions.
*/
MAX_ORPHAN_TX: 100
};
/**
@ -392,19 +499,19 @@ exports.script = {
*/
exports.reject = {
malformed: 0x01,
invalid: 0x10,
obsolete: 0x11,
duplicate: 0x12,
nonstandard: 0x40,
dust: 0x41,
insufficientfee: 0x42,
checkpoint: 0x43,
MALFORMED: 0x01,
INVALID: 0x10,
OBSOLETE: 0x11,
DUPLICATE: 0x12,
NONSTANDARD: 0x40,
DUST: 0x41,
INSUFFICIENTFEE: 0x42,
CHECKPOINT: 0x43,
// Internal codes (NOT FOR USE ON NETWORK)
internal: 0x100,
highfee: 0x100,
alreadyknown: 0x101,
conflict: 0x102
INTERNAL: 0x100,
HIGHFEE: 0x100,
ALREADYKNOWN: 0x101,
CONFLICT: 0x102
};
/**
@ -421,12 +528,12 @@ exports.rejectByVal = utils.revMap(exports.reject);
*/
exports.hd = {
hardened: 0x80000000,
maxIndex: 2 * 0x80000000,
minEntropy: 128 / 8,
maxEntropy: 512 / 8,
parentFingerPrintSize: 4,
pathRoots: ['m', 'M', 'm\'', 'M\'']
HARDENED: 0x80000000,
MAX_INDEX: 2 * 0x80000000,
MIN_ENTROPY: 128 / 8,
MAX_ENTROPY: 512 / 8,
PARENT_FINGERPRINT_SIZE: 4,
PATH_ROOTS: ['m', 'M', 'm\'', 'M\'']
};
/**
@ -437,35 +544,39 @@ exports.hd = {
* @default
*/
exports.locktimeThreshold = 500000000;
exports.LOCKTIME_THRESHOLD = 500000000;
/**
* Highest nSequence bit (disables sequence locktimes).
* @const {Number}
* Sequence locktime-related constants.
* @enum {Number}
* @default
*/
exports.sequenceLocktimeDisableFlag = (1 &lt;&lt; 31) >>> 0;
exports.sequence = {
/**
* Highest nSequence bit (disables sequence locktimes).
*/
/**
* @const {Number}
* @default
*/
DISABLE_FLAG: (1 &lt;&lt; 31) >>> 0,
exports.sequenceLocktimeTypeFlag = 1 &lt;&lt; 22;
/**
* Type (height or time).
*/
/**
* @const {Number}
* @default
*/
TYPE_FLAG: 1 &lt;&lt; 22,
exports.sequenceLocktimeGranularity = 9;
/**
* Sequence granularity.
*/
/**
* @const {Number}
* @default
*/
GRANULARITY: 9,
exports.sequenceLocktimeMask = 0x0000ffff;
/**
* Mask.
*/
MASK: 0x0000ffff
};
/**
* A hash of all zeroes with a `1` at the
@ -474,7 +585,7 @@ exports.sequenceLocktimeMask = 0x0000ffff;
* @default
*/
exports.oneHash = new Buffer(
exports.ONE_HASH = new Buffer(
'0000000000000000000000000000000000000000000000000000000000000001',
'hex'
);
@ -485,7 +596,7 @@ exports.oneHash = new Buffer(
* @default
*/
exports.zeroHash = new Buffer(
exports.ZERO_HASH = new Buffer(
'0000000000000000000000000000000000000000000000000000000000000000',
'hex'
);
@ -496,7 +607,7 @@ exports.zeroHash = new Buffer(
* @default
*/
exports.nullHash =
exports.NULL_HASH =
'0000000000000000000000000000000000000000000000000000000000000000';
/**
@ -505,7 +616,7 @@ exports.nullHash =
* @default
*/
exports.userVersion = require('../../../package.json').version;
exports.USER_VERSION = require('../../../package.json').version;
/**
* BCoin user agent: `/bcoin:{version}/`.
@ -513,10 +624,23 @@ exports.userVersion = require('../../../package.json').version;
* @default
*/
exports.userAgent = '/bcoin:' + exports.userVersion + '/';
exports.USER_AGENT = '/bcoin:' + exports.USER_VERSION + '/';
/**
* Amount of time to ban misbheaving peers.
* @const {Number}
* @default
*/
exports.BAN_TIME = 24 * 60 * 60;
exports.banTime = 24 * 60 * 60;
exports.banScore = 100;
/**
* Ban score threshold before ban is placed in effect.
* @const {Number}
* @default
*/
exports.BAN_SCORE = 100;
/**
* Script and locktime flags. See {@link VerifyFlags}.
@ -556,8 +680,8 @@ exports.flags.MANDATORY_VERIFY_FLAGS = exports.flags.VERIFY_P2SH;
* @default
*/
exports.flags.STANDARD_VERIFY_FLAGS =
exports.flags.MANDATORY_VERIFY_FLAGS
exports.flags.STANDARD_VERIFY_FLAGS = 0
| exports.flags.MANDATORY_VERIFY_FLAGS
| exports.flags.VERIFY_DERSIG
| exports.flags.VERIFY_STRICTENC
| exports.flags.VERIFY_MINIMALDATA
@ -566,9 +690,9 @@ exports.flags.STANDARD_VERIFY_FLAGS =
| exports.flags.VERIFY_CLEANSTACK
| exports.flags.VERIFY_CHECKLOCKTIMEVERIFY
| exports.flags.VERIFY_LOW_S
| exports.flags.VERIFY_CHECKSEQUENCEVERIFY;
// | exports.flags.VERIFY_WITNESS
// | exports.flags.VERIFY_DISCOURAGE_UPGRADABLE_WITNESS_PROGRAM
| exports.flags.VERIFY_CHECKSEQUENCEVERIFY
| exports.flags.VERIFY_WITNESS
| exports.flags.VERIFY_DISCOURAGE_UPGRADABLE_WITNESS_PROGRAM;
/**
* Consensus locktime flags (used for block validation).
@ -584,8 +708,8 @@ exports.flags.MANDATORY_LOCKTIME_FLAGS = 0;
* @default
*/
exports.flags.STANDARD_LOCKTIME_FLAGS =
exports.flags.VERIFY_SEQUENCE
exports.flags.STANDARD_LOCKTIME_FLAGS = 0
| exports.flags.VERIFY_SEQUENCE
| exports.flags.MEDIAN_TIME_PAST;
/**
@ -595,11 +719,22 @@ exports.flags.STANDARD_LOCKTIME_FLAGS =
*/
exports.versionbits = {
// What block version to use for new blocks (pre versionbits)
/**
* What block version to use for new blocks (pre versionbits)
*/
LAST_OLD_BLOCK_VERSION: 4,
// What bits to set in version for versionbits blocks
/**
* What bits to set in version for versionbits blocks
*/
TOP_BITS: 0x20000000,
// What bitmask determines whether versionbits is in use
/**
* What bitmask determines whether versionbits is in use
*/
TOP_MASK: 0xe0000000
};
@ -624,10 +759,34 @@ exports.thresholdStates = {
*/
exports.confidence = {
/**
* Transaction is in the main chain.
*/
BUILDING: 1,
/**
* Transaction is valid and in the mempool.
*/
PENDING: 2,
/**
* Transaction is on a side chain.
*/
DEAD: 4,
/**
* Transaction is double-spent.
*/
INCONFLICT: 5,
/**
* Transaction is not in the mempool or chain.
*/
UNKNOWN: 0
};
</code></pre>
@ -646,7 +805,7 @@ exports.confidence = {
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

42
docs/bcoin_protocol_framer.js.html

@ -47,7 +47,7 @@ var DUMMY = new Buffer([]);
* @exports Framer
* @constructor
* @param {Object} options
* @param {String} options.userAgent - User agent string.
* @param {String} options.USER_AGENT - User agent string.
* @property {Buffer} agent
*/
@ -59,7 +59,7 @@ function Framer(options) {
this.options = options;
this.agent = new Buffer(options.userAgent || constants.userAgent, 'ascii');
this.agent = new Buffer(options.USER_AGENT || constants.USER_AGENT, 'ascii');
}
/**
@ -455,7 +455,7 @@ Framer.address = function address(data, full, writer) {
Framer.version = function version(options, writer) {
var p = new BufferWriter(writer);
var agent = options.agent || constants.userAgent;
var agent = options.agent || constants.USER_AGENT;
var remote = options.remote || {};
var local = options.local || {};
@ -463,10 +463,10 @@ Framer.version = function version(options, writer) {
agent = new Buffer(agent, 'ascii');
if (local.services == null)
local.services = constants.localServices;
local.services = constants.LOCAL_SERVICES;
p.write32(constants.version);
p.writeU64(constants.localServices);
p.write32(constants.VERSION);
p.writeU64(constants.LOCAL_SERVICES);
p.write64(utils.now());
Framer.address(remote, false, p);
Framer.address(local, false, p);
@ -502,7 +502,7 @@ Framer._inv = function _inv(items, writer) {
for (i = 0; i &lt; items.length; i++) {
type = items[i].type;
if (typeof type === 'string')
type = constants.inv[items[i].type];
type = constants.inv[items[i].type.toUpperCase()];
assert(constants.invByVal[type] != null);
p.writeU32(type);
p.writeHash(items[i].hash);
@ -592,7 +592,7 @@ Framer.filterLoad = function filterLoad(data, writer) {
var update = data.update;
if (typeof update === 'string')
update = constants.filterFlags[update];
update = constants.filterFlags[update.toUpperCase()];
assert(update != null, 'Bad filter flag.');
@ -636,7 +636,7 @@ Framer._getBlocks = function _getBlocks(data, writer, headers) {
var p, i;
if (!version)
version = constants.version;
version = constants.VERSION;
if (!locator) {
if (headers)
@ -646,7 +646,7 @@ Framer._getBlocks = function _getBlocks(data, writer, headers) {
}
if (!stop)
stop = constants.zeroHash;
stop = constants.ZERO_HASH;
p = new BufferWriter(writer);
@ -1066,10 +1066,16 @@ Framer.blockHeaders = function blockHeaders(block, writer) {
Framer.reject = function reject(details, writer) {
var p = new BufferWriter(writer);
var ccode = constants.reject[details.ccode] || constants.reject.invalid;
var ccode = details.ccode;
if (ccode >= constants.reject.internal)
ccode = constants.reject.invalid;
if (typeof ccode === 'string')
ccode = constants.reject[ccode.toUpperCase()]
if (!ccode)
ccode = constants.reject.INVALID;
if (ccode >= constants.reject.INTERNAL)
ccode = constants.reject.INVALID;
p.writeVarString(details.message || '', 'ascii');
p.writeU8(ccode);
@ -1122,6 +1128,10 @@ Framer.addr = function addr(peers, writer) {
Framer.alert = function alert(data, writer) {
var p, i, payload;
var key = data.key;
if (!key &amp;&amp; network.alertPrivateKey)
key = network.alertPrivateKey;
if (!data.payload) {
p = new BufferWriter();
@ -1152,8 +1162,8 @@ Framer.alert = function alert(data, writer) {
if (data.signature)
p.writeVarBytes(data.signature);
else if (data.key)
p.writeVarBytes(bcoin.ec.sign(utils.dsha256(payload), data.key));
else if (key)
p.writeVarBytes(bcoin.ec.sign(utils.dsha256(payload), key));
else
assert(false, 'No key or signature.');
@ -1476,7 +1486,7 @@ return Framer;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

816
docs/bcoin_protocol_network.js.html

File diff suppressed because it is too large

39
docs/bcoin_protocol_parser.js.html

@ -116,7 +116,7 @@ Parser.prototype.feed = function feed(data) {
*/
Parser.prototype.parse = function parse(chunk) {
if (chunk.length > constants.maxMessage)
if (chunk.length > constants.MAX_MESSAGE)
return this._error('Packet too large: %dmb.', utils.mb(chunk.length));
if (this.packet === null) {
@ -166,7 +166,7 @@ Parser.prototype.parseHeader = function parseHeader(h) {
cmd = h.toString('ascii', 4, 4 + i);
this.waiting = utils.readU32(h, 16);
if (this.waiting > constants.maxMessage)
if (this.waiting > constants.MAX_MESSAGE)
return this._error('Packet length too large: %dmb', utils.mb(this.waiting));
return {
@ -304,9 +304,9 @@ Parser.parseFilterLoad = function parseFilterLoad(p) {
filter = p.readVarBytes();
n = p.readU32();
tweak = p.readU32();
update = constants.filterFlagsByVal[p.readU8()];
update = p.readU8();
assert(update != null, 'Bad filter flag.');
assert(constants.filterFlagsByVal[update] != null, 'Bad filter flag.');
return {
filter: filter,
@ -581,7 +581,7 @@ Parser.parsePong = function parsePong(p) {
* @property {Number?} port - Port.
* @property {Boolean?} network - Whether network services are enabled.
* @property {Boolean?} getutxo - Whether peer supports getutxos.
* @property {Boolean?} bloom - Whether peer supports serving filteredblocks.
* @property {Boolean?} bloom - Whether peer supports serving FILTERED_BLOCKs.
* @property {Boolean?} witness - Whether peer supports segwit.
* @property {Number} _size
*/
@ -635,10 +635,10 @@ Parser.parseVersion = function parseVersion(p) {
return {
version: version,
services: services,
network: (services &amp; constants.services.network) !== 0,
getutxo: (services &amp; constants.services.getutxo) !== 0,
bloom: (services &amp; constants.services.bloom) !== 0,
witness: (services &amp; constants.services.witness) !== 0,
network: (services &amp; constants.services.NETWORK) !== 0,
getutxo: (services &amp; constants.services.GETUTXO) !== 0,
bloom: (services &amp; constants.services.BLOOM) !== 0,
witness: (services &amp; constants.services.WITNESS) !== 0,
ts: ts,
local: recv,
remote: from,
@ -704,7 +704,7 @@ Parser._parseGetBlocks = function _parseGetBlocks(p) {
stop = p.readHash('hex');
if (stop === constants.nullHash)
if (stop === constants.NULL_HASH)
stop = null;
return {
@ -862,7 +862,6 @@ Parser.parseBlockHeaders = function parseBlockHeaders(p) {
ts: p.readU32(),
bits: p.readU32(),
nonce: p.readU32(),
totalTX: p.readVarint(),
_size: p.end()
}
};
@ -966,10 +965,10 @@ Parser.parseBlockCompact = function parseBlockCompact(p) {
input = Parser.parseInput(p);
}
if (input) {
if (Buffer.isBuffer(input.script.code[0]))
height = input.script.code[0];
}
if (input)
height = bcoin.script.getCoinbaseHeight(input.script.code);
else
height = -1;
raw = p.data;
@ -1382,10 +1381,10 @@ Parser.parseAddress = function parseAddress(p, full) {
return {
ts: ts,
services: services,
network: (services &amp; constants.services.network) !== 0,
getutxo: (services &amp; constants.services.getutxo) !== 0,
bloom: (services &amp; constants.services.bloom) !== 0,
witness: (services &amp; constants.services.witness) !== 0,
network: (services &amp; constants.services.NETWORK) !== 0,
getutxo: (services &amp; constants.services.GETUTXO) !== 0,
bloom: (services &amp; constants.services.BLOOM) !== 0,
witness: (services &amp; constants.services.WITNESS) !== 0,
ipv6: utils.array2ip(ip, 6),
ipv4: utils.array2ip(ip, 4),
port: port,
@ -1528,7 +1527,7 @@ return Parser;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

2
docs/bcoin_reader.js.html

@ -559,7 +559,7 @@ module.exports = BufferReader;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

661
docs/bcoin_script.js.html

File diff suppressed because it is too large

8
docs/bcoin_spvnode.js.html

@ -37,6 +37,7 @@ module.exports = function(bcoin) {
var utils = require('./utils');
var assert = utils.assert;
var network = bcoin.protocol.network;
/**
* Create an spv node which only maintains
@ -64,9 +65,6 @@ function SPVNode(options) {
if (!(this instanceof SPVNode))
return new SPVNode(options);
if (!options)
options = {};
bcoin.node.call(this, options);
this.loaded = false;
@ -90,7 +88,7 @@ SPVNode.prototype._init = function _init() {
this.pool = new bcoin.pool({
chain: this.chain,
witness: this.network.witness,
witness: network.witness,
selfish: true,
listen: false,
spv: true
@ -342,7 +340,7 @@ return SPVNode;
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sat Apr 16 2016 21:21:59 GMT-0700 (PDT)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Sun Apr 17 2016 21:04:10 GMT-0700 (PDT)
</footer>
<script> prettyPrint(); </script>

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save