fn bump(env: soroban_sdk::Env)
fn set_fee(env: soroban_sdk::Env, new_fee_bps: u32) -> Result<(), P2PError>
fn get_order(env: soroban_sdk::Env, order_id: u64) -> Result
fn get_trade(env: soroban_sdk::Env, trade_id: u64) -> Result
fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
fee_bps: u32,
) -> Result<(), P2PError>
Place a buy or sell order. Tokens are locked immediately. The engine then tries to auto-match against opposing orders.
For BUY: lock pay_token (the quote currency, e.g. USDC) For SELL: lock token (the base currency, e.g. XLIGHTSTARCOIN)
Returns the order ID.
fn place_order(
env: soroban_sdk::Env,
owner: soroban_sdk::Address,
side: OrderSide,
token: soroban_sdk::Address,
pay_token: soroban_sdk::Address,
amount: i128,
price: i128,
expiry_days: u32,
) -> Result
Cancel an active/partial order. Refunds remaining locked tokens.
fn cancel_order(env: soroban_sdk::Env, order_id: u64) -> Result<(), P2PError>
fn set_treasury(
env: soroban_sdk::Env,
treasury: soroban_sdk::Address,
) -> Result<(), P2PError>
fn get_buy_orders(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn get_sell_orders(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn get_user_orders(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
) -> soroban_sdk::Vec
fn get_user_trades(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
) -> soroban_sdk::Vec