min_tokens_out is the caller-authorized minimum shares. Buyers sign it, so a
donation ordered between quote and execution cannot silently deliver less: the
call reverts instead. A caller that states no bound is rejected outright.
fn buy(
env: soroban_sdk::Env,
buyer: soroban_sdk::Address,
xlm_amount: i128,
min_tokens_out: i128,
)
fn burn(env: soroban_sdk::Env, from: soroban_sdk::Address, amount: i128)
fn name(env: soroban_sdk::Env) -> soroban_sdk::String
fn refund(env: soroban_sdk::Env, owner: soroban_sdk::Address, token_amount: i128)
fn symbol(env: soroban_sdk::Env) -> soroban_sdk::String
fn approve(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
spender: soroban_sdk::Address,
amount: i128,
expiration_ledger: u32,
)
fn balance(env: soroban_sdk::Env, id: soroban_sdk::Address) -> i128
fn min_buy(env: soroban_sdk::Env) -> i128
fn decimals(env: soroban_sdk::Env) -> u32
fn metadata(env: soroban_sdk::Env) -> TokenMetadata
fn reserves(env: soroban_sdk::Env) -> i128
fn transfer(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
to_muxed: soroban_sdk::MuxedAddress,
amount: i128,
)
fn allowance(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
spender: soroban_sdk::Address,
) -> i128
fn burn_from(
env: soroban_sdk::Env,
spender: soroban_sdk::Address,
from: soroban_sdk::Address,
amount: i128,
)
fn refund_to(
env: soroban_sdk::Env,
owner: soroban_sdk::Address,
recipient: soroban_sdk::Address,
token_amount: i128,
)
fn ops_address(env: soroban_sdk::Env) -> soroban_sdk::Address
Pure fee math: (dev_val, backing_val) for a principal amount.
fn preview_fees(env: soroban_sdk::Env, principal: i128) -> (i128, i128)
fn total_burned(env: soroban_sdk::Env) -> i128
fn total_minted(env: soroban_sdk::Env) -> i128
fn total_supply(env: soroban_sdk::Env) -> i128
ops = immutable dev commission recipient (cXLM).
native_xlm = native XLM SAC address for this network (resolved at deploy).
fn __constructor(
env: soroban_sdk::Env,
ops: soroban_sdk::Address,
native_xlm: soroban_sdk::Address,
)
Reserves * 1e6 / supply. Bootstrap (supply == 0) => 1e6 (1:1).
fn backing_ratio(env: soroban_sdk::Env) -> i128
fn transfer_from(
env: soroban_sdk::Env,
spender: soroban_sdk::Address,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
amount: i128,
)