object
Module0x0000…0002
- Move path
- 0x0000…0002::object
- Functions
- 3214 public, 0 entry
- Structs
- 2
object
- accumulator18
- accumulator_metadata2
- accumulator_settlement8
- address10
- address_alias5
- allowance40
- authenticator_state13
- bag10
- balance18
- bcs30
- bls1238143
- borrow4
- clock3
- coin54
- coin_registry43
- config11
- deny_list21
- derived_object3
- display14
- display_registry18
- dynamic_field19
- dynamic_object_field15
- ecdsa_k13
- ecdsa_r12
- ecvrf1
- ed255191
- event3
- forwarding_address1
- funds_accumulator12
- groth1610
- group_ops23
- hash2
- hex3
- hmac1
- kiosk41
- kiosk_extension14
- linked_table19
- math7
- nitro_attestation11
- object32
- object_bag11
- object_table10
- package26
- party5
- pay8
- poseidon2
- priority_queue8
- protocol_config1
- prover0
- random20
- rangeproofs3
- ristretto25518
- scratch18
- sui2
- table10
- table_vec12
- token45
- transfer16
- transfer_policy18
- tx_context19
- types1
- url4
- vdf4
- vec_map20
- vec_set11
- versioned7
- zklogin_verified_id9
- zklogin_verified_issuer6
Bytecode283 lines
The on-chain disassembly. Offsets are bytecode positions within each function.
// Move bytecode v7
module 2.object {
use 0000000000000000000000000000000000000000000000000000000000000001::bcs;
use 0000000000000000000000000000000000000000000000000000000000000002::address;
use 0000000000000000000000000000000000000000000000000000000000000002::tx_context;
struct ID has copy, drop, store {
bytes: address
}
struct UID has store {
id: ID
}
public id_to_bytes(Arg0: &ID): vector<u8> {
B0:
0MoveLoc[0](Arg0: &ID)
1ImmBorrowField[0](ID.bytes: address)
2Call bcs::to_bytes<address>(&address): vector<u8>
3Ret
}
public id_to_address(Arg0: &ID): address {
B0:
0MoveLoc[0](Arg0: &ID)
1ImmBorrowField[0](ID.bytes: address)
2ReadRef
3Ret
}
public id_from_bytes(Arg0: vector<u8>): ID {
B0:
0MoveLoc[0](Arg0: vector<u8>)
1Call address::from_bytes(vector<u8>): address
2Call id_from_address(address): ID
3Ret
}
public id_from_address(Arg0: address): ID {
B0:
0MoveLoc[0](Arg0: address)
1Pack[0](ID)
2Ret
}
sui_system_state(Arg0: &TxContext): UID {
B0:
0MoveLoc[0](Arg0: &TxContext)
1Call tx_context::sender(&TxContext): address
2LdConst[12](address: 0x00..)
3Eq
4BrFalse(6)
B1:
5Branch(8)
B2:
6LdConst[11](u64: 0)
7Abort
B3:
8LdConst[0](address: 0x00..)
9Pack[0](ID)
10Pack[1](UID)
11Ret
}
public(friend) clock(): UID {
B0:
0LdConst[1](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) authenticator_state(): UID {
B0:
0LdConst[2](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) randomness_state(): UID {
B0:
0LdConst[3](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) sui_deny_list_object_id(): UID {
B0:
0LdConst[4](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) sui_accumulator_root_object_id(): UID {
B0:
0LdConst[5](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) sui_accumulator_root_address(): address {
B0:
0LdConst[5](address: 0x00..)
1Ret
}
public(friend) sui_coin_registry_object_id(): UID {
B0:
0LdConst[7](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) sui_coin_registry_address(): address {
B0:
0LdConst[7](address: 0x00..)
1Ret
}
public(friend) sui_display_registry_object_id(): UID {
B0:
0LdConst[8](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) sui_display_registry_address(): address {
B0:
0LdConst[8](address: 0x00..)
1Ret
}
bridge(): UID {
B0:
0LdConst[6](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) address_alias_state(): UID {
B0:
0LdConst[9](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public(friend) forwarding_address_registry(): UID {
B0:
0LdConst[10](address: 0x00..)
1Pack[0](ID)
2Pack[1](UID)
3Ret
}
public uid_as_inner(Arg0: &UID): &ID {
B0:
0MoveLoc[0](Arg0: &UID)
1ImmBorrowField[1](UID.id: ID)
2Ret
}
public uid_to_inner(Arg0: &UID): ID {
B0:
0MoveLoc[0](Arg0: &UID)
1ImmBorrowField[1](UID.id: ID)
2ReadRef
3Ret
}
public uid_to_bytes(Arg0: &UID): vector<u8> {
B0:
0MoveLoc[0](Arg0: &UID)
1ImmBorrowField[1](UID.id: ID)
2ImmBorrowField[0](ID.bytes: address)
3Call bcs::to_bytes<address>(&address): vector<u8>
4Ret
}
public uid_to_address(Arg0: &UID): address {
B0:
0MoveLoc[0](Arg0: &UID)
1ImmBorrowField[1](UID.id: ID)
2ImmBorrowField[0](ID.bytes: address)
3ReadRef
4Ret
}
public new(Arg0: &mut TxContext): UID {
B0:
0MoveLoc[0](Arg0: &mut TxContext)
1Call tx_context::fresh_object_address(&mut TxContext): address
2Pack[0](ID)
3Pack[1](UID)
4Ret
}
public delete(Arg0: UID) {
B0:
0MoveLoc[0](Arg0: UID)
1Unpack[1](UID)
2Unpack[0](ID)
3Call delete_impl(address)
4Ret
}
public id<Ty0: key>(Arg0: &Ty0): ID {
B0:
0MoveLoc[0](Arg0: &Ty0)
1Call borrow_uid<Ty0>(&Ty0): &UID
2ImmBorrowField[1](UID.id: ID)
3ReadRef
4Ret
}
public borrow_id<Ty0: key>(Arg0: &Ty0): &ID {
B0:
0MoveLoc[0](Arg0: &Ty0)
1Call borrow_uid<Ty0>(&Ty0): &UID
2ImmBorrowField[1](UID.id: ID)
3Ret
}
public id_bytes<Ty0: key>(Arg0: &Ty0): vector<u8> {
B0:
0MoveLoc[0](Arg0: &Ty0)
1Call borrow_uid<Ty0>(&Ty0): &UID
2ImmBorrowField[1](UID.id: ID)
3Call bcs::to_bytes<ID>(&ID): vector<u8>
4Ret
}
public id_address<Ty0: key>(Arg0: &Ty0): address {
B0:
0MoveLoc[0](Arg0: &Ty0)
1Call borrow_uid<Ty0>(&Ty0): &UID
2ImmBorrowField[1](UID.id: ID)
3ImmBorrowField[0](ID.bytes: address)
4ReadRef
5Ret
}
native borrow_uid<Ty0: key>(Arg0: &Ty0): &UID;
public(friend) new_uid_from_hash(Arg0: address, Arg1: address): UID {
B0:
0MoveLoc[0](Arg0: address)
1CopyLoc[1](Arg1: address)
2Call record_new_uid_from_hash(address, address)
3MoveLoc[1](Arg1: address)
4Pack[0](ID)
5Pack[1](UID)
6Ret
}
native delete_impl(Arg0: address);
native record_new_uid_from_hash(Arg0: address, Arg1: address);
Constants [
0 => address: 0x0000000000000000000000000000000000000000000000000000000000000005
1 => address: 0x0000000000000000000000000000000000000000000000000000000000000006
2 => address: 0x0000000000000000000000000000000000000000000000000000000000000007
3 => address: 0x0000000000000000000000000000000000000000000000000000000000000008
4 => address: 0x0000000000000000000000000000000000000000000000000000000000000403
5 => address: 0x0000000000000000000000000000000000000000000000000000000000000acc
6 => address: 0x0000000000000000000000000000000000000000000000000000000000000009
7 => address: 0x000000000000000000000000000000000000000000000000000000000000000c
8 => address: 0x000000000000000000000000000000000000000000000000000000000000000d
9 => address: 0x000000000000000000000000000000000000000000000000000000000000000a
10 => address: 0x00000000000000000000000000000000000000000000000000000000000000fa
11 => u64: 0
12 => address: 0x0000000000000000000000000000000000000000000000000000000000000000
]
}