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

Move path
0xbde4…f47d::robot
Functions
55 public, 5 entry
Structs
0
Friend modules
None
robot

Bytecode160 lines

The on-chain disassembly. Offsets are instruction numbers within each function.

// Move bytecode v6
module bde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d.robot {
use bde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::manage;
use bde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::staking;
use 0000000000000000000000000000000000000000000000000000000000000002::tx_context;
use 0000000000000000000000000000000000000000000000000000000000000003::sui_system;
 
entry public unstake_inactive_validators_v2(Arg0: &ACL, Arg1: &mut Staking, Arg2: &mut SuiSystemState, Arg3: &mut TxContext) {
B0:
0MoveLoc[0](Arg0: &ACL)
1CopyLoc[3](Arg3: &mut TxContext)
2FreezeRef
3Call tx_context::sender(&TxContext): address
4Call manage::is_robot(&ACL, address): bool
5BrFalse(7)
B1:
6Branch(15)
B2:
7MoveLoc[2](Arg2: &mut SuiSystemState)
8Pop
9MoveLoc[1](Arg1: &mut Staking)
10Pop
11MoveLoc[3](Arg3: &mut TxContext)
12Pop
13LdConst[0](u64: 1)
14Abort
B3:
15CopyLoc[1](Arg1: &mut Staking)
16FreezeRef
17Call staking::assert_version(&Staking)
18MoveLoc[1](Arg1: &mut Staking)
19MoveLoc[2](Arg2: &mut SuiSystemState)
20MoveLoc[3](Arg3: &mut TxContext)
21Call staking::unstake_inactive_validators(&mut Staking, &mut SuiSystemState, &mut TxContext)
22Ret
}
 
entry public update_validator_rewards_v2(Arg0: &ACL, Arg1: &mut Staking, Arg2: &mut SuiSystemState, Arg3: address, Arg4: &mut TxContext) {
B0:
0MoveLoc[0](Arg0: &ACL)
1CopyLoc[4](Arg4: &mut TxContext)
2FreezeRef
3Call tx_context::sender(&TxContext): address
4Call manage::is_robot(&ACL, address): bool
5BrFalse(7)
B1:
6Branch(15)
B2:
7MoveLoc[2](Arg2: &mut SuiSystemState)
8Pop
9MoveLoc[1](Arg1: &mut Staking)
10Pop
11MoveLoc[4](Arg4: &mut TxContext)
12Pop
13LdConst[0](u64: 1)
14Abort
B3:
15CopyLoc[1](Arg1: &mut Staking)
16FreezeRef
17Call staking::assert_version(&Staking)
18MoveLoc[1](Arg1: &mut Staking)
19MoveLoc[2](Arg2: &mut SuiSystemState)
20MoveLoc[3](Arg3: address)
21MoveLoc[4](Arg4: &mut TxContext)
22Call staking::update_validator_rewards(&mut Staking, &mut SuiSystemState, address, &mut TxContext)
23Ret
}
 
entry public sort_validators_v2(Arg0: &ACL, Arg1: &mut Staking, Arg2: vector<address>, Arg3: &mut TxContext) {
B0:
0MoveLoc[0](Arg0: &ACL)
1MoveLoc[3](Arg3: &mut TxContext)
2FreezeRef
3Call tx_context::sender(&TxContext): address
4Call manage::is_robot(&ACL, address): bool
5BrFalse(7)
B1:
6Branch(11)
B2:
7MoveLoc[1](Arg1: &mut Staking)
8Pop
9LdConst[0](u64: 1)
10Abort
B3:
11CopyLoc[1](Arg1: &mut Staking)
12FreezeRef
13Call staking::assert_version(&Staking)
14MoveLoc[1](Arg1: &mut Staking)
15MoveLoc[2](Arg2: vector<address>)
16Call staking::sort_validators(&mut Staking, vector<address>)
17Ret
}
 
entry public do_stake(Arg0: &ACL, Arg1: &mut Staking, Arg2: &mut SuiSystemState, Arg3: vector<address>, Arg4: &mut TxContext) {
B0:
0MoveLoc[0](Arg0: &ACL)
1CopyLoc[4](Arg4: &mut TxContext)
2FreezeRef
3Call tx_context::sender(&TxContext): address
4Call manage::is_robot(&ACL, address): bool
5BrFalse(7)
B1:
6Branch(15)
B2:
7MoveLoc[2](Arg2: &mut SuiSystemState)
8Pop
9MoveLoc[1](Arg1: &mut Staking)
10Pop
11MoveLoc[4](Arg4: &mut TxContext)
12Pop
13LdConst[0](u64: 1)
14Abort
B3:
15CopyLoc[1](Arg1: &mut Staking)
16FreezeRef
17Call staking::assert_version(&Staking)
18MoveLoc[1](Arg1: &mut Staking)
19MoveLoc[2](Arg2: &mut SuiSystemState)
20MoveLoc[3](Arg3: vector<address>)
21MoveLoc[4](Arg4: &mut TxContext)
22Call staking::do_stake(&mut Staking, &mut SuiSystemState, vector<address>, &mut TxContext)
23Ret
}
 
entry public do_unstake_onchain_v2(Arg0: &ACL, Arg1: &mut Staking, Arg2: &mut SuiSystemState, Arg3: vector<address>, Arg4: &mut TxContext) {
B0:
0MoveLoc[0](Arg0: &ACL)
1CopyLoc[4](Arg4: &mut TxContext)
2FreezeRef
3Call tx_context::sender(&TxContext): address
4Call manage::is_robot(&ACL, address): bool
5BrFalse(7)
B1:
6Branch(15)
B2:
7MoveLoc[2](Arg2: &mut SuiSystemState)
8Pop
9MoveLoc[1](Arg1: &mut Staking)
10Pop
11MoveLoc[4](Arg4: &mut TxContext)
12Pop
13LdConst[0](u64: 1)
14Abort
B3:
15CopyLoc[1](Arg1: &mut Staking)
16FreezeRef
17Call staking::assert_version(&Staking)
18MoveLoc[1](Arg1: &mut Staking)
19MoveLoc[2](Arg2: &mut SuiSystemState)
20MoveLoc[3](Arg3: vector<address>)
21MoveLoc[4](Arg4: &mut TxContext)
22Call staking::do_unstake_onchain_by_validator(&mut Staking, &mut SuiSystemState, vector<address>, &mut TxContext)
23Ret
}
 
Constants [
0 => u64: 1
]
}