set
Module0x5530…e2c0
- Move path
- 0x5530…e2c0::set
- Functions
- 44 public, 0 entry
- Structs
- 2
- Friend modules
- None
set
- accumulator4
- batch_price_attestation6
- contract_upgrade6
- data_source7
- deserialize7
- event2
- governance6
- governance_action8
- governance_instruction6
- hot_potato_vector6
- i646
- merkle_tree8
- migrate2
- price5
- price_feed5
- price_identifier2
- price_info16
- price_status4
- pyth19
- set4
- set_data_sources2
- set_fee_recipient2
- set_governance_data_source2
- set_stale_price_threshold2
- set_update_fee3
- setup2
- state30
- version_control2
Bytecode74 lines
The on-chain disassembly. Offsets are bytecode positions within each function.
// Move bytecode v6
module 55300367a2d40813727ccac4ecee977a39fb9cdb46f2e6b2c354b9798f5de2c0.set {
use 0000000000000000000000000000000000000000000000000000000000000001::vector;
use 0000000000000000000000000000000000000000000000000000000000000002::table;
use 0000000000000000000000000000000000000000000000000000000000000002::tx_context;
struct Unit has copy, drop, store {
dummy_field: bool
}
struct Set<Ty0: copy + drop + store> has store {
keys: vector<Ty0>,
elems: Table<Ty0, Unit>
}
public new<Ty0: copy + drop + store>(Arg0: &mut TxContext): Set<Ty0> {
B0:
0VecPack(7, 0)
1MoveLoc[0](Arg0: &mut TxContext)
2Call table::new<Ty0, Unit>(&mut TxContext): Table<Ty0, Unit>
3PackGeneric[0](Set<Ty0>)
4Ret
}
public add<Ty0: copy + drop + store>(Arg0: &mut Set<Ty0>, Arg1: Ty0) {
B0:
0CopyLoc[0](Arg0: &mut Set<Ty0>)
1MutBorrowFieldGeneric[0](Set.elems: Table<Ty0, Unit>)
2CopyLoc[1](Arg1: Ty0)
3LdFalse
4Pack[0](Unit)
5Call table::add<Ty0, Unit>(&mut Table<Ty0, Unit>, Ty0, Unit)
6MoveLoc[0](Arg0: &mut Set<Ty0>)
7MutBorrowFieldGeneric[1](Set.keys: vector<Ty0>)
8MoveLoc[1](Arg1: Ty0)
9VecPushBack(7)
10Ret
}
public contains<Ty0: copy + drop + store>(Arg0: &Set<Ty0>, Arg1: Ty0): bool {
B0:
0MoveLoc[0](Arg0: &Set<Ty0>)
1ImmBorrowFieldGeneric[0](Set.elems: Table<Ty0, Unit>)
2MoveLoc[1](Arg1: Ty0)
3Call table::contains<Ty0, Unit>(&Table<Ty0, Unit>, Ty0): bool
4Ret
}
public empty<Ty0: copy + drop + store>(Arg0: &mut Set<Ty0>) {
B0:
0CopyLoc[0](Arg0: &mut Set<Ty0>)
1ImmBorrowFieldGeneric[1](Set.keys: vector<Ty0>)
2Call vector::is_empty<Ty0>(&vector<Ty0>): bool
3Not
4BrFalse(14)
B1:
5Branch(6)
B2:
6CopyLoc[0](Arg0: &mut Set<Ty0>)
7MutBorrowFieldGeneric[0](Set.elems: Table<Ty0, Unit>)
8CopyLoc[0](Arg0: &mut Set<Ty0>)
9MutBorrowFieldGeneric[1](Set.keys: vector<Ty0>)
10VecPopBack(7)
11Call table::remove<Ty0, Unit>(&mut Table<Ty0, Unit>, Ty0): Unit
12Pop
13Branch(0)
B3:
14MoveLoc[0](Arg0: &mut Set<Ty0>)
15Pop
16Ret
}
}