MCPcopy Create free account

hub / github.com/akatsuki105/ToyEVM / functions

Functions131 in github.com/akatsuki105/ToyEVM

↓ 78 callersMethodpush_asm
(&mut self, mnemonic: &str)
src/vm.rs:289
↓ 48 callersFunctionnot_implement_panic
()
src/util.rs:33
↓ 42 callersMethodpop
スタックからのpop
src/vm.rs:82
↓ 32 callersMethodop_push
lengthバイトpushする
src/vm.rs:800
↓ 31 callersMethodconsume_gas
(&mut self, gas: usize)
src/vm.rs:251
↓ 28 callersMethodpush
スタックへのpush
src/vm.rs:76
↓ 27 callersFunctionstr_to_bytes
(src: &str)
src/util.rs:10
↓ 20 callersMethodset_code
コードをセットする
src/vm.rs:36
↓ 17 callersMethodexec_transaction
トランザクションが終了するまでexecを繰り返す
src/vm.rs:260
↓ 16 callersMethodop_dup
スタックの先頭をスタックのindex+1番目にコピーする
src/vm.rs:818
↓ 16 callersMethodop_swap
スタックの先頭をスタックのindex+1番目と交換する
src/vm.rs:833
↓ 7 callersMethodexec
EVMバイトコードを1命令実行する
src/vm.rs:89
↓ 5 callersMethodset_input
インプットデータをセットする
src/vm.rs:41
↓ 2 callersFunctioncalc_hash
(bytes: &Vec<u8>)
src/state.rs:127
↓ 2 callersMethodcalc_hash
計算方法がよくわからない とりあえず連結してhashとる
src/state.rs:47
↓ 2 callersMethodget_account_state
(&mut self, address: &H160)
src/state.rs:57
↓ 2 callersFunctionh160_to_u256
convert H160 into U256
src/util.rs:49
↓ 2 callersFunctionto_h160
(s: &str)
src/util.rs:37
↓ 2 callersMethodupdate_state
(&mut self)
src/state.rs:33
↓ 1 callersFunctionbytes_to_str
(src: Vec<u8>)
src/util.rs:15
↓ 1 callersFunctiondeploy
deploy contract
src/main.rs:120
↓ 1 callersMethodget_code
getter for code
src/state.rs:110
↓ 1 callersMethodget_storage
getter for storage
src/state.rs:99
↓ 1 callersFunctionhelp
print help
src/main.rs:129
↓ 1 callersMethodincrement_nonce
(&mut self)
src/state.rs:84
↓ 1 callersMethodop_add
0x01: operand1(スタック1番目) + operand2(スタック2番目)
src/vm.rs:302
↓ 1 callersMethodop_addmod
(&mut self)
src/vm.rs:356
↓ 1 callersMethodop_address
0x30: address of the executing contract
src/vm.rs:525
↓ 1 callersMethodop_and
operand1(スタック1番目) & operand2(スタック2番目)
src/vm.rs:447
↓ 1 callersMethodop_balance
0x31: Get balance of the given account.
src/vm.rs:533
↓ 1 callersMethodop_blockhash
0x40:
src/vm.rs:640
↓ 1 callersMethodop_byte
0x1a: operand2(スタック2番目)のoperand1バイト目を取る
src/vm.rs:486
↓ 1 callersMethodop_call
0xf1:
src/vm.rs:885
↓ 1 callersMethodop_callcode
0xf2:
src/vm.rs:891
↓ 1 callersMethodop_calldatacopy
0x37:
src/vm.rs:575
↓ 1 callersMethodop_calldataload
0x35: スタックからpopした値をstartとしてinputのstartの位置からstart+32の位置までの32byteのデータをstackにpush
src/vm.rs:558
↓ 1 callersMethodop_calldatasize
0x36: inputに格納されたデータサイズをstackにpush
src/vm.rs:567
↓ 1 callersMethodop_caller
(&mut self)
src/vm.rs:546
↓ 1 callersMethodop_callvalue
(&mut self)
src/vm.rs:552
↓ 1 callersMethodop_codecopy
0x39: コントラクトにデプロイされたコードをコピーする
src/vm.rs:587
↓ 1 callersMethodop_codesize
0x38:
src/vm.rs:581
↓ 1 callersMethodop_coinbase
0x41:
src/vm.rs:646
↓ 1 callersMethodop_create
0xf0:
src/vm.rs:879
↓ 1 callersMethodop_create2
0xf5:
src/vm.rs:914
↓ 1 callersMethodop_delegatecall
0xf4:
src/vm.rs:908
↓ 1 callersMethodop_difficulty
0x44:
src/vm.rs:664
↓ 1 callersMethodop_div
0x04: operand1(スタック1番目) // operand2(スタック2番目)
src/vm.rs:332
↓ 1 callersMethodop_eq
0x14: operand1(スタック1番目) == operand2(スタック2番目)
src/vm.rs:422
↓ 1 callersMethodop_exp
0x0a: operand1(スタック1番目) ** operand2(スタック2番目)
src/vm.rs:367
↓ 1 callersMethodop_extcodecopy
0x3c:
src/vm.rs:613
↓ 1 callersMethodop_extcodehash
0x3f:
src/vm.rs:631
↓ 1 callersMethodop_extcodesize
0x3b:
src/vm.rs:607
↓ 1 callersMethodop_gas
0x5a:
src/vm.rs:784
↓ 1 callersMethodop_gaslimit
0x45:
src/vm.rs:670
↓ 1 callersMethodop_gasprice
0x3a:
src/vm.rs:601
↓ 1 callersMethodop_gt
0x11: operand1(スタック1番目) > operand2(スタック2番目)
src/vm.rs:399
↓ 1 callersMethodop_is_zero
0x15: operand1(スタック1番目) == 0
src/vm.rs:435
↓ 1 callersMethodop_jump
0x56: スタックからdestinationをpopしてジャンプ
src/vm.rs:741
↓ 1 callersMethodop_jumpdest
0x5b: 動的ジャンプを行う際にスタックからpopした値が示すアドレスにジャンプするが、そのアドレスではこのop_jumpdestがオペコードでなければならない<br/> このオペコードはそのマーカーとなるだけで単体では意味を持たない
src/vm.rs:791
↓ 1 callersMethodop_jumpi
0x57: スタックからdestination, conditionをpop<br/> conditionが0以外ならdestinationにジャンプ
src/vm.rs:755
↓ 1 callersMethodop_log0
0xa0:
src/vm.rs:846
↓ 1 callersMethodop_log1
0xa1:
src/vm.rs:852
↓ 1 callersMethodop_log2
0xa2:
src/vm.rs:858
↓ 1 callersMethodop_log3
0xa3:
src/vm.rs:864
↓ 1 callersMethodop_log4
0xa4:
src/vm.rs:870
↓ 1 callersMethodop_lt
0x10: operand1(スタック1番目) < operand2(スタック2番目)
src/vm.rs:386
↓ 1 callersMethodop_mload
0x51: スタックからpopしたstartを先頭アドレスしてstart+32までの32byteの値をメモリからロード
src/vm.rs:685
↓ 1 callersMethodop_mod
(&mut self)
src/vm.rs:346
↓ 1 callersMethodop_msize
0x59
src/vm.rs:778
↓ 1 callersMethodop_mstore
0x52: スタックからstart, valueをpopし、startを先頭アドレスしてstart+32までの32byteのメモリ領域にvalueを格納する
src/vm.rs:698
↓ 1 callersMethodop_mul
0x02: operand1(スタック1番目) * operand2(スタック2番目)
src/vm.rs:312
↓ 1 callersMethodop_mulmod
(&mut self)
src/vm.rs:361
↓ 1 callersMethodop_not
not operand1(スタック1番目)
src/vm.rs:477
↓ 1 callersMethodop_number
0x43:
src/vm.rs:658
↓ 1 callersMethodop_or
operand1(スタック1番目) | operand2(スタック2番目)
src/vm.rs:457
↓ 1 callersMethodop_origin
(&mut self)
src/vm.rs:541
↓ 1 callersMethodop_pc
0x58:
src/vm.rs:772
↓ 1 callersMethodop_pop
0x50:
src/vm.rs:679
↓ 1 callersMethodop_return
0xf3: スタックのoffsetからlength分のバイトデータを返り値として返す<br/> この命令を実行するとトランザクションは終了する?
src/vm.rs:898
↓ 1 callersMethodop_returndatacopy
0x3e:
src/vm.rs:625
↓ 1 callersMethodop_returndatasize
0x3d:
src/vm.rs:619
↓ 1 callersMethodop_revert
0xfd:
src/vm.rs:926
↓ 1 callersMethodop_sdiv
(&mut self)
src/vm.rs:341
↓ 1 callersMethodop_selfdestruct
0xff:
src/vm.rs:932
↓ 1 callersMethodop_sgt
(&mut self)
src/vm.rs:416
↓ 1 callersMethodop_sha3
(&mut self)
src/vm.rs:516
↓ 1 callersMethodop_sig_next_end
0x0b:
src/vm.rs:377
↓ 1 callersMethodop_sload
0x54: スタックからpopした値をkeyとしてstorageから対応する値をロード
src/vm.rs:716
↓ 1 callersMethodop_slt
(&mut self)
src/vm.rs:411
↓ 1 callersMethodop_smod
(&mut self)
src/vm.rs:351
↓ 1 callersMethodop_sstore
0x55: storageに書き込みを行う storage[operand1(スタック1番目)] = operand2(スタック2番目)
src/vm.rs:725
↓ 1 callersMethodop_staticcall
0xfa:
src/vm.rs:920
↓ 1 callersMethodop_stop
0x00: 何もしない
src/vm.rs:297
↓ 1 callersMethodop_sub
0x03: operand1(スタック1番目) - operand2(スタック2番目)
src/vm.rs:322
↓ 1 callersMethodop_timestamp
0x42:
src/vm.rs:652
↓ 1 callersMethodop_xor
operand1(スタック1番目) ^ operand2(スタック2番目)
src/vm.rs:467
↓ 1 callersMethodpush_account_state
(&mut self, address: H160, account_state: AccountState)
src/state.rs:42
↓ 1 callersFunctionrun
execute application
src/main.rs:22
↓ 1 callersMethodset_storage
setter for storage
src/state.rs:105
↓ 1 callersFunctionslice_to_array
(s: &[u8])
src/util.rs:19
next →1–100 of 131, ranked by callers