Package::vault bytecode | tide- Move path
- 0x6eed…85f4::vault
- Functions
- 1110 public, 2 entry
- Structs
- 2
- Friend modules
- None
vault
The on-chain disassembly. Offsets are bytecode positions within each function.
1// Move bytecode v6
2module 6eed7ba483e3940a9c7b36e5e117c84f6a39c49d84d29946565b85f21c0b85f4.vault {
3use 6eed7ba483e3940a9c7b36e5e117c84f6a39c49d84d29946565b85f21c0b85f4::event;
4use 0000000000000000000000000000000000000000000000000000000000000002::balance;
5use 0000000000000000000000000000000000000000000000000000000000000002::coin;
6use 0000000000000000000000000000000000000000000000000000000000000002::object;
7use 0000000000000000000000000000000000000000000000000000000000000002::transfer;
8use 0000000000000000000000000000000000000000000000000000000000000002::tx_context;
9
10struct AdminCap has store, key {
11 id: UID
12}
13
14
struct Vault<phantom Ty0> has store, key {
19init(Arg0: &mut TxContext) {
210CopyLoc[0](Arg0: &mut TxContext)
221Call object::new(&mut TxContext): UID
243MoveLoc[0](Arg0: &mut TxContext)
265Call tx_context::sender(&TxContext): address
276Call transfer::transfer<AdminCap>(AdminCap, address)
31entry public create_vault<Ty0>(Arg0: &AdminCap, Arg1: &mut TxContext) {
330MoveLoc[1](Arg1: &mut TxContext)
341Call object::new(&mut TxContext): UID
352Call balance::zero<Ty0>(): Balance<Ty0>
363PackGeneric[0](Vault<Ty0>)
374Call transfer::share_object<Vault<Ty0>>(Vault<Ty0>)
41entry public new_admin(Arg0: address, Arg1: &AdminCap, Arg2: &mut TxContext) {
430MoveLoc[2](Arg2: &mut TxContext)
441Call object::new(&mut TxContext): UID
463MoveLoc[0](Arg0: address)
474Call transfer::transfer<AdminCap>(AdminCap, address)
51public deposit<Ty0>(Arg0: &mut Vault<Ty0>, Arg1: Balance<Ty0>, Arg2: &AdminCap) {
530MoveLoc[0](Arg0: &mut Vault<Ty0>)
541MutBorrowFieldGeneric[0](Vault.reserve: Balance<Ty0>)
552MoveLoc[1](Arg1: Balance<Ty0>)
563Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
61public deposit_with_threshold<Ty0>(Arg0: &mut Vault<Ty0>, Arg1: Balance<Ty0>, Arg2: u64, Arg3: &AdminCap) {
630ImmBorrowLoc[1](Arg1: Balance<Ty0>)
641Call balance::value<Ty0>(&Balance<Ty0>): u64
716MoveLoc[0](Arg0: &mut Vault<Ty0>)
7610MoveLoc[0](Arg0: &mut Vault<Ty0>)
7711MutBorrowFieldGeneric[0](Vault.reserve: Balance<Ty0>)
7812MoveLoc[1](Arg1: Balance<Ty0>)
7913Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
84public deposit_with_threshold_and_event<Ty0>(Arg0: &mut Vault<Ty0>, Arg1: Balance<Ty0>, Arg2: u64, Arg3: &AdminCap) {
860ImmBorrowLoc[1](Arg1: Balance<Ty0>)
871Call balance::value<Ty0>(&Balance<Ty0>): u64
946MoveLoc[0](Arg0: &mut Vault<Ty0>)
9910CopyLoc[0](Arg0: &mut Vault<Ty0>)
10112Call object::id<Vault<Ty0>>(&Vault<Ty0>): ID
10213ImmBorrowLoc[1](Arg1: Balance<Ty0>)
10314Call balance::value<Ty0>(&Balance<Ty0>): u64
10415Call event::emit_deposit_event(ID, u64)
10516MoveLoc[0](Arg0: &mut Vault<Ty0>)
10617MutBorrowFieldGeneric[0](Vault.reserve: Balance<Ty0>)
10718MoveLoc[1](Arg1: Balance<Ty0>)
10819Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
113public deposit_with_event<Ty0>(Arg0: &mut Vault<Ty0>, Arg1: Balance<Ty0>, Arg2: &AdminCap) {
1150CopyLoc[0](Arg0: &mut Vault<Ty0>)
1172Call object::id<Vault<Ty0>>(&Vault<Ty0>): ID
1183ImmBorrowLoc[1](Arg1: Balance<Ty0>)
1194Call balance::value<Ty0>(&Balance<Ty0>): u64
1205Call event::emit_deposit_event(ID, u64)
1216MoveLoc[0](Arg0: &mut Vault<Ty0>)
1227MutBorrowFieldGeneric[0](Vault.reserve: Balance<Ty0>)
1238MoveLoc[1](Arg1: Balance<Ty0>)
1249Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
129public deposit_partial<Ty0>(Arg0: &mut Vault<Ty0>, Arg1: Balance<Ty0>, Arg2: u64, Arg3: u64, Arg4: &AdminCap, Arg5: &mut TxContext) {
1310ImmBorrowLoc[1](Arg1: Balance<Ty0>)
1321Call balance::value<Ty0>(&Balance<Ty0>): u64
1332MoveLoc[2](Arg2: u64)
1396MoveLoc[0](Arg0: &mut Vault<Ty0>)
1418MoveLoc[5](Arg5: &mut TxContext)
14612CopyLoc[0](Arg0: &mut Vault<Ty0>)
14814Call object::id<Vault<Ty0>>(&Vault<Ty0>): ID
14915ImmBorrowLoc[1](Arg1: Balance<Ty0>)
15016Call balance::value<Ty0>(&Balance<Ty0>): u64
15117Call event::emit_deposit_event(ID, u64)
15218MutBorrowLoc[1](Arg1: Balance<Ty0>)
15319MoveLoc[3](Arg3: u64)
15420Call balance::split<Ty0>(&mut Balance<Ty0>, u64): Balance<Ty0>
15521CopyLoc[5](Arg5: &mut TxContext)
15622Call coin::from_balance<Ty0>(Balance<Ty0>, &mut TxContext): Coin<Ty0>
15723MoveLoc[5](Arg5: &mut TxContext)
15925Call tx_context::sender(&TxContext): address
16026Call transfer::public_transfer<Coin<Ty0>>(Coin<Ty0>, address)
16127MoveLoc[0](Arg0: &mut Vault<Ty0>)
16228MutBorrowFieldGeneric[0](Vault.reserve: Balance<Ty0>)
16329MoveLoc[1](Arg1: Balance<Ty0>)
16430Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
169public withdraw<Ty0>(Arg0: &mut Vault<Ty0>, Arg1: u64, Arg2: &AdminCap): Balance<Ty0> {
1710MoveLoc[0](Arg0: &mut Vault<Ty0>)
1721MutBorrowFieldGeneric[0](Vault.reserve: Balance<Ty0>)
1732MoveLoc[1](Arg1: u64)
1743Call balance::split<Ty0>(&mut Balance<Ty0>, u64): Balance<Ty0>
178public deposit_coin<Ty0>(Arg0: &mut Vault<Ty0>, Arg1: Coin<Ty0>, Arg2: &AdminCap) {
1800MoveLoc[0](Arg0: &mut Vault<Ty0>)
1811MutBorrowFieldGeneric[0](Vault.reserve: Balance<Ty0>)
1822MoveLoc[1](Arg1: Coin<Ty0>)
1833Call coin::into_balance<Ty0>(Coin<Ty0>): Balance<Ty0>
1844Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
189public withdraw_coin<Ty0>(Arg0: &mut Vault<Ty0>, Arg1: u64, Arg2: &AdminCap, Arg3: &mut TxContext): Coin<Ty0> {
1910MoveLoc[0](Arg0: &mut Vault<Ty0>)
1921MutBorrowFieldGeneric[0](Vault.reserve: Balance<Ty0>)
1932MoveLoc[1](Arg1: u64)
1943MoveLoc[3](Arg3: &mut TxContext)
1954Call coin::take<Ty0>(&mut Balance<Ty0>, u64, &mut TxContext): Coin<Ty0>