Contract a8f785418f7210c2c22fce16b9208019d5a467b4eeaa679bcb671d59a6c21d3f

← Back to Index 📥 Download WASM

Meta

desc Splitter contract is used to distribute tokens to shareholders with predefined shares.
rssdkver 23.5.2#347f71141ddf69ef1873527c94ac98e79215f125
rsver 1.91.1

Instances

  • CAJNDGG7J3RZKRP5MKXMZHHZWS2U45DGHCLJ3EHVMXJ4ZYGZCZJNL5AF
  • CAMWKZZ5TS62UYISCHJK5HCBBNO35N7QSYUAMYPV3R3JPTHABDJ2VS3P
  • CAPEELU4N4RI2ESGLAK3WAXSFGMYQ5J6CQSFHB5IFAHJRAKATIG4JM36
  • CB2J4Z7W57U6LEVWJ5RQH7ZJ6C6L442D4MSTZLKZSGKGP5EFPBCM7ZUB
  • CB4PGJNRUJL5UUPOYSW3IEAGAK7XXDFD4QDD7RIZD3LFLZZPJF6VFODZ
  • CBLRQKXUMOH5VNTTQNMRWSDPTNMMM537YL25D5ENG5MIGICFLV3RRCJX
  • CBP45I33DXHZGOJDUFFKLLEEMBUVMEBQDRQHNVHK5FBUIPSN6HSSDOKK
  • CBZSTCWXG7HGLTY3OGCI2XSMHYVQZANVJTV2YYAVNZ6477ROD5DLIHYL
  • CCMBVZWHMNRYAFRA5X5YNMGPA36R2UKL3T6OLODMC36YPWSCNWEKX4WQ
  • CDC4QYQIEUPGJHMD2JSN2NBIJGYH5BS3ERHYACZZ6APNKZ232V3J2Y3Z
  • CDIFAXVVNZK4LVCUAGZCXA6FSV3BJOJW3NW66NKNIXIPSZARYMH7UAVX
  • CDNLSOIPHZ6MNS53VHQKTJFA534NRVNG5TVG2CPTEOPH3OH4ZXKF6E52
  • CDRT2LYP3DFJA4HU6D2NOHM2MEGWI7FL6HOEO5PBTCJOOCHKCRDSDWZ5
  • CDTA2UPTXHBXSKTUMYMLRJEL6FZD54DYT7MWU7FF4HSKOJBOORFMAH4P
  • CDUC4GAH3W2HYRGOGFSJ6Y5HIOEUWUHR66K3GA2MC5LEHGWNN2PTU6NI

Interface

fn init(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    shares: soroban_sdk::Vec,
    mutable: bool,
) -> Result<(), soroban_sdk::Error>
fn migrate(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn upgrade(
    env: soroban_sdk::Env,
    new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>
fn get_share(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
) -> Result, soroban_sdk::Error>
fn set_admin(
    env: soroban_sdk::Env,
    new_admin: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn buy_shares(
    env: soroban_sdk::Env,
    buyer: soroban_sdk::Address,
    seller: soroban_sdk::Address,
    shares_amount: i128,
) -> Result<(), soroban_sdk::Error>
fn get_config(env: soroban_sdk::Env) -> Result
fn get_listing(
    env: soroban_sdk::Env,
    seller: soroban_sdk::Address,
) -> Result, soroban_sdk::Error>
fn list_shares(
    env: soroban_sdk::Env,
) -> Result, soroban_sdk::Error>
fn lock_contract(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn update_shares(
    env: soroban_sdk::Env,
    shares: soroban_sdk::Vec,
) -> Result<(), soroban_sdk::Error>
fn cancel_listing(
    env: soroban_sdk::Env,
    seller: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn get_allocation(
    env: soroban_sdk::Env,
    shareholder: soroban_sdk::Address,
    token: soroban_sdk::Address,
) -> Result
fn list_all_sales(
    env: soroban_sdk::Env,
) -> Result, soroban_sdk::Error>
fn transfer_shares(
    env: soroban_sdk::Env,
    from: soroban_sdk::Address,
    to: soroban_sdk::Address,
    amount: i128,
) -> Result<(), soroban_sdk::Error>
fn transfer_tokens(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
    recipient: soroban_sdk::Address,
    amount: i128,
) -> Result<(), soroban_sdk::Error>
fn distribute_tokens(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn start_distribution(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
) -> Result
fn withdraw_allocation(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
    shareholder: soroban_sdk::Address,
    amount: i128,
) -> Result<(), soroban_sdk::Error>
fn list_shares_for_sale(
    env: soroban_sdk::Env,
    seller: soroban_sdk::Address,
    shares_amount: i128,
    price_per_share: i128,
    payment_token: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn process_distribution(
    env: soroban_sdk::Env,
    batch_size: u32,
) -> Result
fn finalize_distribution(env: soroban_sdk::Env) -> Result<(), soroban_sdk::Error>
fn get_commission_config(
    env: soroban_sdk::Env,
) -> Result
fn get_shareholder_count(env: soroban_sdk::Env) -> Result
fn set_buy_commission_rate(
    env: soroban_sdk::Env,
    new_rate_bps: i128,
) -> Result<(), soroban_sdk::Error>
fn set_commission_recipient(
    env: soroban_sdk::Env,
    new_recipient: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn set_distribution_commission_rate(
    env: soroban_sdk::Env,
    new_rate_bps: i128,
) -> Result<(), soroban_sdk::Error>

Imports

WebAssembly Text (WAT) ▶