This commit is contained in:
bthomee
2025-05-20 18:10:54 +00:00
parent 39d241def5
commit 90cc35d381
3215 changed files with 96027 additions and 70734 deletions

View File

@@ -423,14 +423,14 @@ $(function() {
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span> </div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span><a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a></div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"><a class="line" href="classripple_1_1Pathfinder.html#a56526c55e7b20f765063753c3f10718f"> 347</a></span><a class="code hl_function" href="classripple_1_1Pathfinder.html#a56526c55e7b20f765063753c3f10718f">Pathfinder::getPathLiquidity</a>(</div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> <a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <span class="keyword">const</span>&amp; path, <span class="comment">// IN: The path to check.</span></div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> <a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <span class="keyword">const</span>&amp; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>, <span class="comment">// IN: The path to check.</span></div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span> <a class="code hl_class" href="classripple_1_1STAmount.html">STAmount</a> <span class="keyword">const</span>&amp; minDstAmount, <span class="comment">// IN: The minimum output this path must</span></div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span> <span class="comment">// deliver to be worth keeping.</span></div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> <a class="code hl_class" href="classripple_1_1STAmount.html">STAmount</a>&amp; amountOut, <span class="comment">// OUT: The actual liquidity along the path.</span></div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> uint64_t&amp; qualityOut) <span class="keyword">const</span> <span class="comment">// OUT: The returned initial quality</span></div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> uint64_t&amp; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1qualityOut.html">qualityOut</a>) <span class="keyword">const</span> <span class="comment">// OUT: The returned initial quality</span></div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span>{</div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span> <a class="code hl_class" href="classripple_1_1STPathSet.html">STPathSet</a> pathSet;</div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> pathSet.<a class="code hl_function" href="classripple_1_1STPathSet.html#a61721601b734d6324eb0d7c585358a63">push_back</a>(path);</div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> pathSet.<a class="code hl_function" href="classripple_1_1STPathSet.html#a61721601b734d6324eb0d7c585358a63">push_back</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>);</div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span> </div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span> <a class="code hl_struct" href="structripple_1_1path_1_1RippleCalc_1_1Input.html">path::RippleCalc::Input</a> rcInput;</div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span> rcInput.<a class="code hl_variable" href="structripple_1_1path_1_1RippleCalc_1_1Input.html#a5913b8a574634a704a8359529c5deff9">defaultPathsAllowed</a> = <span class="keyword">false</span>;</div>
@@ -456,7 +456,7 @@ $(function() {
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span> <span class="keywordflow">if</span> (rc.result() != <a class="code hl_enumvalue" href="namespaceripple.html#aabc7f150d5082c73116a1cd5962b434da28c7d8b3ed759d363503a05fcd59f151">tesSUCCESS</a>)</div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"> 379</span> <span class="keywordflow">return</span> rc.result();</div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> </div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> qualityOut = <a class="code hl_function" href="namespaceripple.html#a73cc988e7ba5d5ee0fd9db53740917ec">getRate</a>(rc.actualAmountOut, rc.actualAmountIn);</div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1qualityOut.html">qualityOut</a> = <a class="code hl_function" href="namespaceripple.html#a73cc988e7ba5d5ee0fd9db53740917ec">getRate</a>(rc.actualAmountOut, rc.actualAmountIn);</div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span> amountOut = rc.actualAmountOut;</div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span> </div>
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno"> 384</span> <span class="keywordflow">if</span> (!convert_all_)</div>
@@ -483,7 +483,7 @@ $(function() {
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span> <span class="keywordflow">catch</span> (<a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/error/exception.html">std::exception</a> <span class="keyword">const</span>&amp; e)</div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span> {</div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span> JLOG(j_.<a class="code hl_function" href="classbeast_1_1Journal.html#a87d6bd59020d94110027dcab3d9e3357">info</a>()) &lt;&lt; <span class="stringliteral">&quot;checkpath: exception (&quot;</span> &lt;&lt; e.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/error/exception/what.html">what</a>() &lt;&lt; <span class="stringliteral">&quot;) &quot;</span></div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> &lt;&lt; path.getJson(<a class="code hl_enumvalue" href="structripple_1_1JsonOptions.html#ab85e43ec84df987200d3355c3ba89f0aa1917451e3686dfe8d5016670eb87ab33">JsonOptions::none</a>);</div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> &lt;&lt; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.getJson(<a class="code hl_enumvalue" href="structripple_1_1JsonOptions.html#ab85e43ec84df987200d3355c3ba89f0aa1917451e3686dfe8d5016670eb87ab33">JsonOptions::none</a>);</div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span> <span class="keywordflow">return</span> <a class="code hl_enumvalue" href="namespaceripple.html#a75cb21d7f1df42f2fdc8efddb79b63f4a86b406cfcbffc042f65ac0c78079adbb">tefEXCEPTION</a>;</div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span> }</div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span>}</div>
@@ -533,7 +533,7 @@ $(function() {
<div class="line"><a id="l00455" name="l00455"></a><span class="lineno"> 455</span>}</div>
<div class="line"><a id="l00456" name="l00456"></a><span class="lineno"> 456</span> </div>
<div class="line"><a id="l00457" name="l00457"></a><span class="lineno"> 457</span><span class="keyword">static</span> <span class="keywordtype">bool</span></div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"><a class="line" href="namespaceripple.html#a64db4e9a01a15836948b70c1689ef2ca"> 458</a></span><a class="code hl_function" href="namespaceripple.html#a64db4e9a01a15836948b70c1689ef2ca">isDefaultPath</a>(<a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <span class="keyword">const</span>&amp; path)</div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"><a class="line" href="namespaceripple.html#a64db4e9a01a15836948b70c1689ef2ca"> 458</a></span><a class="code hl_function" href="namespaceripple.html#a64db4e9a01a15836948b70c1689ef2ca">isDefaultPath</a>(<a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <span class="keyword">const</span>&amp; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>)</div>
<div class="line"><a id="l00459" name="l00459"></a><span class="lineno"> 459</span>{</div>
<div class="line"><a id="l00460" name="l00460"></a><span class="lineno"> 460</span> <span class="comment">// FIXME: default paths can consist of more than just an account:</span></div>
<div class="line"><a id="l00461" name="l00461"></a><span class="lineno"> 461</span> <span class="comment">//</span></div>
@@ -548,17 +548,17 @@ $(function() {
<div class="line"><a id="l00470" name="l00470"></a><span class="lineno"> 470</span> <span class="comment">// 3) In the pathfinding loop, if the source issuer is not the sender,</span></div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span> <span class="comment">// reject all paths that don&#39;t begin with the issuer&#39;s account node or match</span></div>
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno"> 472</span> <span class="comment">// the path we built at step 2.</span></div>
<div class="line"><a id="l00473" name="l00473"></a><span class="lineno"> 473</span> <span class="keywordflow">return</span> path.size() == 1;</div>
<div class="line"><a id="l00473" name="l00473"></a><span class="lineno"> 473</span> <span class="keywordflow">return</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.size() == 1;</div>
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"> 474</span>}</div>
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno"> 475</span> </div>
<div class="line"><a id="l00476" name="l00476"></a><span class="lineno"> 476</span><span class="keyword">static</span> STPath</div>
<div class="line"><a id="l00477" name="l00477"></a><span class="lineno"><a class="line" href="namespaceripple.html#a85965961aa46753332a4369d6538a169"> 477</a></span><a class="code hl_function" href="namespaceripple.html#a85965961aa46753332a4369d6538a169">removeIssuer</a>(<a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <span class="keyword">const</span>&amp; path)</div>
<div class="line"><a id="l00477" name="l00477"></a><span class="lineno"><a class="line" href="namespaceripple.html#a85965961aa46753332a4369d6538a169"> 477</a></span><a class="code hl_function" href="namespaceripple.html#a85965961aa46753332a4369d6538a169">removeIssuer</a>(<a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <span class="keyword">const</span>&amp; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>)</div>
<div class="line"><a id="l00478" name="l00478"></a><span class="lineno"> 478</span>{</div>
<div class="line"><a id="l00479" name="l00479"></a><span class="lineno"> 479</span> <span class="comment">// This path starts with the issuer, which is already implied</span></div>
<div class="line"><a id="l00480" name="l00480"></a><span class="lineno"> 480</span> <span class="comment">// so remove the head node</span></div>
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"> 481</span> <a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> ret;</div>
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"> 482</span> </div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = path.begin() + 1; it != path.end(); ++it)</div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.begin() + 1; it != <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.end(); ++it)</div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"> 484</span> ret.<a class="code hl_function" href="classripple_1_1STPath.html#abc9e0aacd630a6bf672115cf501fa20a">push_back</a>(*it);</div>
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"> 485</span> </div>
<div class="line"><a id="l00486" name="l00486"></a><span class="lineno"> 486</span> <span class="keywordflow">return</span> ret;</div>
@@ -569,14 +569,14 @@ $(function() {
<div class="line"><a id="l00491" name="l00491"></a><span class="lineno"> 491</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00492" name="l00492"></a><span class="lineno"><a class="line" href="classripple_1_1Pathfinder.html#a115ab8385952ac20117145a87e1711e9"> 492</a></span><a class="code hl_function" href="classripple_1_1Pathfinder.html#a115ab8385952ac20117145a87e1711e9">Pathfinder::rankPaths</a>(</div>
<div class="line"><a id="l00493" name="l00493"></a><span class="lineno"> 493</span> <span class="keywordtype">int</span> maxPaths,</div>
<div class="line"><a id="l00494" name="l00494"></a><span class="lineno"> 494</span> <a class="code hl_class" href="classripple_1_1STPathSet.html">STPathSet</a> <span class="keyword">const</span>&amp; paths,</div>
<div class="line"><a id="l00494" name="l00494"></a><span class="lineno"> 494</span> <a class="code hl_class" href="classripple_1_1STPathSet.html">STPathSet</a> <span class="keyword">const</span>&amp; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1paths.html">paths</a>,</div>
<div class="line"><a id="l00495" name="l00495"></a><span class="lineno"> 495</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector&lt;PathRank&gt;</a>&amp; rankedPaths,</div>
<div class="line"><a id="l00496" name="l00496"></a><span class="lineno"> 496</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/utility/functional/function.html">std::function</a>&lt;<span class="keywordtype">bool</span>(<span class="keywordtype">void</span>)&gt; <span class="keyword">const</span>&amp; continueCallback)</div>
<div class="line"><a id="l00497" name="l00497"></a><span class="lineno"> 497</span>{</div>
<div class="line"><a id="l00498" name="l00498"></a><span class="lineno"> 498</span> JLOG(<a class="code hl_variable" href="classripple_1_1Pathfinder.html#aa533436fcbb6f8e94eeb120d3fb7d37c">j_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#abbe082bd27ca0f1d1365af2824e4f85b">trace</a>()) &lt;&lt; <span class="stringliteral">&quot;rankPaths with &quot;</span> &lt;&lt; paths.<a class="code hl_function" href="classripple_1_1STPathSet.html#af74f528bb7846fccf7665ec4e0e6667d">size</a>() &lt;&lt; <span class="stringliteral">&quot; candidates, and &quot;</span></div>
<div class="line"><a id="l00498" name="l00498"></a><span class="lineno"> 498</span> JLOG(<a class="code hl_variable" href="classripple_1_1Pathfinder.html#aa533436fcbb6f8e94eeb120d3fb7d37c">j_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#abbe082bd27ca0f1d1365af2824e4f85b">trace</a>()) &lt;&lt; <span class="stringliteral">&quot;rankPaths with &quot;</span> &lt;&lt; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1paths.html">paths</a>.size() &lt;&lt; <span class="stringliteral">&quot; candidates, and &quot;</span></div>
<div class="line"><a id="l00499" name="l00499"></a><span class="lineno"> 499</span> &lt;&lt; maxPaths &lt;&lt; <span class="stringliteral">&quot; maximum&quot;</span>;</div>
<div class="line"><a id="l00500" name="l00500"></a><span class="lineno"> 500</span> rankedPaths.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/container/vector/clear.html">clear</a>();</div>
<div class="line"><a id="l00501" name="l00501"></a><span class="lineno"> 501</span> rankedPaths.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/container/vector/reserve.html">reserve</a>(paths.<a class="code hl_function" href="classripple_1_1STPathSet.html#af74f528bb7846fccf7665ec4e0e6667d">size</a>());</div>
<div class="line"><a id="l00501" name="l00501"></a><span class="lineno"> 501</span> rankedPaths.<a class="code hl_functionRef" href="http://en.cppreference.com/w/cpp/container/vector/reserve.html">reserve</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1paths.html">paths</a>.size());</div>
<div class="line"><a id="l00502" name="l00502"></a><span class="lineno"> 502</span> </div>
<div class="line"><a id="l00503" name="l00503"></a><span class="lineno"> 503</span> <span class="keyword">auto</span> <span class="keyword">const</span> saMinDstAmount = [&amp;]() -&gt; <a class="code hl_class" href="classripple_1_1STAmount.html">STAmount</a> {</div>
<div class="line"><a id="l00504" name="l00504"></a><span class="lineno"> 504</span> <span class="keywordflow">if</span> (!<a class="code hl_variable" href="classripple_1_1Pathfinder.html#ab3a6371ee8dd90a9786cb73d560b43e8">convert_all_</a>)</div>
@@ -590,11 +590,11 @@ $(function() {
<div class="line"><a id="l00512" name="l00512"></a><span class="lineno"> 512</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceripple.html#acc022dd1f2122859acff200e4f2cb0f0">largestAmount</a>(<a class="code hl_variable" href="classripple_1_1Pathfinder.html#a3981ff2a2b6ed6a6b8a30c9b9f0b1a0f">mDstAmount</a>);</div>
<div class="line"><a id="l00513" name="l00513"></a><span class="lineno"> 513</span> }();</div>
<div class="line"><a id="l00514" name="l00514"></a><span class="lineno"> 514</span> </div>
<div class="line"><a id="l00515" name="l00515"></a><span class="lineno"> 515</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; paths.<a class="code hl_function" href="classripple_1_1STPathSet.html#af74f528bb7846fccf7665ec4e0e6667d">size</a>(); ++i)</div>
<div class="line"><a id="l00515" name="l00515"></a><span class="lineno"> 515</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1paths.html">paths</a>.size(); ++i)</div>
<div class="line"><a id="l00516" name="l00516"></a><span class="lineno"> 516</span> {</div>
<div class="line"><a id="l00517" name="l00517"></a><span class="lineno"> 517</span> <span class="keywordflow">if</span> (continueCallback &amp;&amp; !continueCallback())</div>
<div class="line"><a id="l00518" name="l00518"></a><span class="lineno"> 518</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00519" name="l00519"></a><span class="lineno"> 519</span> <span class="keyword">auto</span> <span class="keyword">const</span>&amp; currentPath = paths[i];</div>
<div class="line"><a id="l00519" name="l00519"></a><span class="lineno"> 519</span> <span class="keyword">auto</span> <span class="keyword">const</span>&amp; currentPath = <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1paths.html">paths</a>[i];</div>
<div class="line"><a id="l00520" name="l00520"></a><span class="lineno"> 520</span> <span class="keywordflow">if</span> (!currentPath.empty())</div>
<div class="line"><a id="l00521" name="l00521"></a><span class="lineno"> 521</span> {</div>
<div class="line"><a id="l00522" name="l00522"></a><span class="lineno"> 522</span> <a class="code hl_class" href="classripple_1_1STAmount.html">STAmount</a> liquidity;</div>
@@ -706,7 +706,7 @@ $(function() {
<div class="line"><a id="l00628" name="l00628"></a><span class="lineno"> 628</span> </div>
<div class="line"><a id="l00629" name="l00629"></a><span class="lineno"> 629</span> <span class="keyword">auto</span>&amp; pathRank = usePath ? *pathsIterator : *extraPathsIterator;</div>
<div class="line"><a id="l00630" name="l00630"></a><span class="lineno"> 630</span> </div>
<div class="line"><a id="l00631" name="l00631"></a><span class="lineno"> 631</span> <span class="keyword">auto</span> <span class="keyword">const</span>&amp; path = usePath ? <a class="code hl_variable" href="classripple_1_1Pathfinder.html#a3eb91965f2ff01e21c6266168b098299">mCompletePaths</a>[pathRank.index]</div>
<div class="line"><a id="l00631" name="l00631"></a><span class="lineno"> 631</span> <span class="keyword">auto</span> <span class="keyword">const</span>&amp; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a> = usePath ? <a class="code hl_variable" href="classripple_1_1Pathfinder.html#a3eb91965f2ff01e21c6266168b098299">mCompletePaths</a>[pathRank.index]</div>
<div class="line"><a id="l00632" name="l00632"></a><span class="lineno"> 632</span> : extraPaths[pathRank.index];</div>
<div class="line"><a id="l00633" name="l00633"></a><span class="lineno"> 633</span> </div>
<div class="line"><a id="l00634" name="l00634"></a><span class="lineno"> 634</span> <span class="keywordflow">if</span> (useExtraPath)</div>
@@ -719,7 +719,7 @@ $(function() {
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"> 641</span> <span class="keywordflow">if</span> (!(iPathsLeft &gt; 0 || fullLiquidityPath.<a class="code hl_function" href="classripple_1_1STPath.html#a8e42067efeaf61f28f016e337e45fdd2">empty</a>()))</div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno"> 642</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00643" name="l00643"></a><span class="lineno"> 643</span> </div>
<div class="line"><a id="l00644" name="l00644"></a><span class="lineno"> 644</span> <span class="keywordflow">if</span> (path.empty())</div>
<div class="line"><a id="l00644" name="l00644"></a><span class="lineno"> 644</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.empty())</div>
<div class="line"><a id="l00645" name="l00645"></a><span class="lineno"> 645</span> {</div>
<div class="line"><a id="l00646" name="l00646"></a><span class="lineno"> 646</span> UNREACHABLE(<span class="stringliteral">&quot;ripple::Pathfinder::getBestPaths : path not found&quot;</span>);</div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"> 647</span> <span class="keywordflow">continue</span>;</div>
@@ -730,7 +730,7 @@ $(function() {
<div class="line"><a id="l00652" name="l00652"></a><span class="lineno"> 652</span> <span class="keywordflow">if</span> (!issuerIsSender &amp;&amp; usePath)</div>
<div class="line"><a id="l00653" name="l00653"></a><span class="lineno"> 653</span> {</div>
<div class="line"><a id="l00654" name="l00654"></a><span class="lineno"> 654</span> <span class="comment">// Need to make sure path matches issuer constraints</span></div>
<div class="line"><a id="l00655" name="l00655"></a><span class="lineno"> 655</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="namespaceripple.html#a64db4e9a01a15836948b70c1689ef2ca">isDefaultPath</a>(path) || path.front().getAccountID() != srcIssuer)</div>
<div class="line"><a id="l00655" name="l00655"></a><span class="lineno"> 655</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="namespaceripple.html#a64db4e9a01a15836948b70c1689ef2ca">isDefaultPath</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>) || <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.front().getAccountID() != srcIssuer)</div>
<div class="line"><a id="l00656" name="l00656"></a><span class="lineno"> 656</span> {</div>
<div class="line"><a id="l00657" name="l00657"></a><span class="lineno"> 657</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno"> 658</span> }</div>
@@ -744,21 +744,21 @@ $(function() {
<div class="line"><a id="l00666" name="l00666"></a><span class="lineno"> 666</span> {</div>
<div class="line"><a id="l00667" name="l00667"></a><span class="lineno"> 667</span> --iPathsLeft;</div>
<div class="line"><a id="l00668" name="l00668"></a><span class="lineno"> 668</span> remaining -= pathRank.liquidity;</div>
<div class="line"><a id="l00669" name="l00669"></a><span class="lineno"> 669</span> bestPaths.<a class="code hl_function" href="classripple_1_1STPathSet.html#a61721601b734d6324eb0d7c585358a63">push_back</a>(startsWithIssuer ? <a class="code hl_function" href="namespaceripple.html#a85965961aa46753332a4369d6538a169">removeIssuer</a>(path) : path);</div>
<div class="line"><a id="l00669" name="l00669"></a><span class="lineno"> 669</span> bestPaths.<a class="code hl_function" href="classripple_1_1STPathSet.html#a61721601b734d6324eb0d7c585358a63">push_back</a>(startsWithIssuer ? <a class="code hl_function" href="namespaceripple.html#a85965961aa46753332a4369d6538a169">removeIssuer</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>) : <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>);</div>
<div class="line"><a id="l00670" name="l00670"></a><span class="lineno"> 670</span> }</div>
<div class="line"><a id="l00671" name="l00671"></a><span class="lineno"> 671</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (</div>
<div class="line"><a id="l00672" name="l00672"></a><span class="lineno"> 672</span> iPathsLeft == 0 &amp;&amp; pathRank.liquidity &gt;= <a class="code hl_variable" href="classripple_1_1Pathfinder.html#a3981ff2a2b6ed6a6b8a30c9b9f0b1a0f">mDstAmount</a> &amp;&amp;</div>
<div class="line"><a id="l00673" name="l00673"></a><span class="lineno"> 673</span> fullLiquidityPath.<a class="code hl_function" href="classripple_1_1STPath.html#a8e42067efeaf61f28f016e337e45fdd2">empty</a>())</div>
<div class="line"><a id="l00674" name="l00674"></a><span class="lineno"> 674</span> {</div>
<div class="line"><a id="l00675" name="l00675"></a><span class="lineno"> 675</span> <span class="comment">// We found an extra path that can move the whole amount.</span></div>
<div class="line"><a id="l00676" name="l00676"></a><span class="lineno"> 676</span> fullLiquidityPath = (startsWithIssuer ? <a class="code hl_function" href="namespaceripple.html#a85965961aa46753332a4369d6538a169">removeIssuer</a>(path) : path);</div>
<div class="line"><a id="l00676" name="l00676"></a><span class="lineno"> 676</span> fullLiquidityPath = (startsWithIssuer ? <a class="code hl_function" href="namespaceripple.html#a85965961aa46753332a4369d6538a169">removeIssuer</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>) : <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>);</div>
<div class="line"><a id="l00677" name="l00677"></a><span class="lineno"> 677</span> JLOG(<a class="code hl_variable" href="classripple_1_1Pathfinder.html#aa533436fcbb6f8e94eeb120d3fb7d37c">j_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>()) &lt;&lt; <span class="stringliteral">&quot;Found extra full path: &quot;</span></div>
<div class="line"><a id="l00678" name="l00678"></a><span class="lineno"> 678</span> &lt;&lt; fullLiquidityPath.<a class="code hl_function" href="classripple_1_1STPath.html#ab8bd502211308857863a29188a680c13">getJson</a>(<a class="code hl_enumvalue" href="structripple_1_1JsonOptions.html#ab85e43ec84df987200d3355c3ba89f0aa1917451e3686dfe8d5016670eb87ab33">JsonOptions::none</a>);</div>
<div class="line"><a id="l00679" name="l00679"></a><span class="lineno"> 679</span> }</div>
<div class="line"><a id="l00680" name="l00680"></a><span class="lineno"> 680</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00681" name="l00681"></a><span class="lineno"> 681</span> {</div>
<div class="line"><a id="l00682" name="l00682"></a><span class="lineno"> 682</span> JLOG(<a class="code hl_variable" href="classripple_1_1Pathfinder.html#aa533436fcbb6f8e94eeb120d3fb7d37c">j_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>()) &lt;&lt; <span class="stringliteral">&quot;Skipping a non-filling path: &quot;</span></div>
<div class="line"><a id="l00683" name="l00683"></a><span class="lineno"> 683</span> &lt;&lt; path.getJson(<a class="code hl_enumvalue" href="structripple_1_1JsonOptions.html#ab85e43ec84df987200d3355c3ba89f0aa1917451e3686dfe8d5016670eb87ab33">JsonOptions::none</a>);</div>
<div class="line"><a id="l00683" name="l00683"></a><span class="lineno"> 683</span> &lt;&lt; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.getJson(<a class="code hl_enumvalue" href="structripple_1_1JsonOptions.html#ab85e43ec84df987200d3355c3ba89f0aa1917451e3686dfe8d5016670eb87ab33">JsonOptions::none</a>);</div>
<div class="line"><a id="l00684" name="l00684"></a><span class="lineno"> 684</span> }</div>
<div class="line"><a id="l00685" name="l00685"></a><span class="lineno"> 685</span> }</div>
<div class="line"><a id="l00686" name="l00686"></a><span class="lineno"> 686</span> </div>
@@ -821,9 +821,9 @@ $(function() {
<div class="line"><a id="l00743" name="l00743"></a><span class="lineno"> 743</span> {</div>
<div class="line"><a id="l00744" name="l00744"></a><span class="lineno"> 744</span> count = <a class="code hl_variable" href="classripple_1_1Pathfinder.html#a662197b9a477c9fe6893ef59a6280bbb">app_</a>.<a class="code hl_function" href="classripple_1_1Application.html#a477219b05fb65f86a6dee712bf778280">getOrderBookDB</a>().<a class="code hl_function" href="classripple_1_1OrderBookDB.html#aaccb8e34048b89f4d94c79e63c12223b">getBookSize</a>(issue);</div>
<div class="line"><a id="l00745" name="l00745"></a><span class="lineno"> 745</span> </div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno"> 746</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> <span class="keyword">const</span> lines = <a class="code hl_variable" href="classripple_1_1Pathfinder.html#a55fe1f15d023b3a326556e19e3c9f4bc">mRLCache</a>-&gt;getRippleLines(account, direction))</div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno"> 746</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1owner__count.html">lines</a> = <a class="code hl_variable" href="classripple_1_1Pathfinder.html#a55fe1f15d023b3a326556e19e3c9f4bc">mRLCache</a>-&gt;getRippleLines(account, direction))</div>
<div class="line"><a id="l00747" name="l00747"></a><span class="lineno"> 747</span> {</div>
<div class="line"><a id="l00748" name="l00748"></a><span class="lineno"> 748</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; rspEntry : *lines)</div>
<div class="line"><a id="l00748" name="l00748"></a><span class="lineno"> 748</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; rspEntry : *<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1owner__count.html">lines</a>)</div>
<div class="line"><a id="l00749" name="l00749"></a><span class="lineno"> 749</span> {</div>
<div class="line"><a id="l00750" name="l00750"></a><span class="lineno"> 750</span> <span class="keywordflow">if</span> (currency != rspEntry.getLimit().getCurrency())</div>
<div class="line"><a id="l00751" name="l00751"></a><span class="lineno"> 751</span> {</div>
@@ -868,11 +868,11 @@ $(function() {
<div class="line"><a id="l00790" name="l00790"></a><span class="lineno"> 790</span>{</div>
<div class="line"><a id="l00791" name="l00791"></a><span class="lineno"> 791</span> JLOG(<a class="code hl_variable" href="classripple_1_1Pathfinder.html#aa533436fcbb6f8e94eeb120d3fb7d37c">j_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>()) &lt;&lt; <span class="stringliteral">&quot;addLink&lt; on &quot;</span> &lt;&lt; currentPaths.<a class="code hl_function" href="classripple_1_1STPathSet.html#af74f528bb7846fccf7665ec4e0e6667d">size</a>()</div>
<div class="line"><a id="l00792" name="l00792"></a><span class="lineno"> 792</span> &lt;&lt; <span class="stringliteral">&quot; source(s), flags=&quot;</span> &lt;&lt; addFlags;</div>
<div class="line"><a id="l00793" name="l00793"></a><span class="lineno"> 793</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; path : currentPaths)</div>
<div class="line"><a id="l00793" name="l00793"></a><span class="lineno"> 793</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a> : currentPaths)</div>
<div class="line"><a id="l00794" name="l00794"></a><span class="lineno"> 794</span> {</div>
<div class="line"><a id="l00795" name="l00795"></a><span class="lineno"> 795</span> <span class="keywordflow">if</span> (continueCallback &amp;&amp; !continueCallback())</div>
<div class="line"><a id="l00796" name="l00796"></a><span class="lineno"> 796</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00797" name="l00797"></a><span class="lineno"> 797</span> <a class="code hl_function" href="classripple_1_1Pathfinder.html#add1bb1bf0400a204a973cbcb1c62c435">addLink</a>(path, incompletePaths, addFlags, continueCallback);</div>
<div class="line"><a id="l00797" name="l00797"></a><span class="lineno"> 797</span> <a class="code hl_function" href="classripple_1_1Pathfinder.html#add1bb1bf0400a204a973cbcb1c62c435">addLink</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>, incompletePaths, addFlags, continueCallback);</div>
<div class="line"><a id="l00798" name="l00798"></a><span class="lineno"> 798</span> }</div>
<div class="line"><a id="l00799" name="l00799"></a><span class="lineno"> 799</span>}</div>
<div class="line"><a id="l00800" name="l00800"></a><span class="lineno"> 800</span> </div>
@@ -1008,16 +1008,16 @@ $(function() {
<div class="line"><a id="l00930" name="l00930"></a><span class="lineno"> 930</span>}</div>
<div class="line"><a id="l00931" name="l00931"></a><span class="lineno"> 931</span> </div>
<div class="line"><a id="l00932" name="l00932"></a><span class="lineno"> 932</span><span class="keywordtype">void</span></div>
<div class="line"><a id="l00933" name="l00933"></a><span class="lineno"><a class="line" href="namespaceripple.html#adb2e324768f8d996d68d9bd9cb1f3fca"> 933</a></span><a class="code hl_function" href="namespaceripple.html#adb2e324768f8d996d68d9bd9cb1f3fca">addUniquePath</a>(<a class="code hl_class" href="classripple_1_1STPathSet.html">STPathSet</a>&amp; pathSet, <a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <span class="keyword">const</span>&amp; path)</div>
<div class="line"><a id="l00933" name="l00933"></a><span class="lineno"><a class="line" href="namespaceripple.html#adb2e324768f8d996d68d9bd9cb1f3fca"> 933</a></span><a class="code hl_function" href="namespaceripple.html#adb2e324768f8d996d68d9bd9cb1f3fca">addUniquePath</a>(<a class="code hl_class" href="classripple_1_1STPathSet.html">STPathSet</a>&amp; pathSet, <a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <span class="keyword">const</span>&amp; <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>)</div>
<div class="line"><a id="l00934" name="l00934"></a><span class="lineno"> 934</span>{</div>
<div class="line"><a id="l00935" name="l00935"></a><span class="lineno"> 935</span> <span class="comment">// TODO(tom): building an STPathSet this way is quadratic in the size</span></div>
<div class="line"><a id="l00936" name="l00936"></a><span class="lineno"> 936</span> <span class="comment">// of the STPathSet!</span></div>
<div class="line"><a id="l00937" name="l00937"></a><span class="lineno"> 937</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; p : pathSet)</div>
<div class="line"><a id="l00938" name="l00938"></a><span class="lineno"> 938</span> {</div>
<div class="line"><a id="l00939" name="l00939"></a><span class="lineno"> 939</span> <span class="keywordflow">if</span> (p == path)</div>
<div class="line"><a id="l00939" name="l00939"></a><span class="lineno"> 939</span> <span class="keywordflow">if</span> (p == <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>)</div>
<div class="line"><a id="l00940" name="l00940"></a><span class="lineno"> 940</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00941" name="l00941"></a><span class="lineno"> 941</span> }</div>
<div class="line"><a id="l00942" name="l00942"></a><span class="lineno"> 942</span> pathSet.<a class="code hl_function" href="classripple_1_1STPathSet.html#a61721601b734d6324eb0d7c585358a63">push_back</a>(path);</div>
<div class="line"><a id="l00942" name="l00942"></a><span class="lineno"> 942</span> pathSet.<a class="code hl_function" href="classripple_1_1STPathSet.html#a61721601b734d6324eb0d7c585358a63">push_back</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>);</div>
<div class="line"><a id="l00943" name="l00943"></a><span class="lineno"> 943</span>}</div>
<div class="line"><a id="l00944" name="l00944"></a><span class="lineno"> 944</span> </div>
<div class="line"><a id="l00945" name="l00945"></a><span class="lineno"> 945</span><span class="keywordtype">void</span></div>
@@ -1068,12 +1068,12 @@ $(function() {
<div class="line"><a id="l00990" name="l00990"></a><span class="lineno"> 990</span> <span class="keywordtype">bool</span> <span class="keyword">const</span> bIsNoRippleOut(<a class="code hl_function" href="classripple_1_1Pathfinder.html#a7282e0083acf806d91edd8ef4cff9cb5">isNoRippleOut</a>(currentPath));</div>
<div class="line"><a id="l00991" name="l00991"></a><span class="lineno"> 991</span> <span class="keywordtype">bool</span> <span class="keyword">const</span> bDestOnly(addFlags &amp; <a class="code hl_variable" href="classripple_1_1Pathfinder.html#aec44f4cf009923992688757eb003ef21">afAC_LAST</a>);</div>
<div class="line"><a id="l00992" name="l00992"></a><span class="lineno"> 992</span> </div>
<div class="line"><a id="l00993" name="l00993"></a><span class="lineno"> 993</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> <span class="keyword">const</span> lines = <a class="code hl_variable" href="classripple_1_1Pathfinder.html#a55fe1f15d023b3a326556e19e3c9f4bc">mRLCache</a>-&gt;getRippleLines(</div>
<div class="line"><a id="l00993" name="l00993"></a><span class="lineno"> 993</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1owner__count.html">lines</a> = <a class="code hl_variable" href="classripple_1_1Pathfinder.html#a55fe1f15d023b3a326556e19e3c9f4bc">mRLCache</a>-&gt;getRippleLines(</div>
<div class="line"><a id="l00994" name="l00994"></a><span class="lineno"> 994</span> uEndAccount,</div>
<div class="line"><a id="l00995" name="l00995"></a><span class="lineno"> 995</span> bIsNoRippleOut ? <a class="code hl_enumvalue" href="namespaceripple.html#afaeac9ab95c58b4359cdd27f59d18568ad48f944ac6c78b97d544f98b89b506ca">LineDirection::incoming</a></div>
<div class="line"><a id="l00996" name="l00996"></a><span class="lineno"> 996</span> : <a class="code hl_enumvalue" href="namespaceripple.html#afaeac9ab95c58b4359cdd27f59d18568a1186f94907928a1412cf4ecfdf8bc476">LineDirection::outgoing</a>))</div>
<div class="line"><a id="l00997" name="l00997"></a><span class="lineno"> 997</span> {</div>
<div class="line"><a id="l00998" name="l00998"></a><span class="lineno"> 998</span> <span class="keyword">auto</span>&amp; rippleLines = *lines;</div>
<div class="line"><a id="l00998" name="l00998"></a><span class="lineno"> 998</span> <span class="keyword">auto</span>&amp; rippleLines = *<a class="code hl_typedef" href="namespaceripple_1_1test_1_1jtx.html#a07a4f5b92ce36a9cbf86ab7845fb94b4">lines</a>;</div>
<div class="line"><a id="l00999" name="l00999"></a><span class="lineno"> 999</span> </div>
<div class="line"><a id="l01000" name="l01000"></a><span class="lineno"> 1000</span> AccountCandidates candidates;</div>
<div class="line"><a id="l01001" name="l01001"></a><span class="lineno"> 1001</span> candidates.reserve(rippleLines.size());</div>
@@ -1523,9 +1523,9 @@ $(function() {
<div class="ttc" id="aclassripple_1_1Pathfinder_html_af8a674a1c373697d20ae7c4eb3dc09ce"><div class="ttname"><a href="classripple_1_1Pathfinder.html#af8a674a1c373697d20ae7c4eb3dc09ce">ripple::Pathfinder::afOB_LAST</a></div><div class="ttdeci">static std::uint32_t const afOB_LAST</div><div class="ttdef"><b>Definition:</b> <a href="Pathfinder_8h_source.html#l00233">Pathfinder.h:233</a></div></div>
<div class="ttc" id="aclassripple_1_1PaymentSandbox_html"><div class="ttname"><a href="classripple_1_1PaymentSandbox.html">ripple::PaymentSandbox</a></div><div class="ttdoc">A wrapper which makes credits unavailable to balances.</div><div class="ttdef"><b>Definition:</b> <a href="PaymentSandbox_8h_source.html#l00114">PaymentSandbox.h:115</a></div></div>
<div class="ttc" id="aclassripple_1_1STAmount_html"><div class="ttname"><a href="classripple_1_1STAmount.html">ripple::STAmount</a></div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8h_source.html#l00049">STAmount.h:50</a></div></div>
<div class="ttc" id="aclassripple_1_1STAmount_html_a5c7b5375e72e2459d4b6d65797744ca6"><div class="ttname"><a href="classripple_1_1STAmount.html#a5c7b5375e72e2459d4b6d65797744ca6">ripple::STAmount::getCurrency</a></div><div class="ttdeci">Currency const &amp; getCurrency() const</div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8h_source.html#l00493">STAmount.h:493</a></div></div>
<div class="ttc" id="aclassripple_1_1STAmount_html_aee39db45aa65eddca7002ad9bf3e7877"><div class="ttname"><a href="classripple_1_1STAmount.html#aee39db45aa65eddca7002ad9bf3e7877">ripple::STAmount::getFullText</a></div><div class="ttdeci">std::string getFullText() const override</div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8cpp_source.html#l00537">STAmount.cpp:537</a></div></div>
<div class="ttc" id="aclassripple_1_1STAmount_html_af3a02d7e9cd0b11509a90e0e6980bd64"><div class="ttname"><a href="classripple_1_1STAmount.html#af3a02d7e9cd0b11509a90e0e6980bd64">ripple::STAmount::native</a></div><div class="ttdeci">bool native() const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8h_source.html#l00449">STAmount.h:449</a></div></div>
<div class="ttc" id="aclassripple_1_1STAmount_html_a5c7b5375e72e2459d4b6d65797744ca6"><div class="ttname"><a href="classripple_1_1STAmount.html#a5c7b5375e72e2459d4b6d65797744ca6">ripple::STAmount::getCurrency</a></div><div class="ttdeci">Currency const &amp; getCurrency() const</div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8h_source.html#l00502">STAmount.h:502</a></div></div>
<div class="ttc" id="aclassripple_1_1STAmount_html_aee39db45aa65eddca7002ad9bf3e7877"><div class="ttname"><a href="classripple_1_1STAmount.html#aee39db45aa65eddca7002ad9bf3e7877">ripple::STAmount::getFullText</a></div><div class="ttdeci">std::string getFullText() const override</div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8cpp_source.html#l00540">STAmount.cpp:540</a></div></div>
<div class="ttc" id="aclassripple_1_1STAmount_html_af3a02d7e9cd0b11509a90e0e6980bd64"><div class="ttname"><a href="classripple_1_1STAmount.html#af3a02d7e9cd0b11509a90e0e6980bd64">ripple::STAmount::native</a></div><div class="ttdeci">bool native() const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8h_source.html#l00458">STAmount.h:458</a></div></div>
<div class="ttc" id="aclassripple_1_1STPathElement_html"><div class="ttname"><a href="classripple_1_1STPathElement.html">ripple::STPathElement</a></div><div class="ttdef"><b>Definition:</b> <a href="STPathSet_8h_source.html#l00035">STPathSet.h:36</a></div></div>
<div class="ttc" id="aclassripple_1_1STPathElement_html_a179714c7614d5f3b8cff5a6f934b249e"><div class="ttname"><a href="classripple_1_1STPathElement.html#a179714c7614d5f3b8cff5a6f934b249e">ripple::STPathElement::getCurrency</a></div><div class="ttdeci">Currency const &amp; getCurrency() const</div><div class="ttdef"><b>Definition:</b> <a href="STPathSet_8h_source.html#l00366">STPathSet.h:366</a></div></div>
<div class="ttc" id="aclassripple_1_1STPathElement_html_a34ec4c731897c178cebb4727f1445d8f"><div class="ttname"><a href="classripple_1_1STPathElement.html#a34ec4c731897c178cebb4727f1445d8f">ripple::STPathElement::getAccountID</a></div><div class="ttdeci">AccountID const &amp; getAccountID() const</div><div class="ttdef"><b>Definition:</b> <a href="STPathSet_8h_source.html#l00360">STPathSet.h:360</a></div></div>
@@ -1552,6 +1552,10 @@ $(function() {
<div class="ttc" id="aclassripple_1_1base__uint_html"><div class="ttname"><a href="classripple_1_1base__uint.html">ripple::base_uint&lt; 160, detail::AccountIDTag &gt;</a></div></div>
<div class="ttc" id="aclassripple_1_1base__uint_html_a6fd7dba1ad932f4c1246c9a090c145e5"><div class="ttname"><a href="classripple_1_1base__uint.html#a6fd7dba1ad932f4c1246c9a090c145e5">ripple::base_uint::isZero</a></div><div class="ttdeci">bool isZero() const</div><div class="ttdef"><b>Definition:</b> <a href="base__uint_8h_source.html#l00540">base_uint.h:540</a></div></div>
<div class="ttc" id="aclassripple_1_1path_1_1RippleCalc_html_a359d70f8c834cec541d4036f785372c9"><div class="ttname"><a href="classripple_1_1path_1_1RippleCalc.html#a359d70f8c834cec541d4036f785372c9">ripple::path::RippleCalc::rippleCalculate</a></div><div class="ttdeci">static Output rippleCalculate(PaymentSandbox &amp;view, STAmount const &amp;saMaxAmountReq, STAmount const &amp;saDstAmountReq, AccountID const &amp;uDstAccountID, AccountID const &amp;uSrcAccountID, STPathSet const &amp;spsPaths, Logs &amp;l, Input const *const pInputs=nullptr)</div><div class="ttdef"><b>Definition:</b> <a href="RippleCalc_8cpp_source.html#l00032">RippleCalc.cpp:32</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1owner__count_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1owner__count.html">ripple::test::jtx::owner_count</a></div><div class="ttdef"><b>Definition:</b> <a href="owners_8h_source.html#l00052">owners.h:53</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1path_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1path.html">ripple::test::jtx::path</a></div><div class="ttdoc">Add a path.</div><div class="ttdef"><b>Definition:</b> <a href="paths_8h_source.html#l00057">paths.h:58</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1paths_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1paths.html">ripple::test::jtx::paths</a></div><div class="ttdoc">Set Paths, SendMax on a JTx.</div><div class="ttdef"><b>Definition:</b> <a href="paths_8h_source.html#l00034">paths.h:35</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1qualityOut_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1qualityOut.html">ripple::test::jtx::qualityOut</a></div><div class="ttdoc">Sets the literal QualityOut on a trust JTx.</div><div class="ttdef"><b>Definition:</b> <a href="quality_8h_source.html#l00058">quality.h:59</a></div></div>
<div class="ttc" id="aclear_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/clear.html">std::vector::clear</a></div><div class="ttdeci">T clear(T... args)</div></div>
<div class="ttc" id="aempty_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/empty.html">std::vector::empty</a></div><div class="ttdeci">T empty(T... args)</div></div>
<div class="ttc" id="aend_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/end.html">std::vector::end</a></div><div class="ttdeci">T end(T... args)</div></div>
@@ -1559,8 +1563,9 @@ $(function() {
<div class="ttc" id="afunction_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/functional/function.html">std::function</a></div></div>
<div class="ttc" id="ainteger_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint32_t</a></div></div>
<div class="ttc" id="amap_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/map.html">std::map</a></div></div>
<div class="ttc" id="anamespaceripple_1_1keylet_html_a55890af7192834c632299746ba300be8"><div class="ttname"><a href="namespaceripple_1_1keylet.html#a55890af7192834c632299746ba300be8">ripple::keylet::line</a></div><div class="ttdeci">Keylet line(AccountID const &amp;id0, AccountID const &amp;id1, Currency const &amp;currency) noexcept</div><div class="ttdoc">The index of a trust line for a given currency.</div><div class="ttdef"><b>Definition:</b> <a href="Indexes_8cpp_source.html#l00236">Indexes.cpp:236</a></div></div>
<div class="ttc" id="anamespaceripple_1_1keylet_html_aa756e0f59b26042ed00a4d0ba6e96951"><div class="ttname"><a href="namespaceripple_1_1keylet.html#aa756e0f59b26042ed00a4d0ba6e96951">ripple::keylet::account</a></div><div class="ttdeci">Keylet account(AccountID const &amp;id) noexcept</div><div class="ttdoc">AccountID root.</div><div class="ttdef"><b>Definition:</b> <a href="Indexes_8cpp_source.html#l00176">Indexes.cpp:176</a></div></div>
<div class="ttc" id="anamespaceripple_1_1keylet_html_a55890af7192834c632299746ba300be8"><div class="ttname"><a href="namespaceripple_1_1keylet.html#a55890af7192834c632299746ba300be8">ripple::keylet::line</a></div><div class="ttdeci">Keylet line(AccountID const &amp;id0, AccountID const &amp;id1, Currency const &amp;currency) noexcept</div><div class="ttdoc">The index of a trust line for a given currency.</div><div class="ttdef"><b>Definition:</b> <a href="Indexes_8cpp_source.html#l00237">Indexes.cpp:237</a></div></div>
<div class="ttc" id="anamespaceripple_1_1keylet_html_aa756e0f59b26042ed00a4d0ba6e96951"><div class="ttname"><a href="namespaceripple_1_1keylet.html#aa756e0f59b26042ed00a4d0ba6e96951">ripple::keylet::account</a></div><div class="ttdeci">Keylet account(AccountID const &amp;id) noexcept</div><div class="ttdoc">AccountID root.</div><div class="ttdef"><b>Definition:</b> <a href="Indexes_8cpp_source.html#l00177">Indexes.cpp:177</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_a07a4f5b92ce36a9cbf86ab7845fb94b4"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#a07a4f5b92ce36a9cbf86ab7845fb94b4">ripple::test::jtx::lines</a></div><div class="ttdeci">owner_count&lt; ltRIPPLE_STATE &gt; lines</div><div class="ttdoc">Match the number of trust lines in the account's owner directory.</div><div class="ttdef"><b>Definition:</b> <a href="owners_8h_source.html#l00089">owners.h:89</a></div></div>
<div class="ttc" id="anamespaceripple_html"><div class="ttname"><a href="namespaceripple.html">ripple</a></div><div class="ttdoc">Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.</div><div class="ttdef"><b>Definition:</b> <a href="algorithm_8h_source.html#l00026">algorithm.h:26</a></div></div>
<div class="ttc" id="anamespaceripple_html_a00ae0d729cb3e35b6bcac9a27ebb5284"><div class="ttname"><a href="namespaceripple.html#a00ae0d729cb3e35b6bcac9a27ebb5284">ripple::AccountID</a></div><div class="ttdeci">base_uint&lt; 160, detail::AccountIDTag &gt; AccountID</div><div class="ttdoc">A 160-bit unsigned that uniquely identifies an account.</div><div class="ttdef"><b>Definition:</b> <a href="AccountID_8h_source.html#l00049">AccountID.h:49</a></div></div>
<div class="ttc" id="anamespaceripple_html_a0ad557cc32ca87dcea19af8e30c63c6a"><div class="ttname"><a href="namespaceripple.html#a0ad557cc32ca87dcea19af8e30c63c6a">ripple::divide</a></div><div class="ttdeci">STAmount divide(STAmount const &amp;amount, Rate const &amp;rate)</div><div class="ttdef"><b>Definition:</b> <a href="Rate2_8cpp_source.html#l00093">Rate2.cpp:93</a></div></div>
@@ -1573,13 +1578,13 @@ $(function() {
<div class="ttc" id="anamespaceripple_html_a4a9c7b33fef9015d6406302ef80b63c5a503af0c7122f0c0f33e7ea4b7deee1d3"><div class="ttname"><a href="namespaceripple.html#a4a9c7b33fef9015d6406302ef80b63c5a503af0c7122f0c0f33e7ea4b7deee1d3">ripple::lsfLowNoRipple</a></div><div class="ttdeci">@ lsfLowNoRipple</div><div class="ttdef"><b>Definition:</b> <a href="LedgerFormats_8h_source.html#l00161">LedgerFormats.h:161</a></div></div>
<div class="ttc" id="anamespaceripple_html_a4a9c7b33fef9015d6406302ef80b63c5abe8166dd29a1d6890b51ce96af297f70"><div class="ttname"><a href="namespaceripple.html#a4a9c7b33fef9015d6406302ef80b63c5abe8166dd29a1d6890b51ce96af297f70">ripple::lsfGlobalFreeze</a></div><div class="ttdeci">@ lsfGlobalFreeze</div><div class="ttdef"><b>Definition:</b> <a href="LedgerFormats_8h_source.html#l00133">LedgerFormats.h:133</a></div></div>
<div class="ttc" id="anamespaceripple_html_a64db4e9a01a15836948b70c1689ef2ca"><div class="ttname"><a href="namespaceripple.html#a64db4e9a01a15836948b70c1689ef2ca">ripple::isDefaultPath</a></div><div class="ttdeci">static bool isDefaultPath(STPath const &amp;path)</div><div class="ttdef"><b>Definition:</b> <a href="Pathfinder_8cpp_source.html#l00458">Pathfinder.cpp:458</a></div></div>
<div class="ttc" id="anamespaceripple_html_a73cc988e7ba5d5ee0fd9db53740917ec"><div class="ttname"><a href="namespaceripple.html#a73cc988e7ba5d5ee0fd9db53740917ec">ripple::getRate</a></div><div class="ttdeci">std::uint64_t getRate(STAmount const &amp;offerOut, STAmount const &amp;offerIn)</div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8cpp_source.html#l00483">STAmount.cpp:483</a></div></div>
<div class="ttc" id="anamespaceripple_html_a73cc988e7ba5d5ee0fd9db53740917ec"><div class="ttname"><a href="namespaceripple.html#a73cc988e7ba5d5ee0fd9db53740917ec">ripple::getRate</a></div><div class="ttdeci">std::uint64_t getRate(STAmount const &amp;offerOut, STAmount const &amp;offerIn)</div><div class="ttdef"><b>Definition:</b> <a href="STAmount_8cpp_source.html#l00486">STAmount.cpp:486</a></div></div>
<div class="ttc" id="anamespaceripple_html_a75cb21d7f1df42f2fdc8efddb79b63f4a86b406cfcbffc042f65ac0c78079adbb"><div class="ttname"><a href="namespaceripple.html#a75cb21d7f1df42f2fdc8efddb79b63f4a86b406cfcbffc042f65ac0c78079adbb">ripple::tefEXCEPTION</a></div><div class="ttdeci">@ tefEXCEPTION</div><div class="ttdef"><b>Definition:</b> <a href="TER_8h_source.html#l00172">TER.h:172</a></div></div>
<div class="ttc" id="anamespaceripple_html_a7cc64e12723fbc9606d85442a2569fedac68271a63ddbc431c307beb7d2918275"><div class="ttname"><a href="namespaceripple.html#a7cc64e12723fbc9606d85442a2569fedac68271a63ddbc431c307beb7d2918275">ripple::QualityDirection::out</a></div><div class="ttdeci">@ out</div></div>
<div class="ttc" id="anamespaceripple_html_a85965961aa46753332a4369d6538a169"><div class="ttname"><a href="namespaceripple.html#a85965961aa46753332a4369d6538a169">ripple::removeIssuer</a></div><div class="ttdeci">static STPath removeIssuer(STPath const &amp;path)</div><div class="ttdef"><b>Definition:</b> <a href="Pathfinder_8cpp_source.html#l00477">Pathfinder.cpp:477</a></div></div>
<div class="ttc" id="anamespaceripple_html_a875ae996b37ed036597d70628ae053e3"><div class="ttname"><a href="namespaceripple.html#a875ae996b37ed036597d70628ae053e3">ripple::transToken</a></div><div class="ttdeci">std::string transToken(TER code)</div><div class="ttdef"><b>Definition:</b> <a href="TER_8cpp_source.html#l00257">TER.cpp:257</a></div></div>
<div class="ttc" id="anamespaceripple_html_a875ae996b37ed036597d70628ae053e3"><div class="ttname"><a href="namespaceripple.html#a875ae996b37ed036597d70628ae053e3">ripple::transToken</a></div><div class="ttdeci">std::string transToken(TER code)</div><div class="ttdef"><b>Definition:</b> <a href="TER_8cpp_source.html#l00261">TER.cpp:261</a></div></div>
<div class="ttc" id="anamespaceripple_html_a91af9326e7f471001066b6b59f24599c"><div class="ttname"><a href="namespaceripple.html#a91af9326e7f471001066b6b59f24599c">ripple::xrpCurrency</a></div><div class="ttdeci">Currency const &amp; xrpCurrency()</div><div class="ttdoc">XRP currency.</div><div class="ttdef"><b>Definition:</b> <a href="UintTypes_8cpp_source.html#l00119">UintTypes.cpp:119</a></div></div>
<div class="ttc" id="anamespaceripple_html_aabc7f150d5082c73116a1cd5962b434da28c7d8b3ed759d363503a05fcd59f151"><div class="ttname"><a href="namespaceripple.html#aabc7f150d5082c73116a1cd5962b434da28c7d8b3ed759d363503a05fcd59f151">ripple::tesSUCCESS</a></div><div class="ttdeci">@ tesSUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="TER_8h_source.html#l00243">TER.h:242</a></div></div>
<div class="ttc" id="anamespaceripple_html_aabc7f150d5082c73116a1cd5962b434da28c7d8b3ed759d363503a05fcd59f151"><div class="ttname"><a href="namespaceripple.html#aabc7f150d5082c73116a1cd5962b434da28c7d8b3ed759d363503a05fcd59f151">ripple::tesSUCCESS</a></div><div class="ttdeci">@ tesSUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="TER_8h_source.html#l00245">TER.h:244</a></div></div>
<div class="ttc" id="anamespaceripple_html_ac124fe6744b7fe887dec949b56b16d50"><div class="ttname"><a href="namespaceripple.html#ac124fe6744b7fe887dec949b56b16d50">ripple::to_string</a></div><div class="ttdeci">std::string to_string(base_uint&lt; Bits, Tag &gt; const &amp;a)</div><div class="ttdef"><b>Definition:</b> <a href="base__uint_8h_source.html#l00630">base_uint.h:630</a></div></div>
<div class="ttc" id="anamespaceripple_html_acc022dd1f2122859acff200e4f2cb0f0"><div class="ttname"><a href="namespaceripple.html#acc022dd1f2122859acff200e4f2cb0f0">ripple::largestAmount</a></div><div class="ttdeci">STAmount largestAmount(STAmount const &amp;amt)</div><div class="ttdef"><b>Definition:</b> <a href="PathfinderUtils_8h_source.html#l00028">PathfinderUtils.h:28</a></div></div>
<div class="ttc" id="anamespaceripple_html_ad2487abbcc1a5d6064b72144b461df6eaf77cbea9706ce2ee7fdf5a85efbf70c5"><div class="ttname"><a href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6eaf77cbea9706ce2ee7fdf5a85efbf70c5">ripple::tapNONE</a></div><div class="ttdeci">@ tapNONE</div><div class="ttdef"><b>Definition:</b> <a href="ApplyView_8h_source.html#l00032">ApplyView.h:32</a></div></div>