This commit is contained in:
bthomee
2025-05-29 21:00:28 +00:00
parent 5243cbe582
commit e0ff9ab743
567 changed files with 23898 additions and 24756 deletions

View File

@@ -282,7 +282,7 @@ $(function() {
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span><a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a></div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"><a class="line" href="classripple_1_1CreateOffer.html#a427d7e54e0525a05fb2d613fdd0b15d5"> 205</a></span><a class="code hl_function" href="classripple_1_1CreateOffer.html#a427d7e54e0525a05fb2d613fdd0b15d5">CreateOffer::checkAcceptAsset</a>(</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> <a class="code hl_class" href="classripple_1_1ReadView.html">ReadView</a> <span class="keyword">const</span>&amp; view,</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> <span class="keyword">const</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1flags.html">flags</a>,</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <a class="code hl_enumeration" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6e">ApplyFlags</a> <span class="keyword">const</span> flags,</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <a class="code hl_class" href="classripple_1_1base__uint.html">AccountID</a> <span class="keyword">const</span> <span class="keywordtype">id</span>,</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> <a class="code hl_class" href="classbeast_1_1Journal.html">beast::Journal</a> <span class="keyword">const</span> j,</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> <a class="code hl_class" href="classripple_1_1Issue.html">Issue</a> <span class="keyword">const</span>&amp; issue)</div>
@@ -300,7 +300,7 @@ $(function() {
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> &lt;&lt; <span class="stringliteral">&quot;delay: can&#39;t receive IOUs from non-existent issuer: &quot;</span></div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> &lt;&lt; <a class="code hl_function" href="namespaceripple.html#ac124fe6744b7fe887dec949b56b16d50">to_string</a>(issue.<a class="code hl_variable" href="classripple_1_1Issue.html#a46e4805870b1bad6a8691bed0b8acec8">account</a>);</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> </div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">return</span> (<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1flags.html">flags</a> &amp; <a class="code hl_enumvalue" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6ead993a03ae0b72db5c62a616b69eaccff">tapRETRY</a>) ? <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#adebe4d783be9c979e67fdbb2bc27162faa7ab9460c6755719dd1a4e74b83f34c4">terNO_ACCOUNT</a>} : <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#aa298e929e02f59c2b05a30ee8805b38ca33d363e51ee15c8bd4f5d7c4e4518def">tecNO_ISSUER</a>};</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">return</span> (flags &amp; <a class="code hl_enumvalue" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6ead993a03ae0b72db5c62a616b69eaccff">tapRETRY</a>) ? <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#adebe4d783be9c979e67fdbb2bc27162faa7ab9460c6755719dd1a4e74b83f34c4">terNO_ACCOUNT</a>} : <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#aa298e929e02f59c2b05a30ee8805b38ca33d363e51ee15c8bd4f5d7c4e4518def">tecNO_ISSUER</a>};</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> }</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> </div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> <span class="comment">// This code is attached to the DepositPreauth amendment as a matter of</span></div>
@@ -317,7 +317,7 @@ $(function() {
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> </div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> <span class="keywordflow">if</span> (!trustLine)</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> {</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">return</span> (<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1flags.html">flags</a> &amp; <a class="code hl_enumvalue" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6ead993a03ae0b72db5c62a616b69eaccff">tapRETRY</a>) ? <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#adebe4d783be9c979e67fdbb2bc27162fae9a023686bac48d78ee1d9d7aaa95b5f">terNO_LINE</a>} : <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#aa298e929e02f59c2b05a30ee8805b38cac480d742e7760c48047bb3ccc50a40ef">tecNO_LINE</a>};</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">return</span> (flags &amp; <a class="code hl_enumvalue" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6ead993a03ae0b72db5c62a616b69eaccff">tapRETRY</a>) ? <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#adebe4d783be9c979e67fdbb2bc27162fae9a023686bac48d78ee1d9d7aaa95b5f">terNO_LINE</a>} : <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#aa298e929e02f59c2b05a30ee8805b38cac480d742e7760c48047bb3ccc50a40ef">tecNO_LINE</a>};</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> }</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> </div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> <span class="comment">// Entries have a canonical representation, determined by a</span></div>
@@ -333,7 +333,7 @@ $(function() {
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> JLOG(j.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>())</div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> &lt;&lt; <span class="stringliteral">&quot;delay: can&#39;t receive IOUs from issuer without auth.&quot;</span>;</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> </div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">return</span> (<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1flags.html">flags</a> &amp; <a class="code hl_enumvalue" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6ead993a03ae0b72db5c62a616b69eaccff">tapRETRY</a>) ? <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#adebe4d783be9c979e67fdbb2bc27162faccec22dfce11ac7d31150921b257ee80">terNO_AUTH</a>} : <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#aa298e929e02f59c2b05a30ee8805b38caf5820ac855eaa9dfcd635cd411019a31">tecNO_AUTH</a>};</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">return</span> (flags &amp; <a class="code hl_enumvalue" href="namespaceripple.html#ad2487abbcc1a5d6064b72144b461df6ead993a03ae0b72db5c62a616b69eaccff">tapRETRY</a>) ? <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#adebe4d783be9c979e67fdbb2bc27162faccec22dfce11ac7d31150921b257ee80">terNO_AUTH</a>} : <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#aa298e929e02f59c2b05a30ee8805b38caf5820ac855eaa9dfcd635cd411019a31">tecNO_AUTH</a>};</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> }</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> }</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> </div>
@@ -367,14 +367,14 @@ $(function() {
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span>}</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> </div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span><span class="keywordtype">bool</span></div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"><a class="line" href="classripple_1_1CreateOffer.html#a53e105fe991761ad6d3c0e3ef425df2f"> 292</a></span><a class="code hl_function" href="classripple_1_1CreateOffer.html#a53e105fe991761ad6d3c0e3ef425df2f">CreateOffer::dry_offer</a>(<a class="code hl_class" href="classripple_1_1ApplyView.html">ApplyView</a>&amp; view, <a class="code hl_class" href="classripple_1_1TOffer.html">Offer</a> <span class="keyword">const</span>&amp; <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>)</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"><a class="line" href="classripple_1_1CreateOffer.html#a53e105fe991761ad6d3c0e3ef425df2f"> 292</a></span><a class="code hl_function" href="classripple_1_1CreateOffer.html#a53e105fe991761ad6d3c0e3ef425df2f">CreateOffer::dry_offer</a>(<a class="code hl_class" href="classripple_1_1ApplyView.html">ApplyView</a>&amp; view, <a class="code hl_class" href="classripple_1_1TOffer.html">Offer</a> <span class="keyword">const</span>&amp; offer)</div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span>{</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.fully_consumed())</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">if</span> (offer.fully_consumed())</div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> <span class="keyword">auto</span> <span class="keyword">const</span> amount = <a class="code hl_function" href="namespaceripple.html#a15bb971c7e554fc3df218aba54c33fcc">accountFunds</a>(</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> <a class="code hl_function" href="classripple_1_1Transactor.html#a9acc4edc9b8f2a11a27fbcf5e93e2fe2">view</a>,</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.owner(),</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.amount().out,</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> offer.owner(),</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> offer.amount().out,</div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> <a class="code hl_enumvalue" href="namespaceripple.html#a17a9a9b903b66e49f5413d82ce79f085a852cabbbe21a9b4d63aff777eceab2fd">fhZERO_IF_FROZEN</a>,</div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> <a class="code hl_variable" href="classripple_1_1Transactor.html#aef4ef0a89b5595b2a688b89e4ecef833">ctx_</a>.<a class="code hl_variable" href="classripple_1_1ApplyContext.html#a6ec1f10e560afe30ed435c3f7eea715d">app</a>.<a class="code hl_function" href="classripple_1_1Application.html#a2897c28a5b5040e80e66f676d201d03f">journal</a>(<span class="stringliteral">&quot;View&quot;</span>));</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">return</span> (amount &lt;= beast::zero);</div>
@@ -626,7 +626,7 @@ $(function() {
<div class="line"><a id="l00548" name="l00548"></a><span class="lineno"> 548</span> <a class="code hl_class" href="classripple_1_1ApplyView.html">ApplyView</a>&amp; view_cancel,</div>
<div class="line"><a id="l00549" name="l00549"></a><span class="lineno"> 549</span> <a class="code hl_classRef" href="http://en.cppreference.com/w/cpp/chrono/time_point.html">NetClock::time_point</a> <span class="keyword">const</span> when)</div>
<div class="line"><a id="l00550" name="l00550"></a><span class="lineno"> 550</span>{</div>
<div class="line"><a id="l00551" name="l00551"></a><span class="lineno"> 551</span> <a class="code hl_class" href="classripple_1_1OfferStream.html">OfferStream</a> <a class="code hl_typedef" href="namespaceripple_1_1test_1_1jtx.html#a3beb715a43d7e5bc771c333529bbf92d">offers</a>(</div>
<div class="line"><a id="l00551" name="l00551"></a><span class="lineno"> 551</span> <a class="code hl_class" href="classripple_1_1OfferStream.html">OfferStream</a> offers(</div>
<div class="line"><a id="l00552" name="l00552"></a><span class="lineno"> 552</span> <a class="code hl_function" href="classripple_1_1Transactor.html#a9acc4edc9b8f2a11a27fbcf5e93e2fe2">view</a>,</div>
<div class="line"><a id="l00553" name="l00553"></a><span class="lineno"> 553</span> view_cancel,</div>
<div class="line"><a id="l00554" name="l00554"></a><span class="lineno"> 554</span> <a class="code hl_class" href="classripple_1_1Book.html">Book</a>(taker.<a class="code hl_function" href="classripple_1_1BasicTaker.html#a8cfcca586da009390055e62b7d50043c">issue_in</a>(), taker.<a class="code hl_function" href="classripple_1_1BasicTaker.html#ac421e3b94f9dc82b1d14c08e2b84ed38">issue_out</a>()),</div>
@@ -637,17 +637,17 @@ $(function() {
<div class="line"><a id="l00559" name="l00559"></a><span class="lineno"> 559</span> <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a> cross_result(<a class="code hl_enumvalue" href="namespaceripple.html#aabc7f150d5082c73116a1cd5962b434da28c7d8b3ed759d363503a05fcd59f151">tesSUCCESS</a>);</div>
<div class="line"><a id="l00560" name="l00560"></a><span class="lineno"> 560</span> <span class="keywordtype">int</span> count = 0;</div>
<div class="line"><a id="l00561" name="l00561"></a><span class="lineno"> 561</span> </div>
<div class="line"><a id="l00562" name="l00562"></a><span class="lineno"> 562</span> <span class="keywordtype">bool</span> have_offer = <a class="code hl_function" href="classripple_1_1CreateOffer.html#a5a340c368e8f8f249cea61a54e06ed44">step_account</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1owner__count.html">offers</a>, taker);</div>
<div class="line"><a id="l00562" name="l00562"></a><span class="lineno"> 562</span> <span class="keywordtype">bool</span> have_offer = <a class="code hl_function" href="classripple_1_1CreateOffer.html#a5a340c368e8f8f249cea61a54e06ed44">step_account</a>(offers, taker);</div>
<div class="line"><a id="l00563" name="l00563"></a><span class="lineno"> 563</span> </div>
<div class="line"><a id="l00564" name="l00564"></a><span class="lineno"> 564</span> <span class="comment">// Modifying the order or logic of the operations in the loop will cause</span></div>
<div class="line"><a id="l00565" name="l00565"></a><span class="lineno"> 565</span> <span class="comment">// a protocol breaking change.</span></div>
<div class="line"><a id="l00566" name="l00566"></a><span class="lineno"> 566</span> <span class="keywordflow">while</span> (have_offer)</div>
<div class="line"><a id="l00567" name="l00567"></a><span class="lineno"> 567</span> {</div>
<div class="line"><a id="l00568" name="l00568"></a><span class="lineno"> 568</span> <span class="keywordtype">bool</span> direct_consumed = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00569" name="l00569"></a><span class="lineno"> 569</span> <span class="keyword">auto</span>&amp; <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1owner__count.html">offers</a>.tip());</div>
<div class="line"><a id="l00569" name="l00569"></a><span class="lineno"> 569</span> <span class="keyword">auto</span>&amp; offer(offers.tip());</div>
<div class="line"><a id="l00570" name="l00570"></a><span class="lineno"> 570</span> </div>
<div class="line"><a id="l00571" name="l00571"></a><span class="lineno"> 571</span> <span class="comment">// We are done with crossing as soon as we cross the quality boundary</span></div>
<div class="line"><a id="l00572" name="l00572"></a><span class="lineno"> 572</span> <span class="keywordflow">if</span> (taker.<a class="code hl_function" href="classripple_1_1BasicTaker.html#a767e75e4d5d6181a3419d0df1b1bebc9">reject</a>(<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.quality()))</div>
<div class="line"><a id="l00572" name="l00572"></a><span class="lineno"> 572</span> <span class="keywordflow">if</span> (taker.<a class="code hl_function" href="classripple_1_1BasicTaker.html#a767e75e4d5d6181a3419d0df1b1bebc9">reject</a>(offer.quality()))</div>
<div class="line"><a id="l00573" name="l00573"></a><span class="lineno"> 573</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00574" name="l00574"></a><span class="lineno"> 574</span> </div>
<div class="line"><a id="l00575" name="l00575"></a><span class="lineno"> 575</span> count++;</div>
@@ -655,28 +655,28 @@ $(function() {
<div class="line"><a id="l00577" name="l00577"></a><span class="lineno"> 577</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> stream = <a class="code hl_variable" href="classripple_1_1Transactor.html#ab84d1ef5275a1c6c63176c11d72d6235">j_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>())</div>
<div class="line"><a id="l00578" name="l00578"></a><span class="lineno"> 578</span> {</div>
<div class="line"><a id="l00579" name="l00579"></a><span class="lineno"> 579</span> stream &lt;&lt; count &lt;&lt; <span class="stringliteral">&quot; Direct:&quot;</span>;</div>
<div class="line"><a id="l00580" name="l00580"></a><span class="lineno"> 580</span> stream &lt;&lt; <span class="stringliteral">&quot; offer: &quot;</span> &lt;&lt; <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>;</div>
<div class="line"><a id="l00581" name="l00581"></a><span class="lineno"> 581</span> stream &lt;&lt; <span class="stringliteral">&quot; in: &quot;</span> &lt;&lt; <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.amount().in;</div>
<div class="line"><a id="l00582" name="l00582"></a><span class="lineno"> 582</span> stream &lt;&lt; <span class="stringliteral">&quot; out: &quot;</span> &lt;&lt; <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.amount().out;</div>
<div class="line"><a id="l00583" name="l00583"></a><span class="lineno"> 583</span> stream &lt;&lt; <span class="stringliteral">&quot;quality: &quot;</span> &lt;&lt; <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.quality();</div>
<div class="line"><a id="l00584" name="l00584"></a><span class="lineno"> 584</span> stream &lt;&lt; <span class="stringliteral">&quot; owner: &quot;</span> &lt;&lt; <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.owner();</div>
<div class="line"><a id="l00580" name="l00580"></a><span class="lineno"> 580</span> stream &lt;&lt; <span class="stringliteral">&quot; offer: &quot;</span> &lt;&lt; offer;</div>
<div class="line"><a id="l00581" name="l00581"></a><span class="lineno"> 581</span> stream &lt;&lt; <span class="stringliteral">&quot; in: &quot;</span> &lt;&lt; offer.amount().in;</div>
<div class="line"><a id="l00582" name="l00582"></a><span class="lineno"> 582</span> stream &lt;&lt; <span class="stringliteral">&quot; out: &quot;</span> &lt;&lt; offer.amount().out;</div>
<div class="line"><a id="l00583" name="l00583"></a><span class="lineno"> 583</span> stream &lt;&lt; <span class="stringliteral">&quot;quality: &quot;</span> &lt;&lt; offer.quality();</div>
<div class="line"><a id="l00584" name="l00584"></a><span class="lineno"> 584</span> stream &lt;&lt; <span class="stringliteral">&quot; owner: &quot;</span> &lt;&lt; offer.owner();</div>
<div class="line"><a id="l00585" name="l00585"></a><span class="lineno"> 585</span> stream &lt;&lt; <span class="stringliteral">&quot; funds: &quot;</span></div>
<div class="line"><a id="l00586" name="l00586"></a><span class="lineno"> 586</span> &lt;&lt; <a class="code hl_function" href="namespaceripple.html#a15bb971c7e554fc3df218aba54c33fcc">accountFunds</a>(</div>
<div class="line"><a id="l00587" name="l00587"></a><span class="lineno"> 587</span> <a class="code hl_function" href="classripple_1_1Transactor.html#a9acc4edc9b8f2a11a27fbcf5e93e2fe2">view</a>,</div>
<div class="line"><a id="l00588" name="l00588"></a><span class="lineno"> 588</span> <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.owner(),</div>
<div class="line"><a id="l00589" name="l00589"></a><span class="lineno"> 589</span> <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.amount().out,</div>
<div class="line"><a id="l00588" name="l00588"></a><span class="lineno"> 588</span> offer.owner(),</div>
<div class="line"><a id="l00589" name="l00589"></a><span class="lineno"> 589</span> offer.amount().out,</div>
<div class="line"><a id="l00590" name="l00590"></a><span class="lineno"> 590</span> <a class="code hl_enumvalue" href="namespaceripple.html#a17a9a9b903b66e49f5413d82ce79f085a91e3c4f8089025c7ecf66dd62b822d90">fhIGNORE_FREEZE</a>,</div>
<div class="line"><a id="l00591" name="l00591"></a><span class="lineno"> 591</span> <a class="code hl_variable" href="classripple_1_1Transactor.html#aef4ef0a89b5595b2a688b89e4ecef833">ctx_</a>.<a class="code hl_variable" href="classripple_1_1ApplyContext.html#a6ec1f10e560afe30ed435c3f7eea715d">app</a>.<a class="code hl_function" href="classripple_1_1Application.html#a2897c28a5b5040e80e66f676d201d03f">journal</a>(<span class="stringliteral">&quot;View&quot;</span>));</div>
<div class="line"><a id="l00592" name="l00592"></a><span class="lineno"> 592</span> }</div>
<div class="line"><a id="l00593" name="l00593"></a><span class="lineno"> 593</span> </div>
<div class="line"><a id="l00594" name="l00594"></a><span class="lineno"> 594</span> cross_result = taker.<a class="code hl_function" href="classripple_1_1Taker.html#af26b903ac38bb50fbc47ab49ed2d2ad3">cross</a>(<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>);</div>
<div class="line"><a id="l00594" name="l00594"></a><span class="lineno"> 594</span> cross_result = taker.<a class="code hl_function" href="classripple_1_1Taker.html#af26b903ac38bb50fbc47ab49ed2d2ad3">cross</a>(offer);</div>
<div class="line"><a id="l00595" name="l00595"></a><span class="lineno"> 595</span> </div>
<div class="line"><a id="l00596" name="l00596"></a><span class="lineno"> 596</span> JLOG(<a class="code hl_variable" href="classripple_1_1Transactor.html#ab84d1ef5275a1c6c63176c11d72d6235">j_</a>.<a class="code hl_function" href="classbeast_1_1Journal.html#a556228cb60bcf405c225d3f64b7b01ae">debug</a>()) &lt;&lt; <span class="stringliteral">&quot;Direct Result: &quot;</span> &lt;&lt; <a class="code hl_function" href="namespaceripple.html#a875ae996b37ed036597d70628ae053e3">transToken</a>(cross_result);</div>
<div class="line"><a id="l00597" name="l00597"></a><span class="lineno"> 597</span> </div>
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno"> 598</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="classripple_1_1CreateOffer.html#a53e105fe991761ad6d3c0e3ef425df2f">dry_offer</a>(<a class="code hl_function" href="classripple_1_1Transactor.html#a9acc4edc9b8f2a11a27fbcf5e93e2fe2">view</a>, <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>))</div>
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno"> 598</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="classripple_1_1CreateOffer.html#a53e105fe991761ad6d3c0e3ef425df2f">dry_offer</a>(<a class="code hl_function" href="classripple_1_1Transactor.html#a9acc4edc9b8f2a11a27fbcf5e93e2fe2">view</a>, offer))</div>
<div class="line"><a id="l00599" name="l00599"></a><span class="lineno"> 599</span> {</div>
<div class="line"><a id="l00600" name="l00600"></a><span class="lineno"> 600</span> direct_consumed = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00601" name="l00601"></a><span class="lineno"> 601</span> have_offer = <a class="code hl_function" href="classripple_1_1CreateOffer.html#a5a340c368e8f8f249cea61a54e06ed44">step_account</a>(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1owner__count.html">offers</a>, taker);</div>
<div class="line"><a id="l00601" name="l00601"></a><span class="lineno"> 601</span> have_offer = <a class="code hl_function" href="classripple_1_1CreateOffer.html#a5a340c368e8f8f249cea61a54e06ed44">step_account</a>(offers, taker);</div>
<div class="line"><a id="l00602" name="l00602"></a><span class="lineno"> 602</span> }</div>
<div class="line"><a id="l00603" name="l00603"></a><span class="lineno"> 603</span> </div>
<div class="line"><a id="l00604" name="l00604"></a><span class="lineno"> 604</span> <span class="keywordflow">if</span> (cross_result != <a class="code hl_enumvalue" href="namespaceripple.html#aabc7f150d5082c73116a1cd5962b434da28c7d8b3ed759d363503a05fcd59f151">tesSUCCESS</a>)</div>
@@ -719,14 +719,14 @@ $(function() {
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"> 641</span>{</div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno"> 642</span> <span class="keywordflow">while</span> (stream.step())</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="keyword">auto</span> <span class="keyword">const</span>&amp; <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a> = stream.tip();</div>
<div class="line"><a id="l00644" name="l00644"></a><span class="lineno"> 644</span> <span class="keyword">auto</span> <span class="keyword">const</span>&amp; offer = stream.tip();</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> <span class="comment">// This offer at the tip crosses the taker&#39;s threshold. We&#39;re done.</span></div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"> 647</span> <span class="keywordflow">if</span> (taker.<a class="code hl_function" href="classripple_1_1BasicTaker.html#a767e75e4d5d6181a3419d0df1b1bebc9">reject</a>(<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.quality()))</div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"> 647</span> <span class="keywordflow">if</span> (taker.<a class="code hl_function" href="classripple_1_1BasicTaker.html#a767e75e4d5d6181a3419d0df1b1bebc9">reject</a>(offer.quality()))</div>
<div class="line"><a id="l00648" name="l00648"></a><span class="lineno"> 648</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00649" name="l00649"></a><span class="lineno"> 649</span> </div>
<div class="line"><a id="l00650" name="l00650"></a><span class="lineno"> 650</span> <span class="comment">// This offer at the tip is not from the taker. We&#39;re done.</span></div>
<div class="line"><a id="l00651" name="l00651"></a><span class="lineno"> 651</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>.owner() != taker.<a class="code hl_function" href="classripple_1_1BasicTaker.html#a6faffe73a86a480d9c3be5fa7d9b8c01">account</a>())</div>
<div class="line"><a id="l00651" name="l00651"></a><span class="lineno"> 651</span> <span class="keywordflow">if</span> (offer.owner() != taker.<a class="code hl_function" href="classripple_1_1BasicTaker.html#a6faffe73a86a480d9c3be5fa7d9b8c01">account</a>())</div>
<div class="line"><a id="l00652" name="l00652"></a><span class="lineno"> 652</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</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> </div>
@@ -841,12 +841,12 @@ $(function() {
<div class="line"><a id="l00763" name="l00763"></a><span class="lineno"> 763</span> <span class="comment">// of the takerAmount currencies are XRP then we cross through an</span></div>
<div class="line"><a id="l00764" name="l00764"></a><span class="lineno"> 764</span> <span class="comment">// additional path with XRP as the intermediate between two books.</span></div>
<div class="line"><a id="l00765" name="l00765"></a><span class="lineno"> 765</span> <span class="comment">// This second path we have to build ourselves.</span></div>
<div class="line"><a id="l00766" name="l00766"></a><span class="lineno"> 766</span> <a class="code hl_class" href="classripple_1_1STPathSet.html">STPathSet</a> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1paths.html">paths</a>;</div>
<div class="line"><a id="l00766" name="l00766"></a><span class="lineno"> 766</span> <a class="code hl_class" href="classripple_1_1STPathSet.html">STPathSet</a> paths;</div>
<div class="line"><a id="l00767" name="l00767"></a><span class="lineno"> 767</span> <span class="keywordflow">if</span> (!takerAmount.in.native() &amp;&amp; !takerAmount.out.native())</div>
<div class="line"><a id="l00768" name="l00768"></a><span class="lineno"> 768</span> {</div>
<div class="line"><a id="l00769" name="l00769"></a><span class="lineno"> 769</span> <a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>;</div>
<div class="line"><a id="l00770" name="l00770"></a><span class="lineno"> 770</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>.emplace_back(std::nullopt, <a class="code hl_function" href="namespaceripple.html#a91af9326e7f471001066b6b59f24599c">xrpCurrency</a>(), std::nullopt);</div>
<div class="line"><a id="l00771" name="l00771"></a><span class="lineno"> 771</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1paths.html">paths</a>.emplace_back(std::move(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1path.html">path</a>));</div>
<div class="line"><a id="l00769" name="l00769"></a><span class="lineno"> 769</span> <a class="code hl_class" href="classripple_1_1STPath.html">STPath</a> path;</div>
<div class="line"><a id="l00770" name="l00770"></a><span class="lineno"> 770</span> path.emplace_back(std::nullopt, <a class="code hl_function" href="namespaceripple.html#a91af9326e7f471001066b6b59f24599c">xrpCurrency</a>(), std::nullopt);</div>
<div class="line"><a id="l00771" name="l00771"></a><span class="lineno"> 771</span> paths.<a class="code hl_function" href="classripple_1_1STPathSet.html#af48d3b97e65d1e4826d13289b1648c80">emplace_back</a>(std::move(path));</div>
<div class="line"><a id="l00772" name="l00772"></a><span class="lineno"> 772</span> }</div>
<div class="line"><a id="l00773" name="l00773"></a><span class="lineno"> 773</span> <span class="comment">// Special handling for the tfSell flag.</span></div>
<div class="line"><a id="l00774" name="l00774"></a><span class="lineno"> 774</span> <a class="code hl_class" href="classripple_1_1STAmount.html">STAmount</a> deliver = takerAmount.out;</div>
@@ -876,7 +876,7 @@ $(function() {
<div class="line"><a id="l00798" name="l00798"></a><span class="lineno"> 798</span> deliver,</div>
<div class="line"><a id="l00799" name="l00799"></a><span class="lineno"> 799</span> <a class="code hl_variable" href="classripple_1_1Transactor.html#a803c6fba463ed92ee24e4c056467f20a">account_</a>,</div>
<div class="line"><a id="l00800" name="l00800"></a><span class="lineno"> 800</span> <a class="code hl_variable" href="classripple_1_1Transactor.html#a803c6fba463ed92ee24e4c056467f20a">account_</a>,</div>
<div class="line"><a id="l00801" name="l00801"></a><span class="lineno"> 801</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1paths.html">paths</a>,</div>
<div class="line"><a id="l00801" name="l00801"></a><span class="lineno"> 801</span> paths,</div>
<div class="line"><a id="l00802" name="l00802"></a><span class="lineno"> 802</span> <span class="keyword">true</span>, <span class="comment">// default path</span></div>
<div class="line"><a id="l00803" name="l00803"></a><span class="lineno"> 803</span> !(txFlags &amp; <a class="code hl_variable" href="namespaceripple.html#a5bdaf22398ee3e51d3c2c3c694f917ec">tfFillOrKill</a>), <span class="comment">// partial payment</span></div>
<div class="line"><a id="l00804" name="l00804"></a><span class="lineno"> 804</span> <span class="keyword">true</span>, <span class="comment">// owner pays transfer fee</span></div>
@@ -910,7 +910,7 @@ $(function() {
<div class="line"><a id="l00832" name="l00832"></a><span class="lineno"> 832</span> }</div>
<div class="line"><a id="l00833" name="l00833"></a><span class="lineno"> 833</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00834" name="l00834"></a><span class="lineno"> 834</span> {</div>
<div class="line"><a id="l00835" name="l00835"></a><span class="lineno"> 835</span> <a class="code hl_class" href="classripple_1_1STAmount.html">STAmount</a> <span class="keyword">const</span> <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a>{</div>
<div class="line"><a id="l00835" name="l00835"></a><span class="lineno"> 835</span> <a class="code hl_class" href="classripple_1_1STAmount.html">STAmount</a> <span class="keyword">const</span> rate{</div>
<div class="line"><a id="l00836" name="l00836"></a><span class="lineno"> 836</span> Quality{takerAmount.out, takerAmount.in}.rate()};</div>
<div class="line"><a id="l00837" name="l00837"></a><span class="lineno"> 837</span> </div>
<div class="line"><a id="l00838" name="l00838"></a><span class="lineno"> 838</span> <span class="keywordflow">if</span> (txFlags &amp; <a class="code hl_variable" href="namespaceripple.html#ad3bc01fc1c4e0e3191802ff3192c5493">tfSell</a>)</div>
@@ -949,12 +949,12 @@ $(function() {
<div class="line"><a id="l00871" name="l00871"></a><span class="lineno"> 871</span> <span class="keywordflow">if</span> (psb.<a class="code hl_function" href="classripple_1_1detail_1_1ApplyViewBase.html#af16244cf2efd903b4575a0b85c94d159">rules</a>().<a class="code hl_function" href="classripple_1_1Rules.html#a1a8388a2b9588aa9446ece92a88e0dd2">enabled</a>(fixReducedOffersV1))</div>
<div class="line"><a id="l00872" name="l00872"></a><span class="lineno"> 872</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceripple.html#a367db2ac1e6b2c03763f8e43afa3db44">divRoundStrict</a>(</div>
<div class="line"><a id="l00873" name="l00873"></a><span class="lineno"> 873</span> afterCross.in,</div>
<div class="line"><a id="l00874" name="l00874"></a><span class="lineno"> 874</span> <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a>,</div>
<div class="line"><a id="l00874" name="l00874"></a><span class="lineno"> 874</span> rate,</div>
<div class="line"><a id="l00875" name="l00875"></a><span class="lineno"> 875</span> takerAmount.out.issue(),</div>
<div class="line"><a id="l00876" name="l00876"></a><span class="lineno"> 876</span> <span class="keyword">false</span>);</div>
<div class="line"><a id="l00877" name="l00877"></a><span class="lineno"> 877</span> </div>
<div class="line"><a id="l00878" name="l00878"></a><span class="lineno"> 878</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceripple.html#abc53dd05ffa8024fbe0101790a2b78ac">divRound</a>(</div>
<div class="line"><a id="l00879" name="l00879"></a><span class="lineno"> 879</span> afterCross.in, <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a>, takerAmount.out.issue(), <span class="keyword">true</span>);</div>
<div class="line"><a id="l00879" name="l00879"></a><span class="lineno"> 879</span> afterCross.in, rate, takerAmount.out.issue(), <span class="keyword">true</span>);</div>
<div class="line"><a id="l00880" name="l00880"></a><span class="lineno"> 880</span> }();</div>
<div class="line"><a id="l00881" name="l00881"></a><span class="lineno"> 881</span> }</div>
<div class="line"><a id="l00882" name="l00882"></a><span class="lineno"> 882</span> <span class="keywordflow">else</span></div>
@@ -969,7 +969,7 @@ $(function() {
<div class="line"><a id="l00891" name="l00891"></a><span class="lineno"> 891</span> <span class="keywordflow">if</span> (afterCross.out &lt; beast::zero)</div>
<div class="line"><a id="l00892" name="l00892"></a><span class="lineno"> 892</span> afterCross.out.clear();</div>
<div class="line"><a id="l00893" name="l00893"></a><span class="lineno"> 893</span> afterCross.in = <a class="code hl_function" href="namespaceripple.html#ac96824de7714986a7122e5551a2ba470">mulRound</a>(</div>
<div class="line"><a id="l00894" name="l00894"></a><span class="lineno"> 894</span> afterCross.out, <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a>, takerAmount.in.issue(), <span class="keyword">true</span>);</div>
<div class="line"><a id="l00894" name="l00894"></a><span class="lineno"> 894</span> afterCross.out, rate, takerAmount.in.issue(), <span class="keyword">true</span>);</div>
<div class="line"><a id="l00895" name="l00895"></a><span class="lineno"> 895</span> }</div>
<div class="line"><a id="l00896" name="l00896"></a><span class="lineno"> 896</span> }</div>
<div class="line"><a id="l00897" name="l00897"></a><span class="lineno"> 897</span> }</div>
@@ -1074,19 +1074,19 @@ $(function() {
<div class="line"><a id="l00996" name="l00996"></a><span class="lineno"> 996</span> }</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> </div>
<div class="line"><a id="l00999" name="l00999"></a><span class="lineno"> 999</span> <span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1expiration.html">expiration</a> = <a class="code hl_variable" href="classripple_1_1Transactor.html#aef4ef0a89b5595b2a688b89e4ecef833">ctx_</a>.<a class="code hl_variable" href="classripple_1_1ApplyContext.html#a8c8757b3b1f88baef47b31ed4e9682d0">tx</a>[~sfExpiration];</div>
<div class="line"><a id="l00999" name="l00999"></a><span class="lineno"> 999</span> <span class="keyword">auto</span> <span class="keyword">const</span> expiration = <a class="code hl_variable" href="classripple_1_1Transactor.html#aef4ef0a89b5595b2a688b89e4ecef833">ctx_</a>.<a class="code hl_variable" href="classripple_1_1ApplyContext.html#a8c8757b3b1f88baef47b31ed4e9682d0">tx</a>[~sfExpiration];</div>
<div class="line"><a id="l01000" name="l01000"></a><span class="lineno"> 1000</span> </div>
<div class="line"><a id="l01001" name="l01001"></a><span class="lineno"> 1001</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="namespaceripple.html#ad574e2b04fc8231900df14881418af18">hasExpired</a>(sb, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1expiration.html">expiration</a>))</div>
<div class="line"><a id="l01001" name="l01001"></a><span class="lineno"> 1001</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="namespaceripple.html#ad574e2b04fc8231900df14881418af18">hasExpired</a>(sb, expiration))</div>
<div class="line"><a id="l01002" name="l01002"></a><span class="lineno"> 1002</span> {</div>
<div class="line"><a id="l01003" name="l01003"></a><span class="lineno"> 1003</span> <span class="comment">// If the offer has expired, the transaction has successfully</span></div>
<div class="line"><a id="l01004" name="l01004"></a><span class="lineno"> 1004</span> <span class="comment">// done nothing, so short circuit from here.</span></div>
<div class="line"><a id="l01005" name="l01005"></a><span class="lineno"> 1005</span> <span class="comment">//</span></div>
<div class="line"><a id="l01006" name="l01006"></a><span class="lineno"> 1006</span> <span class="comment">// The return code change is attached to featureDepositPreauth as a</span></div>
<div class="line"><a id="l01007" name="l01007"></a><span class="lineno"> 1007</span> <span class="comment">// convenience. The change is not big enough to deserve a fix code.</span></div>
<div class="line"><a id="l01008" name="l01008"></a><span class="lineno"> 1008</span> <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a> <span class="keyword">const</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1ter.html">ter</a>{</div>
<div class="line"><a id="l01008" name="l01008"></a><span class="lineno"> 1008</span> <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a> <span class="keyword">const</span> ter{</div>
<div class="line"><a id="l01009" name="l01009"></a><span class="lineno"> 1009</span> sb.<a class="code hl_function" href="classripple_1_1detail_1_1ApplyViewBase.html#af16244cf2efd903b4575a0b85c94d159">rules</a>().<a class="code hl_function" href="classripple_1_1Rules.html#a1a8388a2b9588aa9446ece92a88e0dd2">enabled</a>(featureDepositPreauth) ? <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#aa298e929e02f59c2b05a30ee8805b38caede598f88bbd44e4df1c4e0d418c4cdc">tecEXPIRED</a>}</div>
<div class="line"><a id="l01010" name="l01010"></a><span class="lineno"> 1010</span> : <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a>{<a class="code hl_enumvalue" href="namespaceripple.html#aabc7f150d5082c73116a1cd5962b434da28c7d8b3ed759d363503a05fcd59f151">tesSUCCESS</a>}};</div>
<div class="line"><a id="l01011" name="l01011"></a><span class="lineno"> 1011</span> <span class="keywordflow">return</span> {<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1ter.html">ter</a>, <span class="keyword">true</span>};</div>
<div class="line"><a id="l01011" name="l01011"></a><span class="lineno"> 1011</span> <span class="keywordflow">return</span> {ter, <span class="keyword">true</span>};</div>
<div class="line"><a id="l01012" name="l01012"></a><span class="lineno"> 1012</span> }</div>
<div class="line"><a id="l01013" name="l01013"></a><span class="lineno"> 1013</span> </div>
<div class="line"><a id="l01014" name="l01014"></a><span class="lineno"> 1014</span> <span class="keywordtype">bool</span> <span class="keyword">const</span> bOpenLedger = sb.<a class="code hl_function" href="classripple_1_1detail_1_1ApplyViewBase.html#a4af2aa917f94d3f031d8e53c3211f9e1">open</a>();</div>
@@ -1113,7 +1113,7 @@ $(function() {
<div class="line"><a id="l01035" name="l01035"></a><span class="lineno"> 1035</span> }</div>
<div class="line"><a id="l01036" name="l01036"></a><span class="lineno"> 1036</span> <span class="keywordflow">if</span> (uTickSize &lt; Quality::maxTickSize)</div>
<div class="line"><a id="l01037" name="l01037"></a><span class="lineno"> 1037</span> {</div>
<div class="line"><a id="l01038" name="l01038"></a><span class="lineno"> 1038</span> <span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a> =</div>
<div class="line"><a id="l01038" name="l01038"></a><span class="lineno"> 1038</span> <span class="keyword">auto</span> <span class="keyword">const</span> rate =</div>
<div class="line"><a id="l01039" name="l01039"></a><span class="lineno"> 1039</span> Quality{saTakerGets, saTakerPays}.round(uTickSize).rate();</div>
<div class="line"><a id="l01040" name="l01040"></a><span class="lineno"> 1040</span> </div>
<div class="line"><a id="l01041" name="l01041"></a><span class="lineno"> 1041</span> <span class="comment">// We round the side that&#39;s not exact,</span></div>
@@ -1122,12 +1122,12 @@ $(function() {
<div class="line"><a id="l01044" name="l01044"></a><span class="lineno"> 1044</span> <span class="keywordflow">if</span> (bSell)</div>
<div class="line"><a id="l01045" name="l01045"></a><span class="lineno"> 1045</span> {</div>
<div class="line"><a id="l01046" name="l01046"></a><span class="lineno"> 1046</span> <span class="comment">// this is a sell, round taker pays</span></div>
<div class="line"><a id="l01047" name="l01047"></a><span class="lineno"> 1047</span> saTakerPays = <a class="code hl_function" href="namespaceripple.html#a5adb540ae694e45bca2ad089fff15128">multiply</a>(saTakerGets, <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a>, saTakerPays.issue());</div>
<div class="line"><a id="l01047" name="l01047"></a><span class="lineno"> 1047</span> saTakerPays = <a class="code hl_function" href="namespaceripple.html#a5adb540ae694e45bca2ad089fff15128">multiply</a>(saTakerGets, rate, saTakerPays.issue());</div>
<div class="line"><a id="l01048" name="l01048"></a><span class="lineno"> 1048</span> }</div>
<div class="line"><a id="l01049" name="l01049"></a><span class="lineno"> 1049</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l01050" name="l01050"></a><span class="lineno"> 1050</span> {</div>
<div class="line"><a id="l01051" name="l01051"></a><span class="lineno"> 1051</span> <span class="comment">// this is a buy, round taker gets</span></div>
<div class="line"><a id="l01052" name="l01052"></a><span class="lineno"> 1052</span> saTakerGets = <a class="code hl_function" href="namespaceripple.html#a0ad557cc32ca87dcea19af8e30c63c6a">divide</a>(saTakerPays, <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a>, saTakerGets.issue());</div>
<div class="line"><a id="l01052" name="l01052"></a><span class="lineno"> 1052</span> saTakerGets = <a class="code hl_function" href="namespaceripple.html#a0ad557cc32ca87dcea19af8e30c63c6a">divide</a>(saTakerPays, rate, saTakerGets.issue());</div>
<div class="line"><a id="l01053" name="l01053"></a><span class="lineno"> 1053</span> }</div>
<div class="line"><a id="l01054" name="l01054"></a><span class="lineno"> 1054</span> <span class="keywordflow">if</span> (!saTakerGets || !saTakerPays)</div>
<div class="line"><a id="l01055" name="l01055"></a><span class="lineno"> 1055</span> {</div>
@@ -1331,8 +1331,8 @@ $(function() {
<div class="line"><a id="l01253" name="l01253"></a><span class="lineno"> 1253</span> sleOffer-&gt;setFieldAmount(sfTakerGets, saTakerGets);</div>
<div class="line"><a id="l01254" name="l01254"></a><span class="lineno"> 1254</span> sleOffer-&gt;setFieldU64(sfOwnerNode, *ownerNode);</div>
<div class="line"><a id="l01255" name="l01255"></a><span class="lineno"> 1255</span> sleOffer-&gt;setFieldU64(sfBookNode, *bookNode);</div>
<div class="line"><a id="l01256" name="l01256"></a><span class="lineno"> 1256</span> <span class="keywordflow">if</span> (<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1expiration.html">expiration</a>)</div>
<div class="line"><a id="l01257" name="l01257"></a><span class="lineno"> 1257</span> sleOffer-&gt;setFieldU32(sfExpiration, *<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1expiration.html">expiration</a>);</div>
<div class="line"><a id="l01256" name="l01256"></a><span class="lineno"> 1256</span> <span class="keywordflow">if</span> (expiration)</div>
<div class="line"><a id="l01257" name="l01257"></a><span class="lineno"> 1257</span> sleOffer-&gt;setFieldU32(sfExpiration, *expiration);</div>
<div class="line"><a id="l01258" name="l01258"></a><span class="lineno"> 1258</span> <span class="keywordflow">if</span> (bPassive)</div>
<div class="line"><a id="l01259" name="l01259"></a><span class="lineno"> 1259</span> sleOffer-&gt;setFlag(<a class="code hl_enumvalue" href="namespaceripple.html#a4a9c7b33fef9015d6406302ef80b63c5af5bb4ed279c86f7c4ddfe0b2ed89af00">lsfPassive</a>);</div>
<div class="line"><a id="l01260" name="l01260"></a><span class="lineno"> 1260</span> <span class="keywordflow">if</span> (bSell)</div>
@@ -1436,6 +1436,7 @@ $(function() {
<div class="ttc" id="aclassripple_1_1STObject_html_a8e207109e646759f4927d90e4404893f"><div class="ttname"><a href="classripple_1_1STObject.html#a8e207109e646759f4927d90e4404893f">ripple::STObject::getFieldAmount</a></div><div class="ttdeci">STAmount const &amp; getFieldAmount(SField const &amp;field) const</div><div class="ttdef"><b>Definition:</b> <a href="STObject_8cpp_source.html#l00665">STObject.cpp:665</a></div></div>
<div class="ttc" id="aclassripple_1_1STObject_html_af5aa57043ec772da30341e3c3b823d7f"><div class="ttname"><a href="classripple_1_1STObject.html#af5aa57043ec772da30341e3c3b823d7f">ripple::STObject::getFlags</a></div><div class="ttdeci">std::uint32_t getFlags() const</div><div class="ttdef"><b>Definition:</b> <a href="STObject_8cpp_source.html#l00537">STObject.cpp:537</a></div></div>
<div class="ttc" id="aclassripple_1_1STPathSet_html"><div class="ttname"><a href="classripple_1_1STPathSet.html">ripple::STPathSet</a></div><div class="ttdef"><b>Definition:</b> <a href="STPathSet_8h_source.html#l00177">STPathSet.h:178</a></div></div>
<div class="ttc" id="aclassripple_1_1STPathSet_html_af48d3b97e65d1e4826d13289b1648c80"><div class="ttname"><a href="classripple_1_1STPathSet.html#af48d3b97e65d1e4826d13289b1648c80">ripple::STPathSet::emplace_back</a></div><div class="ttdeci">void emplace_back(Args &amp;&amp;... args)</div><div class="ttdef"><b>Definition:</b> <a href="STPathSet_8h_source.html#l00521">STPathSet.h:521</a></div></div>
<div class="ttc" id="aclassripple_1_1STPath_html"><div class="ttname"><a href="classripple_1_1STPath.html">ripple::STPath</a></div><div class="ttdef"><b>Definition:</b> <a href="STPathSet_8h_source.html#l00119">STPathSet.h:120</a></div></div>
<div class="ttc" id="aclassripple_1_1STTx_html"><div class="ttname"><a href="classripple_1_1STTx.html">ripple::STTx</a></div><div class="ttdef"><b>Definition:</b> <a href="STTx_8h_source.html#l00047">STTx.h:48</a></div></div>
<div class="ttc" id="aclassripple_1_1STTx_html_ab560bf669b9e15d7cfb91bb9da4a104a"><div class="ttname"><a href="classripple_1_1STTx.html#ab560bf669b9e15d7cfb91bb9da4a104a">ripple::STTx::getSeqValue</a></div><div class="ttdeci">std::uint32_t getSeqValue() const</div><div class="ttdoc">Returns the first non-zero value of (Sequence, TicketSequence).</div><div class="ttdef"><b>Definition:</b> <a href="STTx_8cpp_source.html#l00231">STTx.cpp:231</a></div></div>
@@ -1467,12 +1468,6 @@ $(function() {
<div class="ttc" id="aclassripple_1_1detail_1_1ApplyViewBase_html_adbca64f4c123b0fbcfdf27586649732b"><div class="ttname"><a href="classripple_1_1detail_1_1ApplyViewBase.html#adbca64f4c123b0fbcfdf27586649732b">ripple::detail::ApplyViewBase::read</a></div><div class="ttdeci">std::shared_ptr&lt; SLE const &gt; read(Keylet const &amp;k) const override</div><div class="ttdoc">Return the state item associated with a key.</div><div class="ttdef"><b>Definition:</b> <a href="ApplyViewBase_8cpp_source.html#l00070">ApplyViewBase.cpp:70</a></div></div>
<div class="ttc" id="aclassripple_1_1detail_1_1ApplyViewBase_html_af16244cf2efd903b4575a0b85c94d159"><div class="ttname"><a href="classripple_1_1detail_1_1ApplyViewBase.html#af16244cf2efd903b4575a0b85c94d159">ripple::detail::ApplyViewBase::rules</a></div><div class="ttdeci">Rules const &amp; rules() const override</div><div class="ttdoc">Returns the tx processing rules.</div><div class="ttdef"><b>Definition:</b> <a href="ApplyViewBase_8cpp_source.html#l00051">ApplyViewBase.cpp:51</a></div></div>
<div class="ttc" id="aclassripple_1_1detail_1_1ApplyViewBase_html_afe88196d7aec85f2af00d7cd0b1a28c3"><div class="ttname"><a href="classripple_1_1detail_1_1ApplyViewBase.html#afe88196d7aec85f2af00d7cd0b1a28c3">ripple::detail::ApplyViewBase::peek</a></div><div class="ttdeci">std::shared_ptr&lt; SLE &gt; peek(Keylet const &amp;k) override</div><div class="ttdoc">Prepare to modify the SLE associated with key.</div><div class="ttdef"><b>Definition:</b> <a href="ApplyViewBase_8cpp_source.html#l00127">ApplyViewBase.cpp:127</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1expiration_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1expiration.html">ripple::test::jtx::expiration</a></div><div class="ttdoc">Set Expiration on a JTx.</div><div class="ttdef"><b>Definition:</b> <a href="Check__test_8cpp_source.html#l00030">Check_test.cpp:31</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1flags_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1flags.html">ripple::test::jtx::flags</a></div><div class="ttdoc">Match set account flags.</div><div class="ttdef"><b>Definition:</b> <a href="flags_8h_source.html#l00124">flags.h:125</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_1ter_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1ter.html">ripple::test::jtx::ter</a></div><div class="ttdoc">Set the expected result code for a JTx The test will fail if the code doesn't match.</div><div class="ttdef"><b>Definition:</b> <a href="ter_8h_source.html#l00034">ter.h:35</a></div></div>
<div class="ttc" id="aexception_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/error/exception.html">std::exception</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="amake_pair_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/utility/pair/make_pair.html">std::make_pair</a></div><div class="ttdeci">T make_pair(T... args)</div></div>
@@ -1483,9 +1478,6 @@ $(function() {
<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_1keylet_html_acd4d51d467fc6e75745baf179a7965ef"><div class="ttname"><a href="namespaceripple_1_1keylet.html#acd4d51d467fc6e75745baf179a7965ef">ripple::keylet::ownerDir</a></div><div class="ttdeci">Keylet ownerDir(AccountID const &amp;id) noexcept</div><div class="ttdoc">The root page of an account's directory.</div><div class="ttdef"><b>Definition:</b> <a href="Indexes_8cpp_source.html#l00367">Indexes.cpp:367</a></div></div>
<div class="ttc" id="anamespaceripple_1_1keylet_html_aeffddd45805feb6cc0678738b5c21072"><div class="ttname"><a href="namespaceripple_1_1keylet.html#aeffddd45805feb6cc0678738b5c21072">ripple::keylet::offer</a></div><div class="ttdeci">Keylet offer(AccountID const &amp;id, std::uint32_t seq) noexcept</div><div class="ttdoc">An offer from an account.</div><div class="ttdef"><b>Definition:</b> <a href="Indexes_8cpp_source.html#l00267">Indexes.cpp:267</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_a3beb715a43d7e5bc771c333529bbf92d"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#a3beb715a43d7e5bc771c333529bbf92d">ripple::test::jtx::offers</a></div><div class="ttdeci">owner_count&lt; ltOFFER &gt; offers</div><div class="ttdoc">Match the number of offers in the account's owner directory.</div><div class="ttdef"><b>Definition:</b> <a href="owners_8h_source.html#l00092">owners.h:92</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_a8e8d814b8820ce0b6979abde0d6a2618"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">ripple::test::jtx::rate</a></div><div class="ttdeci">Json::Value rate(Account const &amp;account, double multiplier)</div><div class="ttdoc">Set a transfer rate.</div><div class="ttdef"><b>Definition:</b> <a href="rate_8cpp_source.html#l00032">rate.cpp:32</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_ac423e2aa3fd7a14ae651849b430994f1"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">ripple::test::jtx::offer</a></div><div class="ttdeci">Json::Value offer(Account const &amp;account, STAmount const &amp;takerPays, STAmount const &amp;takerGets, std::uint32_t flags)</div><div class="ttdoc">Create an offer.</div><div class="ttdef"><b>Definition:</b> <a href="offer_8cpp_source.html#l00029">offer.cpp:29</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_a02be1da6bd3d611ea7a48b208b060b6c"><div class="ttname"><a href="namespaceripple.html#a02be1da6bd3d611ea7a48b208b060b6c">ripple::xrpIssue</a></div><div class="ttdeci">Issue const &amp; xrpIssue()</div><div class="ttdoc">Returns an asset specifier that represents XRP.</div><div class="ttdef"><b>Definition:</b> <a href="Issue_8h_source.html#l00118">Issue.h:118</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>