Contract 26394cfb2b9076479af256262a10b51ba39c650dacc0ff917d3aa1b7f4e4fee4

← Back to Index 📥 Download WASM

Meta

cliver 27.0.0#5a7c5fe76530bf4248477ac812fc757146b98cc4
rssdkver 26.1.0#175aa41306f383057a8cdfc84b68d931664fc34e
rsver 1.96.0

Instances

  • CCFNLSOWEVMNO3WANQRTU6JDLZFEKWKDERTY6GUKLATTQTEWJKL37OO7

Interface

fn config(env: soroban_sdk::Env) -> Config
fn set_vamm(env: soroban_sdk::Env, vamm: soroban_sdk::Address)
fn pool_key_of(
    env: soroban_sdk::Env,
    pool_id: soroban_sdk::BytesN<32>,
) -> Option
fn get_position(
    env: soroban_sdk::Env,
    account: Account,
    pool: PoolKey,
    tick_lower: i32,
    tick_upper: i32,
) -> Option

Wire the engine. admin governs config; price_oracle (Reflector) values collateral; apr_oracle supplies the variable factor / settlement.

fn __constructor(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    price_oracle: soroban_sdk::Address,
    apr_oracle: soroban_sdk::Address,
)
fn deposit_margin(
    env: soroban_sdk::Env,
    account: Account,
    token: soroban_sdk::Address,
    amount: i128,
)
fn fee_merkle_root(env: soroban_sdk::Env) -> Option>
fn is_liquidatable(env: soroban_sdk::Env, account: Account) -> bool
fn settle_position(
    env: soroban_sdk::Env,
    account: Account,
    pool: PoolKey,
    tick_lower: i32,
    tick_upper: i32,
) -> i128
fn withdraw_margin(
    env: soroban_sdk::Env,
    account: Account,
    token: soroban_sdk::Address,
    amount: i128,
)
fn get_margin_assets(
    env: soroban_sdk::Env,
    account: Account,
) -> soroban_sdk::Vec
fn liquidate_position(
    env: soroban_sdk::Env,
    liquidator: soroban_sdk::Address,
    account: Account,
    pool: PoolKey,
    tick_lower: i32,
    tick_upper: i32,
    collateral: soroban_sdk::Address,
    debt_to_cover: u128,
) -> (u128, u128, u128)
fn set_dust_threshold(env: soroban_sdk::Env, threshold: Wad)
fn get_account_balance(
    env: soroban_sdk::Env,
    account: Account,
    token: soroban_sdk::Address,
) -> i128
fn is_account_operator(
    env: soroban_sdk::Env,
    account_owner: soroban_sdk::Address,
    operator: soroban_sdk::Address,
) -> bool
fn set_fee_merkle_root(env: soroban_sdk::Env, root: soroban_sdk::BytesN<32>)
fn set_account_operator(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    operator: soroban_sdk::Address,
    approved: bool,
)
fn get_account_positions(
    env: soroban_sdk::Env,
    account: Account,
) -> soroban_sdk::Vec
fn update_account_margin(
    env: soroban_sdk::Env,
    account: Account,
    token: soroban_sdk::Address,
    delta: i128,
)
fn get_margin_asset_config(
    env: soroban_sdk::Env,
    token: soroban_sdk::Address,
) -> Option
fn get_position_settlement(
    env: soroban_sdk::Env,
    account: Account,
    pool: PoolKey,
    tick_lower: i32,
    tick_upper: i32,
) -> i128
fn set_margin_asset_config(
    env: soroban_sdk::Env,
    token: soroban_sdk::Address,
    config: AssetConfig,
)
fn check_margin_requirement(env: soroban_sdk::Env, account: Account) -> u128
fn get_account_margin_values(env: soroban_sdk::Env, account: Account) -> (u128, u128)
fn calculate_account_obligation(env: soroban_sdk::Env, account: Account) -> u128
fn calculate_liquidation_amounts(
    env: soroban_sdk::Env,
    pool: PoolKey,
    fixed_balance: i128,
    collateral: soroban_sdk::Address,
    debt_to_cover: u128,
    collateral_user_balance: u128,
) -> (u128, u128, u128)
fn set_worst_case_variable_factor(
    env: soroban_sdk::Env,
    pool: PoolKey,
    factor: WorstCaseVariableFactor,
)
fn update_position_post_vamm_action(
    env: soroban_sdk::Env,
    params: UpdatePositionParams,
    is_liquidation: bool,
) -> i128

Imports

WebAssembly Text (WAT) ▶