Contract 1f810c1722d2ce1d1e87733629fcfe6fed2ebd20510256e55c879c25eb4bdec1

← Back to Index 📥 Download WASM

Meta

rssdkver 21.7.7#5da789c50b18a4c2be53394138212fed56f0dfc4
rsver 1.91.0-nightly

Instances

  • CBQXXCSXBY5SNXAJVEKAYCXICRRNJ4RXK7RDUTIKHIJI7OHXC4C2M7OU

Interface

Initialize adapter with Aquarius router address

Arguments

  • admin - Admin address (can update router)
  • aquarius_router - Aquarius router contract address
fn initialize(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    aquarius_router: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>

Update Aquarius router address (admin only)

fn set_router(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    aquarius_router: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>

Get current Aquarius router address

fn get_router(
    env: soroban_sdk::Env,
) -> Result

Register a pool for a token pair (admin only)

Arguments

  • caller - Must be admin
  • token_a - First token
  • token_b - Second token
  • pool_address - Pool contract address from Aquarius
fn register_pool(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    token_a: soroban_sdk::Address,
    token_b: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>

Execute swap via Aquarius (K2 standard interface)

This is called by K2 contracts. It translates K2's simple interface to Aquarius's specific requirements (sorted tokens, pool_index, etc.)

Arguments

  • from_token - Token to swap from
  • to_token - Token to swap to
  • amount_in - Amount to swap
  • min_amount_out - Minimum acceptable output (slippage protection)
  • recipient - Address to receive output tokens

Returns

  • Actual amount of tokens received
fn execute_swap(
    env: soroban_sdk::Env,
    from_token: soroban_sdk::Address,
    to_token: soroban_sdk::Address,
    amount_in: u128,
    min_amount_out: u128,
    recipient: soroban_sdk::Address,
) -> Result

Get swap quote from Aquarius (for view functions)

Arguments

  • from_token - Token to swap from
  • to_token - Token to swap to
  • amount_in - Amount to get quote for

Returns

  • Expected output amount
fn get_quote(
    env: soroban_sdk::Env,
    from_token: soroban_sdk::Address,
    to_token: soroban_sdk::Address,
    amount_in: u128,
) -> Result

Imports

WebAssembly Text (WAT) ▶