Deposit an asset into the vault
fn deposit(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
token: soroban_sdk::Address,
amount: i128,
)
MANDATORY: CoreTX upgrade pattern
fn upgrade(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
new_wasm_hash: soroban_sdk::BytesN<32>,
)
Withdraw assets from the vault
fn withdraw(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
token: soroban_sdk::Address,
shares: i128,
)
MANDATORY: CoreTX admin transfer
fn set_admin(
env: soroban_sdk::Env,
current_admin: soroban_sdk::Address,
new_admin: soroban_sdk::Address,
)
MANDATORY: Public TTL extend function
fn extend_ttl(env: soroban_sdk::Env)
Legacy support for manual initialization if needed (e.g. tests)
fn initialize(env: soroban_sdk::Env, admin: soroban_sdk::Address)
Standard Protocol 22+ constructor. Can only be called once when the contract is deployed.
fn __constructor(env: soroban_sdk::Env, admin: soroban_sdk::Address)
Check the per-ledger cap for a token
fn get_token_cap(env: soroban_sdk::Env, token: soroban_sdk::Address) -> i128
Whitelist a token and set its per-ledger cap Defense 3: Per-Ledger Caps (Anti-Whale)
fn whitelist_token(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
token: soroban_sdk::Address,
cap: i128,
)
Get the internal accounting balance of a managed asset
fn get_managed_asset(env: soroban_sdk::Env, token: soroban_sdk::Address) -> i128