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

API

data_source

Module0x5530…e2c0
Move path
0x5530…e2c0::data_source
Functions
73 public, 0 entry
Structs
1
data_source

Bytecode116 lines

The on-chain disassembly. Offsets are bytecode positions within each function.

// Move bytecode v6
module 55300367a2d40813727ccac4ecee977a39fb9cdb46f2e6b2c354b9798f5de2c0.data_source {
use 55300367a2d40813727ccac4ecee977a39fb9cdb46f2e6b2c354b9798f5de2c0::set;
use 0000000000000000000000000000000000000000000000000000000000000002::dynamic_field;
use 0000000000000000000000000000000000000000000000000000000000000002::object;
use 0000000000000000000000000000000000000000000000000000000000000002::tx_context;
use 99de5c967d8206ef4b75c0afab3df2a59eb02b05c282821db803831008ac25b4::external_address;
 
struct DataSource has copy, drop, store {
emitter_chain: u64,
emitter_address: ExternalAddress
}
 
public(friend) new_data_source_registry(Arg0: &mut UID, Arg1: &mut TxContext) {
B0:
0CopyLoc[0](Arg0: &mut UID)
1FreezeRef
2LdConst[0](vector<u8>: "dat..)
3Call dynamic_field::exists_<vector<u8>>(&UID, vector<u8>): bool
4Not
5BrFalse(7)
B1:
6Branch(13)
B2:
7MoveLoc[0](Arg0: &mut UID)
8Pop
9MoveLoc[1](Arg1: &mut TxContext)
10Pop
11LdConst[1](u64: 0)
12Abort
B3:
13MoveLoc[0](Arg0: &mut UID)
14LdConst[0](vector<u8>: "dat..)
15MoveLoc[1](Arg1: &mut TxContext)
16Call set::new<DataSource>(&mut TxContext): Set<DataSource>
17Call dynamic_field::add<vector<u8>, Set<DataSource>>(&mut UID, vector<u8>, Set<DataSource>)
18Ret
}
 
public(friend) add(Arg0: &mut UID, Arg1: DataSource) {
L2: loc0: DataSource
B0:
0CopyLoc[0](Arg0: &mut UID)
1CopyLoc[1](Arg1: DataSource)
2StLoc[2](loc0: DataSource)
3FreezeRef
4MoveLoc[2](loc0: DataSource)
5Call contains(&UID, DataSource): bool
6Not
7BrFalse(9)
B1:
8Branch(13)
B2:
9MoveLoc[0](Arg0: &mut UID)
10Pop
11LdConst[2](u64: 1)
12Abort
B3:
13MoveLoc[0](Arg0: &mut UID)
14LdConst[0](vector<u8>: "dat..)
15Call dynamic_field::borrow_mut<vector<u8>, Set<DataSource>>(&mut UID, vector<u8>): &mut Set<DataSource>
16MoveLoc[1](Arg1: DataSource)
17Call set::add<DataSource>(&mut Set<DataSource>, DataSource)
18Ret
}
 
public(friend) empty(Arg0: &mut UID) {
B0:
0MoveLoc[0](Arg0: &mut UID)
1LdConst[0](vector<u8>: "dat..)
2Call dynamic_field::borrow_mut<vector<u8>, Set<DataSource>>(&mut UID, vector<u8>): &mut Set<DataSource>
3Call set::empty<DataSource>(&mut Set<DataSource>)
4Ret
}
 
public contains(Arg0: &UID, Arg1: DataSource): bool {
B0:
0MoveLoc[0](Arg0: &UID)
1LdConst[0](vector<u8>: "dat..)
2Call dynamic_field::borrow<vector<u8>, Set<DataSource>>(&UID, vector<u8>): &Set<DataSource>
3MoveLoc[1](Arg1: DataSource)
4Call set::contains<DataSource>(&Set<DataSource>, DataSource): bool
5Ret
}
 
public(friend) new(Arg0: u64, Arg1: ExternalAddress): DataSource {
B0:
0MoveLoc[0](Arg0: u64)
1MoveLoc[1](Arg1: ExternalAddress)
2Pack[0](DataSource)
3Ret
}
 
public emitter_chain(Arg0: &DataSource): u64 {
B0:
0MoveLoc[0](Arg0: &DataSource)
1ImmBorrowField[0](DataSource.emitter_chain: u64)
2ReadRef
3Ret
}
 
public emitter_address(Arg0: &DataSource): ExternalAddress {
B0:
0MoveLoc[0](Arg0: &DataSource)
1ImmBorrowField[1](DataSource.emitter_address: ExternalAddress)
2ReadRef
3Ret
}
 
Constants [
0 => vector<u8>: "data_sources" // interpreted as UTF8 string
1 => u64: 0
2 => u64: 1
]
}