Module 0xb::treasury
- Struct
BridgeTreasury
- Struct
BridgeTokenMetadata
- Struct
ForeignTokenRegistration
- Struct
UpdateTokenPriceEvent
- Struct
NewTokenEvent
- Struct
TokenRegistrationEvent
- Constants
- Function
token_id
- Function
decimal_multiplier
- Function
notional_value
- Function
register_foreign_token
- Function
add_new_token
- Function
create
- Function
burn
- Function
mint
- Function
update_asset_notional_price
- Function
get_token_metadata
use 0x1::ascii;
use 0x1::option;
use 0x1::type_name;
use 0x1::u64;
use 0x2::address;
use 0x2::bag;
use 0x2::coin;
use 0x2::event;
use 0x2::hex;
use 0x2::object;
use 0x2::object_bag;
use 0x2::package;
use 0x2::transfer;
use 0x2::tx_context;
use 0x2::vec_map;
Struct BridgeTreasury
struct BridgeTreasury has store
Click to open
Fields
Struct BridgeTokenMetadata
struct BridgeTokenMetadata has copy, drop, store
Click to open
Fields
Struct ForeignTokenRegistration
struct ForeignTokenRegistration has store
Click to open
Fields
Struct UpdateTokenPriceEvent
struct UpdateTokenPriceEvent has copy, drop
Click to open
Fields
Struct NewTokenEvent
struct NewTokenEvent has copy, drop
Click to open
Fields
Struct TokenRegistrationEvent
struct TokenRegistrationEvent has copy, drop
Click to open
Fields
Constants
const EInvalidNotionalValue: u64 = 4;
const EInvalidUpgradeCap: u64 = 2;
const ETokenSupplyNonZero: u64 = 3;
const EUnsupportedTokenType: u64 = 1;
Function token_id
public fun token_id<T>(self: &treasury::BridgeTreasury): u8
Click to open
Implementation
Function decimal_multiplier
public fun decimal_multiplier<T>(self: &treasury::BridgeTreasury): u64
Click to open
Implementation
Function notional_value
public fun notional_value<T>(self: &treasury::BridgeTreasury): u64
Click to open
Implementation
Function register_foreign_token
public(friend) fun register_foreign_token<T>(self: &mut treasury::BridgeTreasury, tc: coin::TreasuryCap<T>, uc: package::UpgradeCap, metadata: &coin::CoinMetadata<T>)
Click to open
Implementation
Function add_new_token
public(friend) fun add_new_token(self: &mut treasury::BridgeTreasury, token_name: ascii::String, token_id: u8, native_token: bool, notional_value: u64)
Click to open
Implementation
Function create
public(friend) fun create(ctx: &mut tx_context::TxContext): treasury::BridgeTreasury
Click to open
Implementation
Function burn
public(friend) fun burn<T>(self: &mut treasury::BridgeTreasury, token: coin::Coin<T>)
Click to open
Implementation
Function mint
public(friend) fun mint<T>(self: &mut treasury::BridgeTreasury, amount: u64, ctx: &mut tx_context::TxContext): coin::Coin<T>
Click to open
Implementation
Function update_asset_notional_price
public(friend) fun update_asset_notional_price(self: &mut treasury::BridgeTreasury, token_id: u8, new_usd_price: u64)
Click to open
Implementation
Function get_token_metadata
fun get_token_metadata<T>(self: &treasury::BridgeTreasury): treasury::BridgeTokenMetadata
Click to open