9.1Spark限价单智能合约 (Spark Limit Orders Smart Contract)
版本警告 (Version warning)
关于 (About)
文档 (Docs)
storage {
orders: StorageMap<u64, Order> = StorageMap {},
orders_amount: u64 = 0,
deposits: StorageMap<Address, u64> = StorageMap {},
trades: StorageVec<Trade> = StorageVec {},
}abi LimitOrders {
#[storage(read)]
fn get_deposit_by_address(address: Address) -> u64;
#[payable]
#[storage(read, write)]
fn deposit();
#[storage(read, write)]
fn withdraw(amount: u64);
#[storage(read)]
fn orders_amount() -> u64;
#[storage(read)]
fn trades(offset: u64) -> (Option<Trade>, Option<Trade>, Option<Trade>, Option<Trade>, Option<Trade>, Option<Trade>, Option<Trade>, Option<Trade>, Option<Trade>, Option<Trade>);
#[storage(read)]
fn orders(offset: u64) -> (Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>);
#[storage(read)]
fn orders_by_id(ids: [u64; 10]) -> (Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>, Option<Order>);
#[storage(read)]
fn order_by_id(id: u64) -> Order;
#[payable]
#[storage(read, write)]
fn create_order(asset1: ContractId, amount1: u64, matcher_fee: u64) -> u64;
#[storage(read, write)]
fn cancel_order(id: u64);
#[payable]
#[storage(read, write)]
fn fulfill_order(id: u64);
#[storage(read, write)]
fn match_orders(order_id_a: u64, order_id_b: u64);
}
使用Fuel Rust SDK设置和运行测试 (Setting up and running the tests using Fuel Rust SDK)
Last updated