string_utils
Module0x26ef…5e3d
- Move path
- 0x26ef…5e3d::string_utils
- Functions
- 11 public, 0 entry
- Structs
- 0
- Friend modules
- None
string_utils
- asset_meta6
- attest_token2
- coin_utils4
- complete_transfer5
- complete_transfer_with_payload3
- create_wrapped5
- migrate2
- native_asset8
- normalized_amount11
- register_chain5
- setup2
- state20
- string_utils1
- token_registry14
- transfer4
- transfer_tokens5
- transfer_tokens_with_payload3
- transfer_with_payload12
- upgrade_contract6
- vaa6
- version_control2
- wrapped_asset12
Bytecode132 lines
The on-chain disassembly. Offsets are bytecode positions within each function.
// Move bytecode v6
module 26efee2b51c911237888e5dc6702868abca3c7ac12c53f76ef8eba0697695e3d.string_utils {
use 0000000000000000000000000000000000000000000000000000000000000001::ascii;
use 0000000000000000000000000000000000000000000000000000000000000001::string;
use 0000000000000000000000000000000000000000000000000000000000000001::vector;
public to_ascii(Arg0: &String): String {
L1: loc0: bool
L2: loc1: vector<u8>
L3: loc2: u8
L4: loc3: vector<u8>
L5: loc4: u64
L6: loc5: u64
B0:
0MoveLoc[0](Arg0: &String)
1Call string::bytes(&String): &vector<u8>
2ReadRef
3StLoc[4](loc3: vector<u8>)
B1:
4ImmBorrowLoc[4](loc3: vector<u8>)
5Call vector::is_empty<u8>(&vector<u8>): bool
6Not
7BrFalse(20)
B2:
8Branch(9)
B3:
9ImmBorrowLoc[4](loc3: vector<u8>)
10ImmBorrowLoc[4](loc3: vector<u8>)
11VecLen(5)
12LdU64(1)
13Sub
14VecImmBorrow(5)
15ReadRef
16LdU8(0)
17Eq
18StLoc[1](loc0: bool)
19Branch(22)
B4:
20LdFalse
21StLoc[1](loc0: bool)
B5:
22MoveLoc[1](loc0: bool)
23BrFalse(28)
B6:
24MutBorrowLoc[4](loc3: vector<u8>)
25VecPopBack(5)
26Pop
27Branch(4)
B7:
28VecPack(5, 0)
29StLoc[2](loc1: vector<u8>)
30LdU64(0)
31ImmBorrowLoc[4](loc3: vector<u8>)
32VecLen(5)
33StLoc[6](loc5: u64)
34StLoc[5](loc4: u64)
B8:
35CopyLoc[5](loc4: u64)
36CopyLoc[6](loc5: u64)
37Lt
38BrFalse(86)
B9:
39Branch(40)
B10:
40ImmBorrowLoc[4](loc3: vector<u8>)
41CopyLoc[5](loc4: u64)
42VecImmBorrow(5)
43ReadRef
44StLoc[3](loc2: u8)
45CopyLoc[3](loc2: u8)
46Call ascii::is_valid_char(u8): bool
47BrFalse(56)
B11:
48MutBorrowLoc[2](loc1: vector<u8>)
49MoveLoc[3](loc2: u8)
50VecPushBack(5)
51MoveLoc[5](loc4: u64)
52LdU64(1)
53Add
54StLoc[5](loc4: u64)
55Branch(85)
B12:
56CopyLoc[3](loc2: u8)
57LdConst[1](u8: 192)
58Ge
59BrFalse(85)
B13:
60MutBorrowLoc[2](loc1: vector<u8>)
61LdConst[0](u8: 63)
62VecPushBack(5)
63CopyLoc[3](loc2: u8)
64LdConst[3](u8: 240)
65Ge
66BrFalse(72)
B14:
67MoveLoc[5](loc4: u64)
68LdU64(4)
69Add
70StLoc[5](loc4: u64)
71Branch(85)
B15:
72MoveLoc[3](loc2: u8)
73LdConst[2](u8: 224)
74Ge
75BrFalse(81)
B16:
76MoveLoc[5](loc4: u64)
77LdU64(3)
78Add
79StLoc[5](loc4: u64)
80Branch(85)
B17:
81MoveLoc[5](loc4: u64)
82LdU64(2)
83Add
84StLoc[5](loc4: u64)
B18:
85Branch(35)
B19:
86MoveLoc[2](loc1: vector<u8>)
87Call ascii::string(vector<u8>): String
88Ret
}
Constants [
0 => u8: 63
1 => u8: 192
2 => u8: 224
3 => u8: 240
]
}