Contract ab4fcd2a8735c4ebdd11cc8e2c5990b9693125aa690beeabe999e156cd27b213

← Back to Index 📥 Download WASM

Meta

rssdkver 22.0.11#34f7f53ae31e0fd02aab436a9872e79fa671ca02
rsver 1.94.1

Interface

fn get_admin(env: soroban_sdk::Env) -> soroban_sdk::Address

Return the PRICE_PRECISION-scaled price of asset.

Queries Reflector's lastprice(Asset::Stellar(asset)). Returns 0 when Reflector has no data for the asset.

fn get_price(env: soroban_sdk::Env, asset: soroban_sdk::Address) -> i128
fn accept_admin(env: soroban_sdk::Env, caller: soroban_sdk::Address)
fn get_decimals(env: soroban_sdk::Env) -> u32
fn get_reflector(env: soroban_sdk::Env) -> soroban_sdk::Address

Update the Reflector contract address and re-query decimals. Admin only.

fn set_reflector(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    reflector: soroban_sdk::Address,
)

Initialize the adapter.

decimals must match Reflector's reported precision (call reflector.decimals() off-chain to confirm — mainnet Reflector returns 14). Use refresh_decimals() after deployment if it ever needs updating.

fn __constructor(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    reflector: soroban_sdk::Address,
    decimals: u32,
)
fn get_max_age_secs(env: soroban_sdk::Env) -> u64

Re-read decimals() from the Reflector contract and persist it. Admin only.

Only needed if Reflector ever changes its decimal precision (very rare).

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

Set the maximum accepted upstream Reflector price age in seconds. Admin only.

fn set_max_age_secs(env: soroban_sdk::Env, caller: soroban_sdk::Address, secs: u64)
fn set_pending_admin(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    new_admin: soroban_sdk::Address,
)

Imports

WebAssembly Text (WAT) ▶