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

API

infinity

Module0x2b9d…2a70
Move path
0x2b9d…2a70::infinity
Functions
31 public, 0 entry
Structs
1
Friend modules
None
infinity

Bytecode153 lines

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

// Move bytecode v6
module 2b9d43eb7037f6883d42ab73cd000cb57c35bab62e2ced1fc9c00a7bcbe82a70.infinity {
use 0000000000000000000000000000000000000000000000000000000000000001::ascii;
use 0000000000000000000000000000000000000000000000000000000000000001::option;
use 0000000000000000000000000000000000000000000000000000000000000001::string;
use 0000000000000000000000000000000000000000000000000000000000000002::coin;
use 0000000000000000000000000000000000000000000000000000000000000002::transfer;
use 0000000000000000000000000000000000000000000000000000000000000002::tx_context;
use 0000000000000000000000000000000000000000000000000000000000000002::url;
 
struct INFINITY has drop {
dummy_field: bool
}
 
init(Arg0: INFINITY, Arg1: &mut TxContext) {
L2: loc0: vector<u8>
L3: loc1: Option<Url>
L4: loc2: Coin<INFINITY>
L5: loc3: u64
L6: loc4: vector<u8>
L7: loc5: vector<u8>
L8: loc6: Option<Url>
L9: loc7: CoinMetadata<INFINITY>
L10: loc8: vector<u8>
L11: loc9: vector<u8>
L12: loc10: TreasuryCap<INFINITY>
B0:
0LdConst[0](vector<u8>: "111..)
1Call trim_right(vector<u8>): vector<u8>
2StLoc[2](loc0: vector<u8>)
3ImmBorrowLoc[2](loc0: vector<u8>)
4VecLen(5)
5StLoc[5](loc3: u64)
6LdConst[1](vector<u8>: "INF..)
7Call trim_right(vector<u8>): vector<u8>
8Call string::utf8(vector<u8>): String
9Call string::to_ascii(String): String
10Call ascii::into_bytes(String): vector<u8>
11StLoc[11](loc9: vector<u8>)
12LdConst[2](vector<u8>: "Imh..)
13Call trim_right(vector<u8>): vector<u8>
14StLoc[10](loc8: vector<u8>)
15LdConst[3](vector<u8>: "Imh..)
16Call trim_right(vector<u8>): vector<u8>
17StLoc[6](loc4: vector<u8>)
18LdConst[4](vector<u8>: "htt..)
19Call trim_right(vector<u8>): vector<u8>
20StLoc[7](loc5: vector<u8>)
21ImmBorrowLoc[7](loc5: vector<u8>)
22VecLen(5)
23LdU64(0)
24Eq
25BrFalse(29)
B1:
26Call option::none<Url>(): Option<Url>
27StLoc[3](loc1: Option<Url>)
28Branch(33)
B2:
29MoveLoc[7](loc5: vector<u8>)
30Call url::new_unsafe_from_bytes(vector<u8>): Url
31Call option::some<Url>(Url): Option<Url>
32StLoc[3](loc1: Option<Url>)
B3:
33MoveLoc[3](loc1: Option<Url>)
34StLoc[8](loc6: Option<Url>)
35MoveLoc[0](Arg0: INFINITY)
36MoveLoc[5](loc3: u64)
37CastU8
38MoveLoc[11](loc9: vector<u8>)
39MoveLoc[10](loc8: vector<u8>)
40MoveLoc[6](loc4: vector<u8>)
41MoveLoc[8](loc6: Option<Url>)
42CopyLoc[1](Arg1: &mut TxContext)
43Call coin::create_currency<INFINITY>(INFINITY, u8, vector<u8>, vector<u8>, vector<u8>, Option<Url>, &mut TxContext): TreasuryCap<INFINITY> * CoinMetadata<INFINITY>
44StLoc[9](loc7: CoinMetadata<INFINITY>)
45StLoc[12](loc10: TreasuryCap<INFINITY>)
46MutBorrowLoc[12](loc10: TreasuryCap<INFINITY>)
47LdU64(1000000000000000000)
48CopyLoc[1](Arg1: &mut TxContext)
49Call coin::mint<INFINITY>(&mut TreasuryCap<INFINITY>, u64, &mut TxContext): Coin<INFINITY>
50StLoc[4](loc2: Coin<INFINITY>)
51MoveLoc[9](loc7: CoinMetadata<INFINITY>)
52Call transfer::public_freeze_object<CoinMetadata<INFINITY>>(CoinMetadata<INFINITY>)
53MoveLoc[12](loc10: TreasuryCap<INFINITY>)
54Call transfer::public_freeze_object<TreasuryCap<INFINITY>>(TreasuryCap<INFINITY>)
55MoveLoc[4](loc2: Coin<INFINITY>)
56MoveLoc[1](Arg1: &mut TxContext)
57FreezeRef
58Call tx_context::sender(&TxContext): address
59Call transfer::public_transfer<Coin<INFINITY>>(Coin<INFINITY>, address)
60Ret
}
 
trim_right(Arg0: vector<u8>): vector<u8> {
L1: loc0: u8
L2: loc1: &u8
B0:
0LdU8(32)
1StLoc[1](loc0: u8)
2ImmBorrowLoc[1](loc0: u8)
3StLoc[2](loc1: &u8)
B1:
4ImmBorrowLoc[0](Arg0: vector<u8>)
5VecLen(5)
6LdU64(0)
7Gt
8BrFalse(26)
B2:
9Branch(10)
B3:
10ImmBorrowLoc[0](Arg0: vector<u8>)
11ImmBorrowLoc[0](Arg0: vector<u8>)
12VecLen(5)
13LdU64(1)
14Sub
15VecImmBorrow(5)
16CopyLoc[2](loc1: &u8)
17Neq
18BrFalse(22)
B4:
19MoveLoc[2](loc1: &u8)
20Pop
21Branch(26)
B5:
22MutBorrowLoc[0](Arg0: vector<u8>)
23VecPopBack(5)
24Pop
25Branch(4)
B6:
26MoveLoc[0](Arg0: vector<u8>)
27Ret
}
 
public mint(Arg0: &mut TreasuryCap<INFINITY>, Arg1: u64, Arg2: address, Arg3: &mut TxContext) {
B0:
0MoveLoc[0](Arg0: &mut TreasuryCap<INFINITY>)
1MoveLoc[1](Arg1: u64)
2MoveLoc[3](Arg3: &mut TxContext)
3Call coin::mint<INFINITY>(&mut TreasuryCap<INFINITY>, u64, &mut TxContext): Coin<INFINITY>
4MoveLoc[2](Arg2: address)
5Call transfer::public_transfer<Coin<INFINITY>>(Coin<INFINITY>, address)
6Ret
}
 
Constants [
0 => vector<u8>: "111111111 " // interpreted as UTF8 string
1 => vector<u8>: "INFINITY" // interpreted as UTF8 string
2 => vector<u8>: "Imhotep Infinity " // interpreted as UTF8 string
3 => vector<u8>: "Imhotep Infinitys Vision: A 10/10 Universe Model for Humanitys Future, has been rigorously evaluated and validated by Grok 3, an advanced artificial intelligence system developed by xAI. " // interpreted as UTF8 string
4 => vector<u8>: "https://dd.dexscreener.com/ds-data/tokens/solana/6fNn8SjtuCuPHr2AmSyGAnrhfyNBgy8cr6TkmdHkpump.png?size=lg&key=7675f1 " // interpreted as UTF8 string
]
}