evm.logic package¶
Submodules¶
evm.logic.arithmetic module¶
-
evm.logic.arithmetic.add(computation)¶ Addition
-
evm.logic.arithmetic.addmod(computation)¶ Modulo Addition
-
evm.logic.arithmetic.div(computation)¶ Division
-
evm.logic.arithmetic.exp¶ Exponentiation
-
evm.logic.arithmetic.mod(computation)¶ Modulo
-
evm.logic.arithmetic.mul(computation)¶ Multiplication
-
evm.logic.arithmetic.mulmod(computation)¶ Modulo Multiplication
-
evm.logic.arithmetic.sdiv(computation)¶ Signed Division
-
evm.logic.arithmetic.signextend(computation)¶ Signed Extend
-
evm.logic.arithmetic.smod(computation)¶ Signed Modulo
-
evm.logic.arithmetic.sub(computation)¶ Subtraction
evm.logic.block module¶
-
evm.logic.block.blockhash(computation)¶
-
evm.logic.block.coinbase(computation)¶
-
evm.logic.block.difficulty(computation)¶
-
evm.logic.block.gaslimit(computation)¶
-
evm.logic.block.number(computation)¶
-
evm.logic.block.timestamp(computation)¶
evm.logic.call module¶
-
class
evm.logic.call.BaseCall¶ Bases:
evm.opcode.Opcode-
compute_msg_extra_gas(computation, gas, to, value)¶
-
compute_msg_gas(computation, gas, to, value)¶
-
get_call_params(computation)¶
-
-
class
evm.logic.call.Call¶ Bases:
evm.logic.call.BaseCall-
compute_msg_extra_gas(computation, gas, to, value)¶
-
get_call_params(computation)¶
-
-
class
evm.logic.call.CallByzantium¶ Bases:
evm.logic.call.CallEIP161-
get_call_params(computation)¶
-
-
class
evm.logic.call.CallCode¶ Bases:
evm.logic.call.BaseCall-
compute_msg_extra_gas(computation, gas, to, value)¶
-
get_call_params(computation)¶
-
-
class
evm.logic.call.CallCodeEIP150¶ Bases:
evm.logic.call.CallCode-
compute_msg_gas(computation, gas, to, value)¶
-
-
class
evm.logic.call.CallEIP150¶ Bases:
evm.logic.call.Call-
compute_msg_gas(computation, gas, to, value)¶
-
-
class
evm.logic.call.CallEIP161¶ Bases:
evm.logic.call.CallEIP150-
compute_msg_extra_gas(computation, gas, to, value)¶
-
-
class
evm.logic.call.DelegateCall¶ Bases:
evm.logic.call.BaseCall-
compute_msg_extra_gas(computation, gas, to, value)¶
-
compute_msg_gas(computation, gas, to, value)¶
-
get_call_params(computation)¶
-
-
class
evm.logic.call.DelegateCallEIP150¶ Bases:
evm.logic.call.DelegateCall-
compute_msg_gas(computation, gas, to, value)¶
-
-
class
evm.logic.call.StaticCall¶ Bases:
evm.logic.call.CallEIP161-
get_call_params(computation)¶
-
-
evm.logic.call.compute_eip150_msg_gas(computation, gas, extra_gas, value, mnemonic, callstipend)¶
-
evm.logic.call.max_child_gas_eip150(gas)¶
evm.logic.comparison module¶
-
evm.logic.comparison.and_op(computation)¶ Bitwise And
-
evm.logic.comparison.byte_op(computation)¶ Bitwise And
-
evm.logic.comparison.eq(computation)¶ Equality
-
evm.logic.comparison.gt(computation)¶ Greater Comparison
-
evm.logic.comparison.iszero(computation)¶ Not
-
evm.logic.comparison.lt(computation)¶ Lesser Comparison
-
evm.logic.comparison.not_op(computation)¶ Not
-
evm.logic.comparison.or_op(computation)¶ Bitwise Or
-
evm.logic.comparison.sgt(computation)¶ Signed Greater Comparison
-
evm.logic.comparison.slt(computation)¶ Signed Lesser Comparison
-
evm.logic.comparison.xor(computation)¶ Bitwise XOr
evm.logic.context module¶
-
evm.logic.context.address(computation)¶
-
evm.logic.context.balance(computation)¶
-
evm.logic.context.calldatacopy(computation)¶
-
evm.logic.context.calldataload(computation)¶ Load call data into memory.
-
evm.logic.context.calldatasize(computation)¶
-
evm.logic.context.caller(computation)¶
-
evm.logic.context.callvalue(computation)¶
-
evm.logic.context.codecopy(computation)¶
-
evm.logic.context.codesize(computation)¶
-
evm.logic.context.extcodecopy(computation)¶
-
evm.logic.context.extcodesize(computation)¶
-
evm.logic.context.gasprice(computation)¶
-
evm.logic.context.origin(computation)¶
-
evm.logic.context.returndatacopy(computation)¶
-
evm.logic.context.returndatasize(computation)¶
evm.logic.duplication module¶
-
evm.logic.duplication.dup_XX(computation, position)¶ Stack item duplication.
evm.logic.flow module¶
-
evm.logic.flow.gas(computation)¶
-
evm.logic.flow.jump(computation)¶
-
evm.logic.flow.jumpdest(computation)¶
-
evm.logic.flow.jumpi(computation)¶
-
evm.logic.flow.pc(computation)¶
-
evm.logic.flow.stop(computation)¶
evm.logic.invalid module¶
-
class
evm.logic.invalid.InvalidOpcode(value)¶ Bases:
evm.opcode.Opcode-
gas_cost= 0¶
-
mnemonic= 'INVALID'¶
-
evm.logic.memory module¶
-
evm.logic.memory.mload(computation)¶
-
evm.logic.memory.msize(computation)¶
-
evm.logic.memory.mstore(computation)¶
-
evm.logic.memory.mstore8(computation)¶
evm.logic.stack module¶
-
evm.logic.stack.pop(computation)¶
-
evm.logic.stack.push_XX(computation, size)¶
evm.logic.storage module¶
-
evm.logic.storage.sload(computation)¶
-
evm.logic.storage.sstore(computation)¶
evm.logic.system module¶
-
class
evm.logic.system.Create¶ Bases:
evm.opcode.Opcode-
max_child_gas_modifier(gas)¶
-
-
class
evm.logic.system.CreateByzantium¶
-
class
evm.logic.system.CreateEIP150¶ Bases:
evm.logic.system.Create-
max_child_gas_modifier(gas)¶
-
-
evm.logic.system.return_op(computation)¶
-
evm.logic.system.revert(computation)¶
-
evm.logic.system.selfdestruct(computation)¶
-
evm.logic.system.selfdestruct_eip150(computation)¶
-
evm.logic.system.selfdestruct_eip161(computation)¶