display
Module0x9911…a9ec
- Move path
- 0x859e…b7cb::display
- Functions
- 77 public, 0 entry
- Structs
- 0
- Friend modules
- None
Bytecode410 lines
The on-chain disassembly. Offsets are bytecode positions within each function.
// Move bytecode v6
module 859eb18bd5b5e8cc32deb6dfb1c39941008ab3c6e27f0b8ce2364be7102bb7cb.display {
use 0000000000000000000000000000000000000000000000000000000000000001::bcs;
use 0000000000000000000000000000000000000000000000000000000000000001::string;
use 0000000000000000000000000000000000000000000000000000000000000001::vector;
use 0000000000000000000000000000000000000000000000000000000000000002::object;
use 0000000000000000000000000000000000000000000000000000000000000002::vec_map;
public from_vec(Arg0: vector<String>): String {
L1: loc0: String
L2: loc1: u64
L3: loc2: String
B0:
0LdConst[1](vector<u8>: "[" ..)
1Call string::utf8(vector<u8>): String
2StLoc[3](loc2: String)
3MutBorrowLoc[0](Arg0: vector<String>)
4Call vector::reverse<String>(&mut vector<String>)
5ImmBorrowLoc[0](Arg0: vector<String>)
6VecLen(1)
7StLoc[2](loc1: u64)
B1:
8CopyLoc[2](loc1: u64)
9LdU64(0)
10Gt
11BrFalse(37)
B2:
12Branch(13)
B3:
13MutBorrowLoc[0](Arg0: vector<String>)
14VecPopBack(1)
15StLoc[1](loc0: String)
16MutBorrowLoc[3](loc2: String)
17LdConst[2](vector<u8>: """ ..)
18Call string::append_utf8(&mut String, vector<u8>)
19MutBorrowLoc[3](loc2: String)
20MoveLoc[1](loc0: String)
21Call string::append(&mut String, String)
22MutBorrowLoc[3](loc2: String)
23LdConst[2](vector<u8>: """ ..)
24Call string::append_utf8(&mut String, vector<u8>)
25MoveLoc[2](loc1: u64)
26LdU64(1)
27Sub
28StLoc[2](loc1: u64)
29CopyLoc[2](loc1: u64)
30LdU64(0)
31Neq
32BrFalse(36)
B4:
33MutBorrowLoc[3](loc2: String)
34LdConst[3](vector<u8>: "," ..)
35Call string::append_utf8(&mut String, vector<u8>)
B5:
36Branch(8)
B6:
37MutBorrowLoc[3](loc2: String)
38LdConst[4](vector<u8>: "]" ..)
39Call string::append_utf8(&mut String, vector<u8>)
40MoveLoc[3](loc2: String)
41Ret
}
public from_vec_utf8(Arg0: vector<vector<u8>>): String {
L1: loc0: vector<u8>
L2: loc1: u64
L3: loc2: String
B0:
0LdConst[1](vector<u8>: "[" ..)
1Call string::utf8(vector<u8>): String
2StLoc[3](loc2: String)
3MutBorrowLoc[0](Arg0: vector<vector<u8>>)
4Call vector::reverse<vector<u8>>(&mut vector<vector<u8>>)
5ImmBorrowLoc[0](Arg0: vector<vector<u8>>)
6VecLen(10)
7StLoc[2](loc1: u64)
B1:
8CopyLoc[2](loc1: u64)
9LdU64(0)
10Gt
11BrFalse(37)
B2:
12Branch(13)
B3:
13MutBorrowLoc[0](Arg0: vector<vector<u8>>)
14VecPopBack(10)
15StLoc[1](loc0: vector<u8>)
16MutBorrowLoc[3](loc2: String)
17LdConst[2](vector<u8>: """ ..)
18Call string::append_utf8(&mut String, vector<u8>)
19MutBorrowLoc[3](loc2: String)
20MoveLoc[1](loc0: vector<u8>)
21Call string::append_utf8(&mut String, vector<u8>)
22MutBorrowLoc[3](loc2: String)
23LdConst[2](vector<u8>: """ ..)
24Call string::append_utf8(&mut String, vector<u8>)
25MoveLoc[2](loc1: u64)
26LdU64(1)
27Sub
28StLoc[2](loc1: u64)
29CopyLoc[2](loc1: u64)
30LdU64(0)
31Neq
32BrFalse(36)
B4:
33MutBorrowLoc[3](loc2: String)
34LdConst[3](vector<u8>: "," ..)
35Call string::append_utf8(&mut String, vector<u8>)
B5:
36Branch(8)
B6:
37MutBorrowLoc[3](loc2: String)
38LdConst[4](vector<u8>: "]" ..)
39Call string::append_utf8(&mut String, vector<u8>)
40MoveLoc[3](loc2: String)
41Ret
}
public from_vec_map(Arg0: VecMap<String, String>): String {
L1: loc0: String
L2: loc1: String
L3: loc2: String
L4: loc3: vector<String>
L5: loc4: u64
L6: loc5: String
B0:
0LdConst[5](vector<u8>: "{" ..)
1Call string::utf8(vector<u8>): String
2StLoc[6](loc5: String)
3ImmBorrowLoc[0](Arg0: VecMap<String, String>)
4Call vec_map::keys<String, String>(&VecMap<String, String>): vector<String>
5StLoc[4](loc3: vector<String>)
6MutBorrowLoc[4](loc3: vector<String>)
7Call vector::reverse<String>(&mut vector<String>)
8ImmBorrowLoc[4](loc3: vector<String>)
9VecLen(1)
10StLoc[5](loc4: u64)
B1:
11CopyLoc[5](loc4: u64)
12LdU64(0)
13Gt
14BrFalse(54)
B2:
15Branch(16)
B3:
16MutBorrowLoc[4](loc3: vector<String>)
17VecPopBack(1)
18StLoc[2](loc1: String)
19MutBorrowLoc[0](Arg0: VecMap<String, String>)
20ImmBorrowLoc[2](loc1: String)
21Call vec_map::remove<String, String>(&mut VecMap<String, String>, &String): String * String
22StLoc[1](loc0: String)
23StLoc[3](loc2: String)
24MutBorrowLoc[6](loc5: String)
25LdConst[2](vector<u8>: """ ..)
26Call string::append_utf8(&mut String, vector<u8>)
27MutBorrowLoc[6](loc5: String)
28MoveLoc[3](loc2: String)
29Call string::append(&mut String, String)
30MutBorrowLoc[6](loc5: String)
31LdConst[6](vector<u8>: "": ..)
32Call string::append_utf8(&mut String, vector<u8>)
33MutBorrowLoc[6](loc5: String)
34LdConst[2](vector<u8>: """ ..)
35Call string::append_utf8(&mut String, vector<u8>)
36MutBorrowLoc[6](loc5: String)
37MoveLoc[1](loc0: String)
38Call string::append(&mut String, String)
39MutBorrowLoc[6](loc5: String)
40LdConst[2](vector<u8>: """ ..)
41Call string::append_utf8(&mut String, vector<u8>)
42MoveLoc[5](loc4: u64)
43LdU64(1)
44Sub
45StLoc[5](loc4: u64)
46CopyLoc[5](loc4: u64)
47LdU64(0)
48Neq
49BrFalse(53)
B4:
50MutBorrowLoc[6](loc5: String)
51LdConst[3](vector<u8>: "," ..)
52Call string::append_utf8(&mut String, vector<u8>)
B5:
53Branch(11)
B6:
54MutBorrowLoc[6](loc5: String)
55LdConst[7](vector<u8>: "}" ..)
56Call string::append_utf8(&mut String, vector<u8>)
57MoveLoc[6](loc5: String)
58Ret
}
public from_vec_map_ref(Arg0: &VecMap<String, String>, Arg1: bool): String {
L2: loc0: &String
L3: loc1: String
L4: loc2: vector<String>
L5: loc3: u64
L6: loc4: String
B0:
0LdConst[5](vector<u8>: "{" ..)
1Call string::utf8(vector<u8>): String
2StLoc[6](loc4: String)
3CopyLoc[0](Arg0: &VecMap<String, String>)
4Call vec_map::keys<String, String>(&VecMap<String, String>): vector<String>
5StLoc[4](loc2: vector<String>)
6MutBorrowLoc[4](loc2: vector<String>)
7Call vector::reverse<String>(&mut vector<String>)
8ImmBorrowLoc[4](loc2: vector<String>)
9VecLen(1)
10StLoc[5](loc3: u64)
B1:
11CopyLoc[5](loc3: u64)
12LdU64(0)
13Gt
14BrFalse(58)
B2:
15Branch(16)
B3:
16MutBorrowLoc[4](loc2: vector<String>)
17VecPopBack(1)
18StLoc[3](loc1: String)
19CopyLoc[0](Arg0: &VecMap<String, String>)
20ImmBorrowLoc[3](loc1: String)
21Call vec_map::get<String, String>(&VecMap<String, String>, &String): &String
22StLoc[2](loc0: &String)
23MutBorrowLoc[6](loc4: String)
24LdConst[2](vector<u8>: """ ..)
25Call string::append_utf8(&mut String, vector<u8>)
26MutBorrowLoc[6](loc4: String)
27CopyLoc[3](loc1: String)
28Call string::append(&mut String, String)
29MutBorrowLoc[6](loc4: String)
30LdConst[6](vector<u8>: "": ..)
31Call string::append_utf8(&mut String, vector<u8>)
32CopyLoc[1](Arg1: bool)
33BrFalse(37)
B4:
34MutBorrowLoc[6](loc4: String)
35LdConst[2](vector<u8>: """ ..)
36Call string::append_utf8(&mut String, vector<u8>)
B5:
37MutBorrowLoc[6](loc4: String)
38MoveLoc[2](loc0: &String)
39ReadRef
40Call string::append(&mut String, String)
41CopyLoc[1](Arg1: bool)
42BrFalse(46)
B6:
43MutBorrowLoc[6](loc4: String)
44LdConst[2](vector<u8>: """ ..)
45Call string::append_utf8(&mut String, vector<u8>)
B7:
46MoveLoc[5](loc3: u64)
47LdU64(1)
48Sub
49StLoc[5](loc3: u64)
50CopyLoc[5](loc3: u64)
51LdU64(0)
52Neq
53BrFalse(57)
B8:
54MutBorrowLoc[6](loc4: String)
55LdConst[3](vector<u8>: "," ..)
56Call string::append_utf8(&mut String, vector<u8>)
B9:
57Branch(11)
B10:
58MoveLoc[0](Arg0: &VecMap<String, String>)
59Pop
60MutBorrowLoc[6](loc4: String)
61LdConst[7](vector<u8>: "}" ..)
62Call string::append_utf8(&mut String, vector<u8>)
63MoveLoc[6](loc4: String)
64Ret
}
public bytes_to_string(Arg0: &vector<u8>): String {
L1: loc0: vector<u8>
L2: loc1: vector<u8>
L3: loc2: u8
L4: loc3: &mut String
L5: loc4: &u8
L6: loc5: String
L7: loc6: u8
L8: loc7: u64
L9: loc8: u64
L10: loc9: u8
B0:
0LdConst[8](vector<u8>: "" /..)
1Call string::utf8(vector<u8>): String
2StLoc[6](loc5: String)
3LdU64(0)
4StLoc[8](loc7: u64)
5CopyLoc[0](Arg0: &vector<u8>)
6VecLen(25)
7StLoc[9](loc8: u64)
B1:
8CopyLoc[8](loc7: u64)
9CopyLoc[9](loc8: u64)
10Lt
11BrFalse(55)
B2:
12Branch(13)
B3:
13CopyLoc[0](Arg0: &vector<u8>)
14CopyLoc[8](loc7: u64)
15VecImmBorrow(25)
16StLoc[5](loc4: &u8)
17CopyLoc[5](loc4: &u8)
18ReadRef
19LdU8(4)
20Shr
21LdU8(15)
22BitAnd
23StLoc[7](loc6: u8)
24MoveLoc[5](loc4: &u8)
25ReadRef
26LdU8(15)
27BitAnd
28StLoc[10](loc9: u8)
29MutBorrowLoc[6](loc5: String)
30StLoc[4](loc3: &mut String)
31LdConst[0](vector<u8>: "012..)
32StLoc[2](loc1: vector<u8>)
33ImmBorrowLoc[2](loc1: vector<u8>)
34MoveLoc[7](loc6: u8)
35CastU64
36VecImmBorrow(25)
37ReadRef
38StLoc[3](loc2: u8)
39LdConst[0](vector<u8>: "012..)
40StLoc[1](loc0: vector<u8>)
41MoveLoc[4](loc3: &mut String)
42MoveLoc[3](loc2: u8)
43ImmBorrowLoc[1](loc0: vector<u8>)
44MoveLoc[10](loc9: u8)
45CastU64
46VecImmBorrow(25)
47ReadRef
48VecPack(25, 2)
49Call string::append_utf8(&mut String, vector<u8>)
50MoveLoc[8](loc7: u64)
51LdU64(1)
52Add
53StLoc[8](loc7: u64)
54Branch(8)
B4:
55MoveLoc[0](Arg0: &vector<u8>)
56Pop
57MoveLoc[6](loc5: String)
58Ret
}
public address_to_string(Arg0: &address): String {
L1: loc0: vector<u8>
L2: loc1: &mut String
L3: loc2: String
B0:
0LdConst[9](vector<u8>: "0x"..)
1Call string::utf8(vector<u8>): String
2StLoc[3](loc2: String)
3MutBorrowLoc[3](loc2: String)
4StLoc[2](loc1: &mut String)
5MoveLoc[0](Arg0: &address)
6Call bcs::to_bytes<address>(&address): vector<u8>
7StLoc[1](loc0: vector<u8>)
8MoveLoc[2](loc1: &mut String)
9ImmBorrowLoc[1](loc0: vector<u8>)
10Call bytes_to_string(&vector<u8>): String
11Call string::append(&mut String, String)
12MoveLoc[3](loc2: String)
13Ret
}
public id_to_string(Arg0: &ID): String {
L1: loc0: vector<u8>
L2: loc1: &mut String
L3: loc2: String
B0:
0LdConst[9](vector<u8>: "0x"..)
1Call string::utf8(vector<u8>): String
2StLoc[3](loc2: String)
3MutBorrowLoc[3](loc2: String)
4StLoc[2](loc1: &mut String)
5MoveLoc[0](Arg0: &ID)
6Call object::id_to_bytes(&ID): vector<u8>
7StLoc[1](loc0: vector<u8>)
8MoveLoc[2](loc1: &mut String)
9ImmBorrowLoc[1](loc0: vector<u8>)
10Call bytes_to_string(&vector<u8>): String
11Call string::append(&mut String, String)
12MoveLoc[3](loc2: String)
13Ret
}
Constants [
0 => vector<u8>: "0123456789abcdef" // interpreted as UTF8 string
1 => vector<u8>: "[" // interpreted as UTF8 string
2 => vector<u8>: """ // interpreted as UTF8 string
3 => vector<u8>: "," // interpreted as UTF8 string
4 => vector<u8>: "]" // interpreted as UTF8 string
5 => vector<u8>: "{" // interpreted as UTF8 string
6 => vector<u8>: "": " // interpreted as UTF8 string
7 => vector<u8>: "}" // interpreted as UTF8 string
8 => vector<u8>: "" // interpreted as UTF8 string
9 => vector<u8>: "0x" // interpreted as UTF8 string
]
}