|
52 | 52 | - [Function `new_market_config`](#0x7_market_types_new_market_config) |
53 | 53 | - [Function `new_market`](#0x7_market_types_new_market) |
54 | 54 | - [Function `next_order_id`](#0x7_market_types_next_order_id) |
55 | | -- [Function `next_fill_id`](#0x7_market_types_next_fill_id) |
56 | 55 | - [Function `get_order_book`](#0x7_market_types_get_order_book) |
57 | 56 | - [Function `get_market_address`](#0x7_market_types_get_market_address) |
58 | 57 | - [Function `best_bid_price`](#0x7_market_types_best_bid_price) |
|
447 | 446 |
|
448 | 447 | <dl> |
449 | 448 | <dt> |
450 | | -<code>settle_trade_f: |&<b>mut</b> <a href="market_types.md#0x7_market_types_Market">market_types::Market</a><M>, <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64, u64, u64|<a href="market_types.md#0x7_market_types_SettleTradeResult">market_types::SettleTradeResult</a><R> <b>has</b> <b>copy</b> + drop</code> |
| 449 | +<code>settle_trade_f: |&<b>mut</b> <a href="market_types.md#0x7_market_types_Market">market_types::Market</a><M>, <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u128, u64, u64|<a href="market_types.md#0x7_market_types_SettleTradeResult">market_types::SettleTradeResult</a><R> <b>has</b> <b>copy</b> + drop</code> |
451 | 450 | </dt> |
452 | 451 | <dd> |
453 | 452 | settle_trade_f arguments: market, taker, maker, fill_id, settled_price, settled_size, |
|
539 | 538 | </dt> |
540 | 539 | <dd> |
541 | 540 | Address of the market object of this market. |
542 | | -</dd> |
543 | | -<dt> |
544 | | -<code>next_fill_id: u64</code> |
545 | | -</dt> |
546 | | -<dd> |
547 | | - |
548 | 541 | </dd> |
549 | 542 | <dt> |
550 | 543 | <code>config: <a href="market_types.md#0x7_market_types_MarketConfig">market_types::MarketConfig</a></code> |
|
1327 | 1320 |
|
1328 | 1321 |
|
1329 | 1322 |
|
1330 | | -<pre><code><b>public</b> <b>fun</b> <a href="market_types.md#0x7_market_types_new_market_clearinghouse_callbacks">new_market_clearinghouse_callbacks</a><M: <b>copy</b>, drop, store, R: <b>copy</b>, drop, store>(settle_trade_f: |&<b>mut</b> <a href="market_types.md#0x7_market_types_Market">market_types::Market</a><M>, <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64, u64, u64|<a href="market_types.md#0x7_market_types_SettleTradeResult">market_types::SettleTradeResult</a><R> <b>has</b> <b>copy</b> + drop, validate_order_placement_f: |<a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64|<a href="market_types.md#0x7_market_types_ValidationResult">market_types::ValidationResult</a> <b>has</b> <b>copy</b> + drop, validate_bulk_order_placement_f: |<b>address</b>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, M|<a href="market_types.md#0x7_market_types_ValidationResult">market_types::ValidationResult</a> <b>has</b> <b>copy</b> + drop, place_maker_order_f: |<a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64|<a href="market_types.md#0x7_market_types_PlaceMakerOrderResult">market_types::PlaceMakerOrderResult</a><R> <b>has</b> <b>copy</b> + drop, cleanup_order_f: |<a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64, bool| <b>has</b> <b>copy</b> + drop, cleanup_bulk_order_at_price_f: |<b>address</b>, <a href="order_book_types.md#0x7_order_book_types_OrderIdType">order_book_types::OrderIdType</a>, bool, u64, u64| <b>has</b> <b>copy</b> + drop, decrease_order_size_f: |<a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64| <b>has</b> <b>copy</b> + drop, get_order_metadata_bytes: |M|<a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u8> <b>has</b> <b>copy</b> + drop): <a href="market_types.md#0x7_market_types_MarketClearinghouseCallbacks">market_types::MarketClearinghouseCallbacks</a><M, R> |
| 1323 | +<pre><code><b>public</b> <b>fun</b> <a href="market_types.md#0x7_market_types_new_market_clearinghouse_callbacks">new_market_clearinghouse_callbacks</a><M: <b>copy</b>, drop, store, R: <b>copy</b>, drop, store>(settle_trade_f: |&<b>mut</b> <a href="market_types.md#0x7_market_types_Market">market_types::Market</a><M>, <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u128, u64, u64|<a href="market_types.md#0x7_market_types_SettleTradeResult">market_types::SettleTradeResult</a><R> <b>has</b> <b>copy</b> + drop, validate_order_placement_f: |<a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64|<a href="market_types.md#0x7_market_types_ValidationResult">market_types::ValidationResult</a> <b>has</b> <b>copy</b> + drop, validate_bulk_order_placement_f: |<b>address</b>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, M|<a href="market_types.md#0x7_market_types_ValidationResult">market_types::ValidationResult</a> <b>has</b> <b>copy</b> + drop, place_maker_order_f: |<a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64|<a href="market_types.md#0x7_market_types_PlaceMakerOrderResult">market_types::PlaceMakerOrderResult</a><R> <b>has</b> <b>copy</b> + drop, cleanup_order_f: |<a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64, bool| <b>has</b> <b>copy</b> + drop, cleanup_bulk_order_at_price_f: |<b>address</b>, <a href="order_book_types.md#0x7_order_book_types_OrderIdType">order_book_types::OrderIdType</a>, bool, u64, u64| <b>has</b> <b>copy</b> + drop, decrease_order_size_f: |<a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, u64| <b>has</b> <b>copy</b> + drop, get_order_metadata_bytes: |M|<a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u8> <b>has</b> <b>copy</b> + drop): <a href="market_types.md#0x7_market_types_MarketClearinghouseCallbacks">market_types::MarketClearinghouseCallbacks</a><M, R> |
1331 | 1324 | </code></pre> |
1332 | 1325 |
|
1333 | 1326 |
|
|
1337 | 1330 |
|
1338 | 1331 |
|
1339 | 1332 | <pre><code><b>public</b> <b>fun</b> <a href="market_types.md#0x7_market_types_new_market_clearinghouse_callbacks">new_market_clearinghouse_callbacks</a><M: store + <b>copy</b> + drop, R: store + <b>copy</b> + drop>( |
1340 | | - settle_trade_f: |&<b>mut</b> <a href="market_types.md#0x7_market_types_Market">Market</a><M>, MarketClearinghouseOrderInfo<M>, MarketClearinghouseOrderInfo<M>, u64, u64, u64| <a href="market_types.md#0x7_market_types_SettleTradeResult">SettleTradeResult</a><R> <b>has</b> drop + <b>copy</b>, |
| 1333 | + settle_trade_f: |&<b>mut</b> <a href="market_types.md#0x7_market_types_Market">Market</a><M>, MarketClearinghouseOrderInfo<M>, MarketClearinghouseOrderInfo<M>, u128, u64, u64| <a href="market_types.md#0x7_market_types_SettleTradeResult">SettleTradeResult</a><R> <b>has</b> drop + <b>copy</b>, |
1341 | 1334 | validate_order_placement_f: | MarketClearinghouseOrderInfo<M>, u64| <a href="market_types.md#0x7_market_types_ValidationResult">ValidationResult</a> <b>has</b> drop + <b>copy</b>, |
1342 | 1335 | validate_bulk_order_placement_f: |<b>address</b>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/vector.md#0x1_vector">vector</a><u64>, M| <a href="market_types.md#0x7_market_types_ValidationResult">ValidationResult</a> <b>has</b> drop + <b>copy</b>, |
1343 | 1336 | place_maker_order_f: |MarketClearinghouseOrderInfo<M>, u64| <a href="market_types.md#0x7_market_types_PlaceMakerOrderResult">PlaceMakerOrderResult</a><R> <b>has</b> drop + <b>copy</b>, |
|
1690 | 1683 |
|
1691 | 1684 |
|
1692 | 1685 | <pre><code>#[lint::skip(#[needless_mutable_reference])] |
1693 | | -<b>public</b> <b>fun</b> <a href="market_types.md#0x7_market_types_settle_trade">settle_trade</a><M: <b>copy</b>, drop, store, R: <b>copy</b>, drop, store>(self: &<a href="market_types.md#0x7_market_types_MarketClearinghouseCallbacks">market_types::MarketClearinghouseCallbacks</a><M, R>, market: &<b>mut</b> <a href="market_types.md#0x7_market_types_Market">market_types::Market</a><M>, taker: <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, maker: <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, fill_id: u64, settled_price: u64, settled_size: u64): <a href="market_types.md#0x7_market_types_SettleTradeResult">market_types::SettleTradeResult</a><R> |
| 1686 | +<b>public</b> <b>fun</b> <a href="market_types.md#0x7_market_types_settle_trade">settle_trade</a><M: <b>copy</b>, drop, store, R: <b>copy</b>, drop, store>(self: &<a href="market_types.md#0x7_market_types_MarketClearinghouseCallbacks">market_types::MarketClearinghouseCallbacks</a><M, R>, market: &<b>mut</b> <a href="market_types.md#0x7_market_types_Market">market_types::Market</a><M>, taker: <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, maker: <a href="market_clearinghouse_order_info.md#0x7_market_clearinghouse_order_info_MarketClearinghouseOrderInfo">market_clearinghouse_order_info::MarketClearinghouseOrderInfo</a><M>, fill_id: u128, settled_price: u64, settled_size: u64): <a href="market_types.md#0x7_market_types_SettleTradeResult">market_types::SettleTradeResult</a><R> |
1694 | 1687 | </code></pre> |
1695 | 1688 |
|
1696 | 1689 |
|
|
1704 | 1697 | market: &<b>mut</b> <a href="market_types.md#0x7_market_types_Market">Market</a><M>, |
1705 | 1698 | taker: MarketClearinghouseOrderInfo<M>, |
1706 | 1699 | maker: MarketClearinghouseOrderInfo<M>, |
1707 | | - fill_id: u64, |
| 1700 | + fill_id: u128, |
1708 | 1701 | settled_price: u64, |
1709 | 1702 | settled_size: u64): <a href="market_types.md#0x7_market_types_SettleTradeResult">SettleTradeResult</a><R> { |
1710 | 1703 | (self.settle_trade_f)(market, taker, maker, fill_id, settled_price, settled_size) |
|
1973 | 1966 | Market::V1 { |
1974 | 1967 | parent: <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/signer.md#0x1_signer_address_of">signer::address_of</a>(parent), |
1975 | 1968 | market: <a href="../../aptos-framework/../aptos-stdlib/../move-stdlib/doc/signer.md#0x1_signer_address_of">signer::address_of</a>(market), |
1976 | | - next_fill_id: 0, |
1977 | 1969 | config, |
1978 | 1970 | <a href="order_book.md#0x7_order_book">order_book</a>: new_order_book(), |
1979 | 1971 | <a href="pre_cancellation_tracker.md#0x7_pre_cancellation_tracker">pre_cancellation_tracker</a>, |
|
2007 | 1999 |
|
2008 | 2000 |
|
2009 | 2001 |
|
2010 | | -</details> |
2011 | | - |
2012 | | -<a id="0x7_market_types_next_fill_id"></a> |
2013 | | - |
2014 | | -## Function `next_fill_id` |
2015 | | - |
2016 | | - |
2017 | | - |
2018 | | -<pre><code><b>public</b> <b>fun</b> <a href="market_types.md#0x7_market_types_next_fill_id">next_fill_id</a><M: <b>copy</b>, drop, store>(self: &<b>mut</b> <a href="market_types.md#0x7_market_types_Market">market_types::Market</a><M>): u64 |
2019 | | -</code></pre> |
2020 | | - |
2021 | | - |
2022 | | - |
2023 | | -<details> |
2024 | | -<summary>Implementation</summary> |
2025 | | - |
2026 | | - |
2027 | | -<pre><code><b>public</b> <b>fun</b> <a href="market_types.md#0x7_market_types_next_fill_id">next_fill_id</a><M: store + <b>copy</b> + drop>(self: &<b>mut</b> <a href="market_types.md#0x7_market_types_Market">Market</a><M>): u64 { |
2028 | | - <b>let</b> next_fill_id = self.next_fill_id; |
2029 | | - self.next_fill_id += 1; |
2030 | | - next_fill_id |
2031 | | -} |
2032 | | -</code></pre> |
2033 | | - |
2034 | | - |
2035 | | - |
2036 | 2002 | </details> |
2037 | 2003 |
|
2038 | 2004 | <a id="0x7_market_types_get_order_book"></a> |
|
0 commit comments