1fn resolve_native_calls_member(member: &str) -> Option<BuiltinCall> {
2 match member {
3 "neoTotalSupply" => Some(BuiltinCall::NativeCall {
5 contract: NativeContract::Neo,
6 method: "totalSupply".to_string(),
7 }),
8 "neoBalanceOf" => Some(BuiltinCall::NativeCall {
9 contract: NativeContract::Neo,
10 method: "balanceOf".to_string(),
11 }),
12 "neoTransfer" => Some(BuiltinCall::NativeCall {
13 contract: NativeContract::Neo,
14 method: "transfer".to_string(),
15 }),
16 "neoDecimals" => Some(BuiltinCall::NativeCall {
17 contract: NativeContract::Neo,
18 method: "decimals".to_string(),
19 }),
20 "neoSymbol" => Some(BuiltinCall::NativeCall {
21 contract: NativeContract::Neo,
22 method: "symbol".to_string(),
23 }),
24 "vote" => Some(BuiltinCall::NativeCall {
25 contract: NativeContract::Neo,
26 method: "vote".to_string(),
27 }),
28 "getCandidates" => Some(BuiltinCall::NativeCall {
29 contract: NativeContract::Neo,
30 method: "getCandidates".to_string(),
31 }),
32 "registerCandidate" => Some(BuiltinCall::NativeCall {
33 contract: NativeContract::Neo,
34 method: "registerCandidate".to_string(),
35 }),
36 "unregisterCandidate" => Some(BuiltinCall::NativeCall {
37 contract: NativeContract::Neo,
38 method: "unregisterCandidate".to_string(),
39 }),
40 "getGasPerBlock" => Some(BuiltinCall::NativeCall {
41 contract: NativeContract::Neo,
42 method: "getGasPerBlock".to_string(),
43 }),
44 "getRegisterPrice" => Some(BuiltinCall::NativeCall {
45 contract: NativeContract::Neo,
46 method: "getRegisterPrice".to_string(),
47 }),
48 "setRegisterPrice" => Some(BuiltinCall::NativeCall {
49 contract: NativeContract::Neo,
50 method: "setRegisterPrice".to_string(),
51 }),
52 "setGasPerBlock" => Some(BuiltinCall::NativeCall {
53 contract: NativeContract::Neo,
54 method: "setGasPerBlock".to_string(),
55 }),
56 "getAccountState" => Some(BuiltinCall::GetNeoAccountState),
57 "unclaimedGas" => Some(BuiltinCall::NativeCall {
58 contract: NativeContract::Neo,
59 method: "unclaimedGas".to_string(),
60 }),
61 "getCandidateVote" => Some(BuiltinCall::NativeCall {
62 contract: NativeContract::Neo,
63 method: "getCandidateVote".to_string(),
64 }),
65 "getCommittee" => Some(BuiltinCall::NativeCall {
66 contract: NativeContract::Neo,
67 method: "getCommittee".to_string(),
68 }),
69 "getCommitteeAddress" => Some(BuiltinCall::NativeCall {
70 contract: NativeContract::Neo,
71 method: "getCommitteeAddress".to_string(),
72 }),
73 "getNextBlockValidators" => Some(BuiltinCall::NativeCall {
74 contract: NativeContract::Neo,
75 method: "getNextBlockValidators".to_string(),
76 }),
77 "getAllCandidates" => Some(BuiltinCall::NativeCall {
78 contract: NativeContract::Neo,
79 method: "getAllCandidates".to_string(),
80 }),
81
82 "gasTotalSupply" => Some(BuiltinCall::NativeCall {
84 contract: NativeContract::Gas,
85 method: "totalSupply".to_string(),
86 }),
87 "gasBalanceOf" => Some(BuiltinCall::NativeCall {
88 contract: NativeContract::Gas,
89 method: "balanceOf".to_string(),
90 }),
91 "gasTransfer" => Some(BuiltinCall::NativeCall {
92 contract: NativeContract::Gas,
93 method: "transfer".to_string(),
94 }),
95 "gasDecimals" => Some(BuiltinCall::NativeCall {
96 contract: NativeContract::Gas,
97 method: "decimals".to_string(),
98 }),
99 "gasSymbol" => Some(BuiltinCall::NativeCall {
100 contract: NativeContract::Gas,
101 method: "symbol".to_string(),
102 }),
103
104 "deployContract" => Some(BuiltinCall::DeployContract),
106 "updateContract" => Some(BuiltinCall::NativeCall {
107 contract: NativeContract::ContractManagement,
108 method: "update".to_string(),
109 }),
110 "destroyContract" => Some(BuiltinCall::NativeCall {
111 contract: NativeContract::ContractManagement,
112 method: "destroy".to_string(),
113 }),
114 "getContract" => Some(BuiltinCall::GetContract),
115 "getContractById" => Some(BuiltinCall::NativeCall {
116 contract: NativeContract::ContractManagement,
117 method: "getContractById".to_string(),
118 }),
119 "listContracts" => Some(BuiltinCall::NativeCall {
120 contract: NativeContract::ContractManagement,
121 method: "getContractHashes".to_string(),
122 }),
123 "hasMethod" => Some(BuiltinCall::NativeCall {
124 contract: NativeContract::ContractManagement,
125 method: "hasMethod".to_string(),
126 }),
127 "isContract" => Some(BuiltinCall::NativeCall {
128 contract: NativeContract::ContractManagement,
129 method: "isContract".to_string(),
130 }),
131 "getMinimumDeploymentFee" => Some(BuiltinCall::NativeCall {
132 contract: NativeContract::ContractManagement,
133 method: "getMinimumDeploymentFee".to_string(),
134 }),
135 "setMinimumDeploymentFee" => Some(BuiltinCall::NativeCall {
136 contract: NativeContract::ContractManagement,
137 method: "setMinimumDeploymentFee".to_string(),
138 }),
139
140 "getFeePerByte" => Some(BuiltinCall::NativeCall {
142 contract: NativeContract::Policy,
143 method: "getFeePerByte".to_string(),
144 }),
145 "setFeePerByte" => Some(BuiltinCall::NativeCall {
146 contract: NativeContract::Policy,
147 method: "setFeePerByte".to_string(),
148 }),
149 "getExecFeeFactor" => Some(BuiltinCall::NativeCall {
150 contract: NativeContract::Policy,
151 method: "getExecFeeFactor".to_string(),
152 }),
153 "getExecPicoFeeFactor" => Some(BuiltinCall::NativeCall {
154 contract: NativeContract::Policy,
155 method: "getExecPicoFeeFactor".to_string(),
156 }),
157 "setExecFeeFactor" => Some(BuiltinCall::NativeCall {
158 contract: NativeContract::Policy,
159 method: "setExecFeeFactor".to_string(),
160 }),
161 "getStoragePrice" => Some(BuiltinCall::NativeCall {
162 contract: NativeContract::Policy,
163 method: "getStoragePrice".to_string(),
164 }),
165 "getMillisecondsPerBlock" => Some(BuiltinCall::NativeCall {
166 contract: NativeContract::Policy,
167 method: "getMillisecondsPerBlock".to_string(),
168 }),
169 "setMillisecondsPerBlock" => Some(BuiltinCall::NativeCall {
170 contract: NativeContract::Policy,
171 method: "setMillisecondsPerBlock".to_string(),
172 }),
173 "getMaxValidUntilBlockIncrement" => Some(BuiltinCall::NativeCall {
174 contract: NativeContract::Policy,
175 method: "getMaxValidUntilBlockIncrement".to_string(),
176 }),
177 "setMaxValidUntilBlockIncrement" => Some(BuiltinCall::NativeCall {
178 contract: NativeContract::Policy,
179 method: "setMaxValidUntilBlockIncrement".to_string(),
180 }),
181 "getMaxTraceableBlocks" => Some(BuiltinCall::NativeCall {
182 contract: NativeContract::Policy,
183 method: "getMaxTraceableBlocks".to_string(),
184 }),
185 "setMaxTraceableBlocks" => Some(BuiltinCall::NativeCall {
186 contract: NativeContract::Policy,
187 method: "setMaxTraceableBlocks".to_string(),
188 }),
189 "getAttributeFee" => Some(BuiltinCall::NativeCall {
190 contract: NativeContract::Policy,
191 method: "getAttributeFee".to_string(),
192 }),
193 "setAttributeFee" => Some(BuiltinCall::NativeCall {
194 contract: NativeContract::Policy,
195 method: "setAttributeFee".to_string(),
196 }),
197 "setStoragePrice" => Some(BuiltinCall::NativeCall {
198 contract: NativeContract::Policy,
199 method: "setStoragePrice".to_string(),
200 }),
201 "blockAccount" => Some(BuiltinCall::NativeCall {
202 contract: NativeContract::Policy,
203 method: "blockAccount".to_string(),
204 }),
205 "unblockAccount" => Some(BuiltinCall::NativeCall {
206 contract: NativeContract::Policy,
207 method: "unblockAccount".to_string(),
208 }),
209 "isBlocked" => Some(BuiltinCall::NativeCall {
210 contract: NativeContract::Policy,
211 method: "isBlocked".to_string(),
212 }),
213 "getBlockedAccounts" => Some(BuiltinCall::NativeCall {
214 contract: NativeContract::Policy,
215 method: "getBlockedAccounts".to_string(),
216 }),
217 "recoverFund" => Some(BuiltinCall::NativeCall {
218 contract: NativeContract::Policy,
219 method: "recoverFund".to_string(),
220 }),
221 "setWhitelistFeeContract" => Some(BuiltinCall::NativeCall {
222 contract: NativeContract::Policy,
223 method: "setWhitelistFeeContract".to_string(),
224 }),
225 "removeWhitelistFeeContract" => Some(BuiltinCall::NativeCall {
226 contract: NativeContract::Policy,
227 method: "removeWhitelistFeeContract".to_string(),
228 }),
229 "getWhitelistFeeContracts" => Some(BuiltinCall::NativeCall {
230 contract: NativeContract::Policy,
231 method: "getWhitelistFeeContracts".to_string(),
232 }),
233
234 "requestOracleData" => Some(BuiltinCall::NativeCall {
236 contract: NativeContract::Oracle,
237 method: "request".to_string(),
238 }),
239 "getOraclePrice" => Some(BuiltinCall::NativeCall {
240 contract: NativeContract::Oracle,
241 method: "getPrice".to_string(),
242 }),
243 "setOraclePrice" => Some(BuiltinCall::NativeCall {
244 contract: NativeContract::Oracle,
245 method: "setPrice".to_string(),
246 }),
247 "oracleFinish" => Some(BuiltinCall::NativeCall {
248 contract: NativeContract::Oracle,
249 method: "finish".to_string(),
250 }),
251 "oracleVerify" => Some(BuiltinCall::NativeCall {
252 contract: NativeContract::Oracle,
253 method: "verify".to_string(),
254 }),
255
256 "designateAsRole" => Some(BuiltinCall::NativeCall {
258 contract: NativeContract::RoleManagement,
259 method: "designateAsRole".to_string(),
260 }),
261 "getDesignatedByRole" => Some(BuiltinCall::NativeCall {
262 contract: NativeContract::RoleManagement,
263 method: "getDesignatedByRole".to_string(),
264 }),
265
266 "currentIndex" => Some(BuiltinCall::NativeCall {
268 contract: NativeContract::Ledger,
269 method: "currentIndex".to_string(),
270 }),
271 "currentHash" => Some(BuiltinCall::NativeCall {
272 contract: NativeContract::Ledger,
273 method: "currentHash".to_string(),
274 }),
275 "getBlock" => Some(BuiltinCall::NativeCall {
276 contract: NativeContract::Ledger,
277 method: "getBlock".to_string(),
278 }),
279 "getTransaction" => Some(BuiltinCall::NativeCall {
280 contract: NativeContract::Ledger,
281 method: "getTransaction".to_string(),
282 }),
283 "getTransactionHeight" => Some(BuiltinCall::NativeCall {
284 contract: NativeContract::Ledger,
285 method: "getTransactionHeight".to_string(),
286 }),
287 "getTransactionFromBlock" => Some(BuiltinCall::NativeCall {
288 contract: NativeContract::Ledger,
289 method: "getTransactionFromBlock".to_string(),
290 }),
291 "getTransactionSigners" => Some(BuiltinCall::NativeCall {
292 contract: NativeContract::Ledger,
293 method: "getTransactionSigners".to_string(),
294 }),
295 "getTransactionVMState" => Some(BuiltinCall::NativeCall {
296 contract: NativeContract::Ledger,
297 method: "getTransactionVMState".to_string(),
298 }),
299
300 "externalNativeCall" => Some(BuiltinCall::ContractCall),
302
303 "notaryVerify" => Some(BuiltinCall::NativeCall {
305 contract: NativeContract::Notary,
306 method: "verify".to_string(),
307 }),
308 "notaryBalanceOf" => Some(BuiltinCall::NativeCall {
309 contract: NativeContract::Notary,
310 method: "balanceOf".to_string(),
311 }),
312 "notaryExpirationOf" => Some(BuiltinCall::NativeCall {
313 contract: NativeContract::Notary,
314 method: "expirationOf".to_string(),
315 }),
316 "notaryLockDepositUntil" => Some(BuiltinCall::NativeCall {
317 contract: NativeContract::Notary,
318 method: "lockDepositUntil".to_string(),
319 }),
320 "notaryWithdraw" => Some(BuiltinCall::NativeCall {
321 contract: NativeContract::Notary,
322 method: "withdraw".to_string(),
323 }),
324 "notaryGetMaxNotValidBeforeDelta" => Some(BuiltinCall::NativeCall {
325 contract: NativeContract::Notary,
326 method: "getMaxNotValidBeforeDelta".to_string(),
327 }),
328 "notarySetMaxNotValidBeforeDelta" => Some(BuiltinCall::NativeCall {
329 contract: NativeContract::Notary,
330 method: "setMaxNotValidBeforeDelta".to_string(),
331 }),
332 "notaryOnNEP17Payment" => Some(BuiltinCall::NativeCall {
333 contract: NativeContract::Notary,
334 method: "onNEP17Payment".to_string(),
335 }),
336
337 "treasuryVerify" => Some(BuiltinCall::NativeCall {
339 contract: NativeContract::Treasury,
340 method: "verify".to_string(),
341 }),
342 "treasuryOnNEP17Payment" => Some(BuiltinCall::NativeCall {
343 contract: NativeContract::Treasury,
344 method: "onNEP17Payment".to_string(),
345 }),
346 "treasuryOnNEP11Payment" => Some(BuiltinCall::NativeCall {
347 contract: NativeContract::Treasury,
348 method: "onNEP11Payment".to_string(),
349 }),
350
351 _ => None,
352 }
353}