Contract 060114a83aba476492ee46c79138da2fb6a8226c862a05d103c5f21ca6b344a0

← 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

  • CCMGEB56YCUYGA62PTNEKN3U2FQ6IA7ZQFPPVRPSQUPWEPCDN7IODFSQ

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) ▶