Skip to main content

neo_syscalls/
syscalls.rs

1use super::NeoVMSyscallInfo;
2
3/// Neo N3 System Calls
4pub const SYSCALLS: &[NeoVMSyscallInfo] = &[
5    NeoVMSyscallInfo {
6        name: "System.Contract.Call",
7        hash: 0x525b7d62,
8        parameters: &["Hash160", "String", "Integer", "Array"],
9        return_type: "Void",
10        gas_cost: 32768,
11        description: "",
12    },
13    NeoVMSyscallInfo {
14        name: "System.Contract.CallNative",
15        hash: 0x677bf71a,
16        parameters: &["Integer"],
17        return_type: "Void",
18        gas_cost: 0,
19        description: "",
20    },
21    NeoVMSyscallInfo {
22        name: "System.Contract.CreateMultisigAccount",
23        hash: 0x09e9336a,
24        parameters: &["Integer", "Array"],
25        return_type: "Hash160",
26        gas_cost: 0,
27        description: "",
28    },
29    NeoVMSyscallInfo {
30        name: "System.Contract.CreateStandardAccount",
31        hash: 0x028799cf,
32        parameters: &["ByteString"],
33        return_type: "Hash160",
34        gas_cost: 0,
35        description: "",
36    },
37    NeoVMSyscallInfo {
38        name: "System.Contract.GetCallFlags",
39        hash: 0x813ada95,
40        parameters: &[],
41        return_type: "Integer",
42        gas_cost: 1024,
43        description: "",
44    },
45    NeoVMSyscallInfo {
46        name: "System.Contract.NativeOnPersist",
47        hash: 0x93bcdb2e,
48        parameters: &[],
49        return_type: "Void",
50        gas_cost: 0,
51        description: "",
52    },
53    NeoVMSyscallInfo {
54        name: "System.Contract.NativePostPersist",
55        hash: 0x165da144,
56        parameters: &[],
57        return_type: "Void",
58        gas_cost: 0,
59        description: "",
60    },
61    NeoVMSyscallInfo {
62        name: "System.Crypto.CheckMultisig",
63        hash: 0x3adcd09e,
64        parameters: &["Array", "Array"],
65        return_type: "Boolean",
66        gas_cost: 0,
67        description: "",
68    },
69    NeoVMSyscallInfo {
70        name: "System.Crypto.CheckSig",
71        hash: 0x27b3e756,
72        parameters: &["ByteString", "ByteString"],
73        return_type: "Boolean",
74        gas_cost: 32768,
75        description: "",
76    },
77    NeoVMSyscallInfo {
78        name: "System.Iterator.Next",
79        hash: 0x9ced089c,
80        parameters: &["Iterator"],
81        return_type: "Boolean",
82        gas_cost: 32768,
83        description: "",
84    },
85    NeoVMSyscallInfo {
86        name: "System.Iterator.Value",
87        hash: 0x1dbf54f3,
88        parameters: &["Iterator"],
89        return_type: "StackItem",
90        gas_cost: 16,
91        description: "",
92    },
93    NeoVMSyscallInfo {
94        name: "System.Runtime.BurnGas",
95        hash: 0xbc8c5ac3,
96        parameters: &["Integer"],
97        return_type: "Void",
98        gas_cost: 16,
99        description: "",
100    },
101    NeoVMSyscallInfo {
102        name: "System.Runtime.CheckWitness",
103        hash: 0x8cec27f8,
104        parameters: &["ByteString"],
105        return_type: "Boolean",
106        gas_cost: 1024,
107        description: "",
108    },
109    NeoVMSyscallInfo {
110        name: "System.Runtime.CurrentSigners",
111        hash: 0x8b18f1ac,
112        parameters: &[],
113        return_type: "Array",
114        gas_cost: 16,
115        description: "",
116    },
117    NeoVMSyscallInfo {
118        name: "System.Runtime.GasLeft",
119        hash: 0xced88814,
120        parameters: &[],
121        return_type: "Integer",
122        gas_cost: 16,
123        description: "",
124    },
125    NeoVMSyscallInfo {
126        name: "System.Runtime.GetAddressVersion",
127        hash: 0xdc92494c,
128        parameters: &[],
129        return_type: "Integer",
130        gas_cost: 8,
131        description: "",
132    },
133    NeoVMSyscallInfo {
134        name: "System.Runtime.GetCallingScriptHash",
135        hash: 0x3c6e5339,
136        parameters: &[],
137        return_type: "Hash160",
138        gas_cost: 16,
139        description: "",
140    },
141    NeoVMSyscallInfo {
142        name: "System.Runtime.GetEntryScriptHash",
143        hash: 0x38e2b4f9,
144        parameters: &[],
145        return_type: "Hash160",
146        gas_cost: 16,
147        description: "",
148    },
149    NeoVMSyscallInfo {
150        name: "System.Runtime.GetExecutingScriptHash",
151        hash: 0x74a8fedb,
152        parameters: &[],
153        return_type: "Hash160",
154        gas_cost: 16,
155        description: "",
156    },
157    NeoVMSyscallInfo {
158        name: "System.Runtime.GetInvocationCounter",
159        hash: 0x43112784,
160        parameters: &[],
161        return_type: "Integer",
162        gas_cost: 16,
163        description: "",
164    },
165    NeoVMSyscallInfo {
166        name: "System.Runtime.GetNetwork",
167        hash: 0xe0a0fbc5,
168        parameters: &[],
169        return_type: "Integer",
170        gas_cost: 8,
171        description: "",
172    },
173    NeoVMSyscallInfo {
174        name: "System.Runtime.GetNotifications",
175        hash: 0xf1354327,
176        parameters: &["Hash160"],
177        return_type: "Array",
178        gas_cost: 4096,
179        description: "",
180    },
181    NeoVMSyscallInfo {
182        name: "System.Runtime.GetRandom",
183        hash: 0x28a9de6b,
184        parameters: &[],
185        return_type: "Integer",
186        gas_cost: 0,
187        description: "",
188    },
189    NeoVMSyscallInfo {
190        name: "System.Runtime.GetScriptContainer",
191        hash: 0x3008512d,
192        parameters: &[],
193        return_type: "StackItem",
194        gas_cost: 8,
195        description: "",
196    },
197    NeoVMSyscallInfo {
198        name: "System.Runtime.GetTime",
199        hash: 0x0388c3b7,
200        parameters: &[],
201        return_type: "Integer",
202        gas_cost: 8,
203        description: "",
204    },
205    NeoVMSyscallInfo {
206        name: "System.Runtime.GetTrigger",
207        hash: 0xa0387de9,
208        parameters: &[],
209        return_type: "Integer",
210        gas_cost: 8,
211        description: "",
212    },
213    NeoVMSyscallInfo {
214        name: "System.Runtime.LoadScript",
215        hash: 0x8f800cb3,
216        parameters: &["ByteString", "Integer", "Array"],
217        return_type: "Void",
218        gas_cost: 32768,
219        description: "",
220    },
221    NeoVMSyscallInfo {
222        name: "System.Runtime.Log",
223        hash: 0x9647e7cf,
224        parameters: &["ByteString"],
225        return_type: "Void",
226        gas_cost: 32768,
227        description: "",
228    },
229    NeoVMSyscallInfo {
230        name: "System.Runtime.Notify",
231        hash: 0x616f0195,
232        parameters: &["ByteString", "Array"],
233        return_type: "Void",
234        gas_cost: 32768,
235        description: "",
236    },
237    NeoVMSyscallInfo {
238        name: "System.Runtime.Platform",
239        hash: 0xf6fc79b2,
240        parameters: &[],
241        return_type: "String",
242        gas_cost: 8,
243        description: "",
244    },
245    NeoVMSyscallInfo {
246        name: "System.Storage.AsReadOnly",
247        hash: 0xe9bf4c76,
248        parameters: &["StorageContext"],
249        return_type: "StorageContext",
250        gas_cost: 16,
251        description: "",
252    },
253    NeoVMSyscallInfo {
254        name: "System.Storage.Delete",
255        hash: 0xedc5582f,
256        parameters: &["StorageContext", "ByteString"],
257        return_type: "Void",
258        gas_cost: 32768,
259        description: "",
260    },
261    NeoVMSyscallInfo {
262        name: "System.Storage.Find",
263        hash: 0x9ab830df,
264        parameters: &["StorageContext", "ByteString", "Integer"],
265        return_type: "Iterator",
266        gas_cost: 32768,
267        description: "",
268    },
269    NeoVMSyscallInfo {
270        name: "System.Storage.Get",
271        hash: 0x31e85d92,
272        parameters: &["StorageContext", "ByteString"],
273        return_type: "ByteString",
274        gas_cost: 32768,
275        description: "",
276    },
277    NeoVMSyscallInfo {
278        name: "System.Storage.GetContext",
279        hash: 0xce67f69b,
280        parameters: &[],
281        return_type: "StorageContext",
282        gas_cost: 16,
283        description: "",
284    },
285    NeoVMSyscallInfo {
286        name: "System.Storage.GetReadOnlyContext",
287        hash: 0xe26bb4f6,
288        parameters: &[],
289        return_type: "StorageContext",
290        gas_cost: 16,
291        description: "",
292    },
293    NeoVMSyscallInfo {
294        name: "System.Storage.Put",
295        hash: 0x84183fe6,
296        parameters: &["StorageContext", "ByteString", "ByteString"],
297        return_type: "Void",
298        gas_cost: 32768,
299        description: "",
300    },
301];