This commit is contained in:
bthomee
2025-07-16 11:52:14 +00:00
parent 2a15aed979
commit 0afa602eb2
105 changed files with 7564 additions and 7555 deletions

View File

@@ -279,7 +279,7 @@ $(function() {
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span>&amp; tweakedFeatures :</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> {features - fix1578, features | fix1578})</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> {</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> <span class="comment">// Order that can&#39;t be filled</span></div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> <a class="code hl_class" href="classripple_1_1TERSubset.html">TER</a> <span class="keyword">const</span> killedCode{</div>
@@ -315,7 +315,7 @@ $(function() {
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> </div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> <span class="comment">// Immediate or Cancel - cross as much as possible</span></div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="comment">// and add nothing on the books.</span></div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> env(<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>(<a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#aeedbd0d6402d225e41bd10251a7a0127">carol</a>, <a class="code hl_variable" href="namespaceripple_1_1test_1_1jtx.html#aea9cd3d4e6b5df2e62d53b34b605957e">XRP</a>(200), <a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a4edfbabbf5d3eba37156029f8a913792">USD</a>(200)),</div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1txflags.html">txflags</a>(<a class="code hl_variable" href="namespaceripple.html#a6257d0a91b5b06dd7712c68af628441d">tfImmediateOrCancel</a>),</div>
@@ -338,7 +338,7 @@ $(function() {
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> {tweakedFeatures});</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> </div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> <span class="comment">// tfPassive -- place the offer without crossing it.</span></div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> <span class="comment">// Carol creates a passive offer that could cross AMM.</span></div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> <span class="comment">// Carol&#39;s offer should stay in the ledger.</span></div>
@@ -355,7 +355,7 @@ $(function() {
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> {tweakedFeatures});</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> </div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> <span class="comment">// tfPassive -- cross only offers of better quality.</span></div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> env(<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>(<a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a3baa0afcd265e9eb486f0d957e7d6b21">alice</a>, <a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a4edfbabbf5d3eba37156029f8a913792">USD</a>(110), <a class="code hl_variable" href="namespaceripple_1_1test_1_1jtx.html#aea9cd3d4e6b5df2e62d53b34b605957e">XRP</a>(100)));</div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> env.<a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1Env.html#a69095691c9bcfab1f3d69c645f2dbe33">close</a>();</div>
@@ -481,7 +481,7 @@ $(function() {
<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> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> </div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span> <span class="comment">// Alice converts USD to XRP which should fail</span></div>
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"> 412</span> <span class="comment">// due to PartialPayment.</span></div>
@@ -519,7 +519,7 @@ $(function() {
<div class="line"><a id="l00444" name="l00444"></a><span class="lineno"> 444</span> </div>
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"> 445</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l00446" name="l00446"></a><span class="lineno"> 446</span> </div>
<div class="line"><a id="l00447" name="l00447"></a><span class="lineno"> 447</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00447" name="l00447"></a><span class="lineno"> 447</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00448" name="l00448"></a><span class="lineno"> 448</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00449" name="l00449"></a><span class="lineno"> 449</span> env.<a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1Env.html#ae2349266cb09d1f1c3de06606ebdf9e2">fund</a>(<a class="code hl_variable" href="namespaceripple_1_1test_1_1jtx.html#aea9cd3d4e6b5df2e62d53b34b605957e">XRP</a>(1&#39;000), <a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a6ffc2db0ebc33314843e07d5cdd4da2d">bob</a>);</div>
<div class="line"><a id="l00450" name="l00450"></a><span class="lineno"> 450</span> env.<a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1Env.html#a69095691c9bcfab1f3d69c645f2dbe33">close</a>();</div>
@@ -543,7 +543,7 @@ $(function() {
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span> </div>
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno"> 469</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l00470" name="l00470"></a><span class="lineno"> 470</span> </div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno"> 472</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00473" name="l00473"></a><span class="lineno"> 473</span> env.<a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1Env.html#ae2349266cb09d1f1c3de06606ebdf9e2">fund</a>(<a class="code hl_variable" href="namespaceripple_1_1test_1_1jtx.html#aea9cd3d4e6b5df2e62d53b34b605957e">XRP</a>(1&#39;000), <a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a6ffc2db0ebc33314843e07d5cdd4da2d">bob</a>);</div>
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"> 474</span> env.<a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1Env.html#a69095691c9bcfab1f3d69c645f2dbe33">close</a>();</div>
@@ -710,7 +710,7 @@ $(function() {
<div class="line"><a id="l00635" name="l00635"></a><span class="lineno"> 635</span> </div>
<div class="line"><a id="l00636" name="l00636"></a><span class="lineno"> 636</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l00637" name="l00637"></a><span class="lineno"> 637</span> </div>
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno"> 638</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno"> 638</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00639" name="l00639"></a><span class="lineno"> 639</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00640" name="l00640"></a><span class="lineno"> 640</span> env(<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#ac423e2aa3fd7a14ae651849b430994f1">offer</a>(<a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#aeedbd0d6402d225e41bd10251a7a0127">carol</a>, <a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a4edfbabbf5d3eba37156029f8a913792">USD</a>(100), <a class="code hl_variable" href="namespaceripple_1_1test_1_1jtx.html#aea9cd3d4e6b5df2e62d53b34b605957e">XRP</a>(100)), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1json.html">json</a>(jss::Flags, <a class="code hl_variable" href="namespaceripple.html#ad3bc01fc1c4e0e3191802ff3192c5493">tfSell</a>));</div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"> 641</span> env.<a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1Env.html#a69095691c9bcfab1f3d69c645f2dbe33">close</a>();</div>
@@ -1017,7 +1017,7 @@ $(function() {
<div class="line"><a id="l00942" name="l00942"></a><span class="lineno"> 942</span> <span class="keyword">using namespace </span>jtx;</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> <span class="comment">// AMM XRP/USD. Alice places USD/XRP offer.</span></div>
<div class="line"><a id="l00945" name="l00945"></a><span class="lineno"> 945</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00945" name="l00945"></a><span class="lineno"> 945</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00946" name="l00946"></a><span class="lineno"> 946</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00947" name="l00947"></a><span class="lineno"> 947</span> env(<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a>(<a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a632ccc576a9415e4648b80fa52886e54">gw</a>, 1.25));</div>
<div class="line"><a id="l00948" name="l00948"></a><span class="lineno"> 948</span> env.<a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1Env.html#a69095691c9bcfab1f3d69c645f2dbe33">close</a>();</div>
@@ -1038,7 +1038,7 @@ $(function() {
<div class="line"><a id="l00963" name="l00963"></a><span class="lineno"> 963</span> </div>
<div class="line"><a id="l00964" name="l00964"></a><span class="lineno"> 964</span> <span class="comment">// Reverse the order, so the offer in the books is to sell XRP</span></div>
<div class="line"><a id="l00965" name="l00965"></a><span class="lineno"> 965</span> <span class="comment">// in return for USD.</span></div>
<div class="line"><a id="l00966" name="l00966"></a><span class="lineno"> 966</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">testAMM</a>(</div>
<div class="line"><a id="l00966" name="l00966"></a><span class="lineno"> 966</span> <a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">testAMM</a>(</div>
<div class="line"><a id="l00967" name="l00967"></a><span class="lineno"> 967</span> [&amp;](<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1AMM.html">AMM</a>&amp; ammAlice, <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a>&amp; env) {</div>
<div class="line"><a id="l00968" name="l00968"></a><span class="lineno"> 968</span> env(<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e8d814b8820ce0b6979abde0d6a2618">rate</a>(<a class="code hl_variable" href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a632ccc576a9415e4648b80fa52886e54">gw</a>, 1.25));</div>
<div class="line"><a id="l00969" name="l00969"></a><span class="lineno"> 969</span> env.<a class="code hl_function" href="classripple_1_1test_1_1jtx_1_1Env.html#a69095691c9bcfab1f3d69c645f2dbe33">close</a>();</div>
@@ -1522,7 +1522,7 @@ $(function() {
<div class="line"><a id="l01447" name="l01447"></a><span class="lineno"><a class="line" href="structripple_1_1test_1_1AMMExtended__test.html#a93c69cb76aca4ba9f7cd44c089486541"> 1447</a></span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a93c69cb76aca4ba9f7cd44c089486541">testOffers</a>()</div>
<div class="line"><a id="l01448" name="l01448"></a><span class="lineno"> 1448</span> {</div>
<div class="line"><a id="l01449" name="l01449"></a><span class="lineno"> 1449</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l01450" name="l01450"></a><span class="lineno"> 1450</span> <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>()};</div>
<div class="line"><a id="l01450" name="l01450"></a><span class="lineno"> 1450</span> <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>()};</div>
<div class="line"><a id="l01451" name="l01451"></a><span class="lineno"> 1451</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#aad5a8b86eac202dc5ccbc145819443ee">testRmFundedOffer</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>);</div>
<div class="line"><a id="l01452" name="l01452"></a><span class="lineno"> 1452</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#aad5a8b86eac202dc5ccbc145819443ee">testRmFundedOffer</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a> - fixAMMv1_1 - fixAMMv1_3);</div>
<div class="line"><a id="l01453" name="l01453"></a><span class="lineno"> 1453</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#aed812e32079e9f60baf09422a7a507bd">testEnforceNoRipple</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>);</div>
@@ -2894,8 +2894,8 @@ $(function() {
<div class="line"><a id="l02823" name="l02823"></a><span class="lineno"> 2823</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> <span class="keyword">const</span> withFix : {<span class="keyword">true</span>, <span class="keyword">false</span>})</div>
<div class="line"><a id="l02824" name="l02824"></a><span class="lineno"> 2824</span> {</div>
<div class="line"><a id="l02825" name="l02825"></a><span class="lineno"> 2825</span> <span class="keyword">auto</span> <span class="keyword">const</span> feats = withFix</div>
<div class="line"><a id="l02826" name="l02826"></a><span class="lineno"> 2826</span> ? <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>()</div>
<div class="line"><a id="l02827" name="l02827"></a><span class="lineno"> 2827</span> : <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>() - <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a>{fix1781};</div>
<div class="line"><a id="l02826" name="l02826"></a><span class="lineno"> 2826</span> ? <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>()</div>
<div class="line"><a id="l02827" name="l02827"></a><span class="lineno"> 2827</span> : <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>() - <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a>{fix1781};</div>
<div class="line"><a id="l02828" name="l02828"></a><span class="lineno"> 2828</span> </div>
<div class="line"><a id="l02829" name="l02829"></a><span class="lineno"> 2829</span> <span class="comment">// Payment path starting with XRP</span></div>
<div class="line"><a id="l02830" name="l02830"></a><span class="lineno"> 2830</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1Env.html">Env</a> env(*<span class="keyword">this</span>, feats);</div>
@@ -3860,7 +3860,7 @@ $(function() {
<div class="line"><a id="l03789" name="l03789"></a><span class="lineno"><a class="line" href="structripple_1_1test_1_1AMMExtended__test.html#a0cef3dfe3511dba869d98fe7f4119e08"> 3789</a></span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a0cef3dfe3511dba869d98fe7f4119e08">testFlow</a>()</div>
<div class="line"><a id="l03790" name="l03790"></a><span class="lineno"> 3790</span> {</div>
<div class="line"><a id="l03791" name="l03791"></a><span class="lineno"> 3791</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l03792" name="l03792"></a><span class="lineno"> 3792</span> <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>()};</div>
<div class="line"><a id="l03792" name="l03792"></a><span class="lineno"> 3792</span> <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>()};</div>
<div class="line"><a id="l03793" name="l03793"></a><span class="lineno"> 3793</span> </div>
<div class="line"><a id="l03794" name="l03794"></a><span class="lineno"> 3794</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a2307e73d869f56098b42cd1a428271f8">testFalseDry</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>);</div>
<div class="line"><a id="l03795" name="l03795"></a><span class="lineno"> 3795</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a4858b3098e750d4a210247ba3f91e39c">testBookStep</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>);</div>
@@ -3874,7 +3874,7 @@ $(function() {
<div class="line"><a id="l03803" name="l03803"></a><span class="lineno"><a class="line" href="structripple_1_1test_1_1AMMExtended__test.html#a225d5d59748cf25fc2269887d456a369"> 3803</a></span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a225d5d59748cf25fc2269887d456a369">testCrossingLimits</a>()</div>
<div class="line"><a id="l03804" name="l03804"></a><span class="lineno"> 3804</span> {</div>
<div class="line"><a id="l03805" name="l03805"></a><span class="lineno"> 3805</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l03806" name="l03806"></a><span class="lineno"> 3806</span> <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>()};</div>
<div class="line"><a id="l03806" name="l03806"></a><span class="lineno"> 3806</span> <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>()};</div>
<div class="line"><a id="l03807" name="l03807"></a><span class="lineno"> 3807</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#ac6939a63c329e656a6da8013dbf18400">testStepLimit</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>);</div>
<div class="line"><a id="l03808" name="l03808"></a><span class="lineno"> 3808</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#ac6939a63c329e656a6da8013dbf18400">testStepLimit</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a> - fixAMMv1_1 - fixAMMv1_3);</div>
<div class="line"><a id="l03809" name="l03809"></a><span class="lineno"> 3809</span> }</div>
@@ -3883,7 +3883,7 @@ $(function() {
<div class="line"><a id="l03812" name="l03812"></a><span class="lineno"><a class="line" href="structripple_1_1test_1_1AMMExtended__test.html#a426474fae47ee1d7605065a003aaedc1"> 3812</a></span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a426474fae47ee1d7605065a003aaedc1">testDeliverMin</a>()</div>
<div class="line"><a id="l03813" name="l03813"></a><span class="lineno"> 3813</span> {</div>
<div class="line"><a id="l03814" name="l03814"></a><span class="lineno"> 3814</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l03815" name="l03815"></a><span class="lineno"> 3815</span> <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>()};</div>
<div class="line"><a id="l03815" name="l03815"></a><span class="lineno"> 3815</span> <a class="code hl_class" href="classripple_1_1FeatureBitset.html">FeatureBitset</a> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>()};</div>
<div class="line"><a id="l03816" name="l03816"></a><span class="lineno"> 3816</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a521fdb60a82b7a2de93651f9c47c5814">test_convert_all_of_an_asset</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>);</div>
<div class="line"><a id="l03817" name="l03817"></a><span class="lineno"> 3817</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a521fdb60a82b7a2de93651f9c47c5814">test_convert_all_of_an_asset</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a> - fixAMMv1_1 - fixAMMv1_3);</div>
<div class="line"><a id="l03818" name="l03818"></a><span class="lineno"> 3818</span> }</div>
@@ -3891,7 +3891,7 @@ $(function() {
<div class="line"><a id="l03820" name="l03820"></a><span class="lineno"> 3820</span> <span class="keywordtype">void</span></div>
<div class="line"><a id="l03821" name="l03821"></a><span class="lineno"><a class="line" href="structripple_1_1test_1_1AMMExtended__test.html#ac4b154c105591f579a3bb2f9b61e07a2"> 3821</a></span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#ac4b154c105591f579a3bb2f9b61e07a2">testDepositAuth</a>()</div>
<div class="line"><a id="l03822" name="l03822"></a><span class="lineno"> 3822</span> {</div>
<div class="line"><a id="l03823" name="l03823"></a><span class="lineno"> 3823</span> <span class="keyword">auto</span> <span class="keyword">const</span> supported{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">jtx::supported_amendments</a>()};</div>
<div class="line"><a id="l03823" name="l03823"></a><span class="lineno"> 3823</span> <span class="keyword">auto</span> <span class="keyword">const</span> supported{<a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">jtx::testable_amendments</a>()};</div>
<div class="line"><a id="l03824" name="l03824"></a><span class="lineno"> 3824</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a5555c924613e0cc7bf8ab31246a94a20">testPayment</a>(supported - featureDepositPreauth);</div>
<div class="line"><a id="l03825" name="l03825"></a><span class="lineno"> 3825</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a5555c924613e0cc7bf8ab31246a94a20">testPayment</a>(supported);</div>
<div class="line"><a id="l03826" name="l03826"></a><span class="lineno"> 3826</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#aa100936079de03a8c0a9b1a3b5b030a6">testPayIOU</a>();</div>
@@ -3901,7 +3901,7 @@ $(function() {
<div class="line"><a id="l03830" name="l03830"></a><span class="lineno"><a class="line" href="structripple_1_1test_1_1AMMExtended__test.html#a568a0e17728d40210ee4f9606966b156"> 3830</a></span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a568a0e17728d40210ee4f9606966b156">testFreeze</a>()</div>
<div class="line"><a id="l03831" name="l03831"></a><span class="lineno"> 3831</span> {</div>
<div class="line"><a id="l03832" name="l03832"></a><span class="lineno"> 3832</span> <span class="keyword">using namespace </span>test::jtx;</div>
<div class="line"><a id="l03833" name="l03833"></a><span class="lineno"> 3833</span> <span class="keyword">auto</span> <span class="keyword">const</span> sa = <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>();</div>
<div class="line"><a id="l03833" name="l03833"></a><span class="lineno"> 3833</span> <span class="keyword">auto</span> <span class="keyword">const</span> sa = <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>();</div>
<div class="line"><a id="l03834" name="l03834"></a><span class="lineno"> 3834</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a99abd4b68e606a5735df90e8f0c176e1">testRippleState</a>(sa);</div>
<div class="line"><a id="l03835" name="l03835"></a><span class="lineno"> 3835</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a05259f267a32c18841c7502fbfc21cde">testGlobalFreeze</a>(sa);</div>
<div class="line"><a id="l03836" name="l03836"></a><span class="lineno"> 3836</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a67bfb2cc83135c258e4fbe252dcf7115">testOffersWhenFrozen</a>(sa);</div>
@@ -3911,7 +3911,7 @@ $(function() {
<div class="line"><a id="l03840" name="l03840"></a><span class="lineno"><a class="line" href="structripple_1_1test_1_1AMMExtended__test.html#a67aa7d9f773e452ed1d827ff98ff07a9"> 3840</a></span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a67aa7d9f773e452ed1d827ff98ff07a9">testMultisign</a>()</div>
<div class="line"><a id="l03841" name="l03841"></a><span class="lineno"> 3841</span> {</div>
<div class="line"><a id="l03842" name="l03842"></a><span class="lineno"> 3842</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l03843" name="l03843"></a><span class="lineno"> 3843</span> <span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a> = <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>();</div>
<div class="line"><a id="l03843" name="l03843"></a><span class="lineno"> 3843</span> <span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a> = <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>();</div>
<div class="line"><a id="l03844" name="l03844"></a><span class="lineno"> 3844</span> </div>
<div class="line"><a id="l03845" name="l03845"></a><span class="lineno"> 3845</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#afd22be4508d66b15ef939186388b6e63">testTxMultisign</a>(</div>
<div class="line"><a id="l03846" name="l03846"></a><span class="lineno"> 3846</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a> - featureMultiSignReserve - featureExpandedSignerList);</div>
@@ -3923,7 +3923,7 @@ $(function() {
<div class="line"><a id="l03852" name="l03852"></a><span class="lineno"><a class="line" href="structripple_1_1test_1_1AMMExtended__test.html#a0f4c818cd9bb09b29b6b8d479dd311e7"> 3852</a></span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a0f4c818cd9bb09b29b6b8d479dd311e7">testPayStrand</a>()</div>
<div class="line"><a id="l03853" name="l03853"></a><span class="lineno"> 3853</span> {</div>
<div class="line"><a id="l03854" name="l03854"></a><span class="lineno"> 3854</span> <span class="keyword">using namespace </span>jtx;</div>
<div class="line"><a id="l03855" name="l03855"></a><span class="lineno"> 3855</span> <span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a> = <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">supported_amendments</a>();</div>
<div class="line"><a id="l03855" name="l03855"></a><span class="lineno"> 3855</span> <span class="keyword">auto</span> <span class="keyword">const</span> <a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a> = <a class="code hl_function" href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">testable_amendments</a>();</div>
<div class="line"><a id="l03856" name="l03856"></a><span class="lineno"> 3856</span> </div>
<div class="line"><a id="l03857" name="l03857"></a><span class="lineno"> 3857</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a74dd4d93fcc0432a1150abfc2a2d9ac1">testToStrand</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>);</div>
<div class="line"><a id="l03858" name="l03858"></a><span class="lineno"> 3858</span> <a class="code hl_function" href="structripple_1_1test_1_1AMMExtended__test.html#a8b7661580251d8b2e017f30964142669">testRIPD1373</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a7ffb3f54d739bb8f967d695f08fb66ccaa181a603769c1f98ad927e7367c7aa51">all</a>);</div>
@@ -3982,9 +3982,9 @@ $(function() {
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTestBase_html_a632ccc576a9415e4648b80fa52886e54"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a632ccc576a9415e4648b80fa52886e54">ripple::test::jtx::AMMTestBase::gw</a></div><div class="ttdeci">jtx::Account const gw</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8h_source.html#l00075">AMMTest.h:75</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTestBase_html_a6ffc2db0ebc33314843e07d5cdd4da2d"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a6ffc2db0ebc33314843e07d5cdd4da2d">ripple::test::jtx::AMMTestBase::bob</a></div><div class="ttdeci">jtx::Account const bob</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8h_source.html#l00078">AMMTest.h:78</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTestBase_html_a80494932440025696dc4729725928d2c"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a80494932440025696dc4729725928d2c">ripple::test::jtx::AMMTestBase::EUR</a></div><div class="ttdeci">jtx::IOU const EUR</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8h_source.html#l00080">AMMTest.h:80</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTestBase_html_a93d0de595bdf449b64724075e43df0e2"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a93d0de595bdf449b64724075e43df0e2">ripple::test::jtx::AMMTestBase::testAMM</a></div><div class="ttdeci">void testAMM(std::function&lt; void(jtx::AMM &amp;, jtx::Env &amp;)&gt; &amp;&amp;cb, std::optional&lt; std::pair&lt; STAmount, STAmount &gt; &gt; const &amp;pool=std::nullopt, std::uint16_t tfee=0, std::optional&lt; jtx::ter &gt; const &amp;ter=std::nullopt, std::vector&lt; FeatureBitset &gt; const &amp;features={testable_amendments()})</div><div class="ttdoc">testAMM() funds 30,000XRP and 30,000IOU for each non-XRP asset to Alice and Carol</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8cpp_source.html#l00103">AMMTest.cpp:103</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTestBase_html_a9d0ac4801a20f421e88095a5ed604dd6"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#a9d0ac4801a20f421e88095a5ed604dd6">ripple::test::jtx::AMMTestBase::GBP</a></div><div class="ttdeci">jtx::IOU const GBP</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8h_source.html#l00081">AMMTest.h:81</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTestBase_html_aeedbd0d6402d225e41bd10251a7a0127"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#aeedbd0d6402d225e41bd10251a7a0127">ripple::test::jtx::AMMTestBase::carol</a></div><div class="ttdeci">jtx::Account const carol</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8h_source.html#l00076">AMMTest.h:76</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTestBase_html_afdb3804e5f9c1d6cd3dea67c22f6ef51"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTestBase.html#afdb3804e5f9c1d6cd3dea67c22f6ef51">ripple::test::jtx::AMMTestBase::testAMM</a></div><div class="ttdeci">void testAMM(std::function&lt; void(jtx::AMM &amp;, jtx::Env &amp;)&gt; &amp;&amp;cb, std::optional&lt; std::pair&lt; STAmount, STAmount &gt; &gt; const &amp;pool=std::nullopt, std::uint16_t tfee=0, std::optional&lt; jtx::ter &gt; const &amp;ter=std::nullopt, std::vector&lt; FeatureBitset &gt; const &amp;features={supported_amendments()})</div><div class="ttdoc">testAMM() funds 30,000XRP and 30,000IOU for each non-XRP asset to Alice and Carol</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8cpp_source.html#l00103">AMMTest.cpp:103</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTest_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTest.html">ripple::test::jtx::AMMTest</a></div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8h_source.html#l00106">AMMTest.h:107</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTest_html_a13536a06d69a305624970ebe4457cbe5"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTest.html#a13536a06d69a305624970ebe4457cbe5">ripple::test::jtx::AMMTest::find_paths</a></div><div class="ttdeci">std::tuple&lt; STPathSet, STAmount, STAmount &gt; find_paths(jtx::Env &amp;env, jtx::Account const &amp;src, jtx::Account const &amp;dst, STAmount const &amp;saDstAmount, std::optional&lt; STAmount &gt; const &amp;saSendMax=std::nullopt, std::optional&lt; Currency &gt; const &amp;saSrcCurrency=std::nullopt)</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8cpp_source.html#l00256">AMMTest.cpp:256</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1AMMTest_html_a2ad9589a49a3397b7c7697a6dc411843"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1AMMTest.html#a2ad9589a49a3397b7c7697a6dc411843">ripple::test::jtx::AMMTest::pathTestEnv</a></div><div class="ttdeci">jtx::Env pathTestEnv()</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8cpp_source.html#l00183">AMMTest.cpp:183</a></div></div>
@@ -4061,6 +4061,7 @@ $(function() {
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_a6c3554f3d48caff5d119348e2dff0476"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#a6c3554f3d48caff5d119348e2dff0476">ripple::test::jtx::ledgerEntryState</a></div><div class="ttdeci">Json::Value ledgerEntryState(Env &amp;env, Account const &amp;acct_a, Account const &amp;acct_b, std::string const &amp;currency)</div><div class="ttdef"><b>Definition:</b> <a href="TestHelpers_8cpp_source.html#l00183">TestHelpers.cpp:183</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_a7465bcfa8bde2f58f93cee57934f7df8"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#a7465bcfa8bde2f58f93cee57934f7df8">ripple::test::jtx::fund</a></div><div class="ttdeci">void fund(jtx::Env &amp;env, jtx::Account const &amp;gw, std::vector&lt; jtx::Account &gt; const &amp;accounts, std::vector&lt; STAmount &gt; const &amp;amts, Fund how)</div><div class="ttdef"><b>Definition:</b> <a href="AMMTest_8cpp_source.html#l00037">AMMTest.cpp:37</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_a7c645be628e7b52dd6010904fde51f00"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#a7c645be628e7b52dd6010904fde51f00">ripple::test::jtx::n_offers</a></div><div class="ttdeci">void n_offers(Env &amp;env, std::size_t n, Account const &amp;account, STAmount const &amp;in, STAmount const &amp;out)</div><div class="ttdef"><b>Definition:</b> <a href="TestHelpers_8cpp_source.html#l00311">TestHelpers.cpp:311</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_a8e5379a68ca5b5ae718e77312c2f1f94"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#a8e5379a68ca5b5ae718e77312c2f1f94">ripple::test::jtx::testable_amendments</a></div><div class="ttdeci">FeatureBitset testable_amendments()</div><div class="ttdef"><b>Definition:</b> <a href="Env_8h_source.html#l00074">Env.h:74</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_a992303bb9a650824e18de77a2355ac23"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#a992303bb9a650824e18de77a2355ac23">ripple::test::jtx::IPE</a></div><div class="ttdeci">STPathElement IPE(Issue const &amp;iss)</div><div class="ttdef"><b>Definition:</b> <a href="TestHelpers_8cpp_source.html#l00081">TestHelpers.cpp:81</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>
@@ -4069,7 +4070,6 @@ $(function() {
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_ae46705d6303e606f7b4ee59ab463d76a"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#ae46705d6303e606f7b4ee59ab463d76a">ripple::test::jtx::allpe</a></div><div class="ttdeci">STPathElement allpe(AccountID const &amp;a, Issue const &amp;iss)</div><div class="ttdef"><b>Definition:</b> <a href="TestHelpers_8cpp_source.html#l00340">TestHelpers.cpp:340</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_aea9cd3d4e6b5df2e62d53b34b605957e"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#aea9cd3d4e6b5df2e62d53b34b605957e">ripple::test::jtx::XRP</a></div><div class="ttdeci">XRP_t const XRP</div><div class="ttdoc">Converts to XRP Issue or STAmount.</div><div class="ttdef"><b>Definition:</b> <a href="amount_8cpp_source.html#l00105">amount.cpp:105</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_aecb5fa02420b40647dbc049baa254a56"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#aecb5fa02420b40647dbc049baa254a56">ripple::test::jtx::txfee</a></div><div class="ttdeci">XRPAmount txfee(Env const &amp;env, std::uint16_t n)</div><div class="ttdef"><b>Definition:</b> <a href="TestHelpers_8cpp_source.html#l00093">TestHelpers.cpp:93</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_af5441d84d5977d52246c5226313560d4"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#af5441d84d5977d52246c5226313560d4">ripple::test::jtx::supported_amendments</a></div><div class="ttdeci">FeatureBitset supported_amendments()</div><div class="ttdef"><b>Definition:</b> <a href="Env_8h_source.html#l00074">Env.h:74</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_af6b41ba30029fc04d5167ae9b841d2a6"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#af6b41ba30029fc04d5167ae9b841d2a6">ripple::test::jtx::stpath</a></div><div class="ttdeci">STPath stpath(Args const &amp;... args)</div><div class="ttdef"><b>Definition:</b> <a href="TestHelpers_8h_source.html#l00156">TestHelpers.h:156</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_1_1jtx_html_aff96e24753f0f457eb0ca0fbf763401c"><div class="ttname"><a href="namespaceripple_1_1test_1_1jtx.html#aff96e24753f0f457eb0ca0fbf763401c">ripple::test::jtx::getAccountOffers</a></div><div class="ttdeci">Json::Value getAccountOffers(Env &amp;env, AccountID const &amp;acct, bool current)</div><div class="ttdef"><b>Definition:</b> <a href="TestHelpers_8cpp_source.html#l00032">TestHelpers.cpp:32</a></div></div>
<div class="ttc" id="anamespaceripple_1_1test_html_a82faa62be2fc6dd088544043a46a5ee5"><div class="ttname"><a href="namespaceripple_1_1test.html#a82faa62be2fc6dd088544043a46a5ee5">ripple::test::isOffer</a></div><div class="ttdeci">bool isOffer(jtx::Env &amp;env, jtx::Account const &amp;account, STAmount const &amp;takerPays, STAmount const &amp;takerGets)</div><div class="ttdoc">An offer exists.</div><div class="ttdef"><b>Definition:</b> <a href="PathSet_8h_source.html#l00072">PathSet.h:72</a></div></div>