Contract a2b1fe28fe6bcdad4bd7c2f5a0955f4b943ee0045f638b4bccf4e6eb638dc2a8

← Back to Index 📥 Download WASM

Meta

rssdkver 22.0.8#f46e9e0610213bbb72285566f9dd960ff96d03d8
rsver 1.88.0

Instances

  • CA6QAYBMMWFVWQJLQZLJZQMTFZXYNPTT2QOFKPVUJ6A5CZVLUV6SPC6S
  • CALNCI5AP4VEAEQSIAOK3G6FXMKXB4JZLZ6W5TZE44QP4ACVO7BJLS6I
  • CANYZEZ2RWR5GVRDAT56IEHMAEPFGAV2DO4H4HQSDQ6HCEZJENETDOQ6
  • CB6WXWFQW7BJFZTO6XZWX2CH2DZLD2L62QPQR5UFRIAOKJYHUAMWAMQE
  • CB7ZYYEADGKG3YWR6FHZIMENYNGQRY77FDZU2KHHPTXOFC6BMH6LFFEY
  • CBCBKOW3UEF2752OS3H2AAW6EWHAKBO27AOTFHBYNWFVLVP3JALWWZW4
  • CBH3M3VZQ4N7AFA53BNZBGHEZNYIOLDNGGQRUCDUQWQUOUP4AWBR5GBL
  • CBXRCAMI3ZOEFEQVYLB6I7QNG4ASJRYGIBBNDI5XL5XTZKIZ2NMSNIAE
  • CC5OJHEN65OF7RS2MPJKWBABEDJIY3O3OIMARYQJGV3GYIS5LABTA6IM
  • CCBESNFTAJNAWOIOXPUUNLEKGI64UEFYE6YVJUL2267LCNSQHTEREXSW
  • CCQ3MI7BYVKT3IPKLSR5HFXMFKMW3Z6DXLKSOSYAISWAPU5MRUKCOP6O
  • CCYMPB2LATOMFUUXVKQ3IHEGYU6DSOO6LREZSPG6SW72RCCXMEQAWVRJ
  • CCZEU2UF4MWSLU54JLXFOY5VUTTH2M5SU7BV4P453TR37VX6PHYNKNW6
  • CD66AIUOEQ7OS5O4RUQ5LBDID36GKUI74JOBXOAQBOBOIV65FGHUXQA3
  • CDWG6EAI37SECCKZMF6I5HPBLHGR6XYSDQGFF6POQ63WWJHNYWYMIV5D

Interface

Initialize a new escrow with deterministic address calculation This function should be called by a factory contract that deploys this escrow with a deterministic address based on the immutables hash

fn deploy(
    env: soroban_sdk::Env,
    order_hash: soroban_sdk::BytesN<32>,
    hashlock: soroban_sdk::BytesN<32>,
    maker: soroban_sdk::Address,
    taker: soroban_sdk::Address,
    token: soroban_sdk::Address,
    amount: i128,
    safety_deposit: i128,
    timelocks: u64,
) -> soroban_sdk::Address

Get the hash of the current escrow's immutables This can be used by external contracts to verify the escrow address

fn get_immutables_hash(env: soroban_sdk::Env) -> soroban_sdk::BytesN<32>

Withdraw funds by revealing the secret

fn withdraw(
    env: soroban_sdk::Env,
    secret: soroban_sdk::BytesN<32>,
    _unwrap_native: bool,
)

Cancel escrow and return funds

fn cancel(env: soroban_sdk::Env, caller: soroban_sdk::Address)

Public withdrawal after timelock expiry

fn public_withdraw(
    env: soroban_sdk::Env,
    secret: soroban_sdk::BytesN<32>,
    caller: soroban_sdk::Address,
)

Get current escrow state

fn get_state(env: soroban_sdk::Env) -> State

Get escrow immutables

fn get_immutables(env: soroban_sdk::Env) -> Immutables

Imports

WebAssembly Text (WAT) ▶