Search by name, SuiNS, address, digest, object ID, coin type or checkpoint.

Move path
0xcd86…fefa::vault_oracle
Functions
2815 public, 0 entry
Structs
13
Friend modules
vault_manage
vault_oracle

Declarations

Rebuilt from the module interface. No verified source is published, and function bodies are only available as bytecode.

module vault_oracle;
struct AssetPriceUpdated has copy, drop {
asset_type: String,
price: u256,
timestamp: u64,
}
struct DexSlippageSet has copy, drop {
dex_slippage: u256,
}
struct OracleConfig has store, key {
id: UID,
version: u64,
aggregators: Table<String, PriceInfo>,
update_interval: u64,
dex_slippage: u256,
}
struct OracleConfigUpgraded has copy, drop {
oracle_config_id: address,
version: u64,
}
struct PriceInfo has drop, store {
aggregator: address,
decimals: u8,
price: u256,
last_updated: u64,
}
struct PriceUpdated has copy, drop {
price: u256,
timestamp: u64,
}
struct PythAggregatorAdded has copy, drop {
asset_type: String,
aggregator: address,
}
struct PythAggregatorChanged has copy, drop {
asset_type: String,
old_aggregator: address,
new_aggregator: address,
}
struct PythAggregatorRemoved has copy, drop {
asset_type: String,
aggregator: address,
}
struct SwitchboardAggregatorAdded has copy, drop {
asset_type: String,
aggregator: address,
}
struct SwitchboardAggregatorChanged has copy, drop {
asset_type: String,
old_aggregator: address,
new_aggregator: address,
}
struct SwitchboardAggregatorRemoved has copy, drop {
asset_type: String,
aggregator: address,
}
struct UpdateIntervalSet has copy, drop {
update_interval: u64,
}
public(package) fun add_pyth_aggregator(&mut OracleConfig,&Clock,String,u8,&state::State,&price_info::PriceInfoObject)
public(package) fun add_switchboard_aggregator(&mut OracleConfig,&Clock,String,u8,&aggregator::Aggregator)
public fun asset_aggregator(&OracleConfig,String): address
public fun asset_price_last_updated(&OracleConfig,String): u64
public(package) fun change_pyth_aggregator(&mut OracleConfig,&Clock,String,&state::State,&price_info::PriceInfoObject)
public(package) fun change_switchboard_aggregator(&mut OracleConfig,&Clock,String,&aggregator::Aggregator)
public(package) fun check_version(&OracleConfig)
public fun coin_decimals(&OracleConfig,String): u8
public fun dex_slippage(&OracleConfig): u256
public fun get_asset_price(&OracleConfig,&Clock,String): u256
public fun get_current_price(&OracleConfig,&Clock,&aggregator::Aggregator): u256
public fun get_current_price_v2(&OracleConfig,&Clock,&state::State,&price_info::PriceInfoObject): u256
public fun get_normalized_asset_price(&OracleConfig,&Clock,String): u256
public fun get_pyth_object_identifier(&price_info::PriceInfoObject): address
public fun has_aggregator(&OracleConfig,String): bool
fun init()
fun is_rate_feed(address): bool
public(package) fun remove_pyth_aggregator(&mut OracleConfig,String)
public(package) fun remove_switchboard_aggregator(&mut OracleConfig,String)
public(package) fun set_dex_slippage(&mut OracleConfig,u256)
public(package) fun set_pyth_aggregator_for_vsui(&mut OracleConfig,&price_info::PriceInfoObject)
public(package) fun set_update_interval(&mut OracleConfig,u64)
public fun update_interval(&OracleConfig): u64
public fun update_price(&mut OracleConfig,&aggregator::Aggregator,&Clock,String)
public fun update_price_v2(&mut OracleConfig,&state::State,&price_info::PriceInfoObject,&Clock,String)
public fun update_price_v2_for_vsui(&mut OracleConfig,&state::State,&price_info::PriceInfoObject,&price_info::PriceInfoObject,&Clock,String)
public(package) fun upgrade_oracle_config(&mut OracleConfig)
public fun vsui_asset_type(): String