Versions in this module Expand all Collapse all v0 v0.0.1 Sep 18, 2019 Changes in this version + const StackLimit + var PrecompiledContracts = map[common.Uint160]PrecompiledContract + type Contract struct + Caller common.Uint160 + Code []byte + CodeHash common.Uint160 + Input []byte + func NewContract(caller common.Uint160) *Contract + func (c *Contract) GetByte(n uint64) byte + func (c *Contract) GetOp(n uint64) OpCode + func (c *Contract) SetCallCode(code, input []byte, codeHash common.Uint160) + func (c *Contract) SetCode(code []byte, codeHash common.Uint160) + type ExecutionEngine struct + DBCache storage.DBCache + JumpTable [256]OpExec + func NewExecutionEngine(dbCache storage.DBCache, time *big.Int, blockNumber *big.Int, ...) *ExecutionEngine + func (e *ExecutionEngine) Call(caller common.Uint160, codeHash common.Uint160, input []byte) (ret []byte, err error) + func (e *ExecutionEngine) CallCode(codeHash common.Uint160, input []byte) (ret []byte, err error) + func (e *ExecutionEngine) Create(caller common.Uint160, code []byte) (ret []byte, err error) + func (e *ExecutionEngine) DelegateCall(codeHash common.Uint160, toAddr common.Uint160, input []byte) (ret []byte, err error) + type Memory struct + func NewMemory() *Memory + func (m *Memory) Data() []byte + func (m *Memory) Get(offset, size int64) (cpy []byte) + func (m *Memory) GetPtr(offset, size int64) []byte + func (m *Memory) Len() int + func (m *Memory) Print() + func (m *Memory) Resize(size uint64) + func (m *Memory) Set(offset, size uint64, value []byte) error + type OpCode byte + const ADD + const ADDMOD + const ADDRESS + const AND + const BALANCE + const BLOCKHASH + const BYTE + const CALL + const CALLCODE + const CALLDATACOPY + const CALLDATALOAD + const CALLDATASIZE + const CALLER + const CALLVALUE + const CODECOPY + const CODESIZE + const COINBASE + const CREATE + const DELEGATECALL + const DIFFICULTY + const DIV + const DUP + const DUP1 + const DUP10 + const DUP11 + const DUP12 + const DUP13 + const DUP14 + const DUP15 + const DUP16 + const DUP2 + const DUP3 + const DUP4 + const DUP5 + const DUP6 + const DUP7 + const DUP8 + const DUP9 + const EQ + const EXP + const EXTCODECOPY + const EXTCODESIZE + const GAS + const GASLIMIT + const GASPRICE + const GT + const ISZERO + const JUMP + const JUMPDEST + const JUMPI + const LOG0 + const LOG1 + const LOG2 + const LOG3 + const LOG4 + const LT + const MLOAD + const MOD + const MSIZE + const MSTORE + const MSTORE8 + const MUL + const MULMOD + const NOT + const NUMBER + const OR + const ORIGIN + const PC + const POP + const PUSH + const PUSH1 + const PUSH10 + const PUSH11 + const PUSH12 + const PUSH13 + const PUSH14 + const PUSH15 + const PUSH16 + const PUSH17 + const PUSH18 + const PUSH19 + const PUSH2 + const PUSH20 + const PUSH21 + const PUSH22 + const PUSH23 + const PUSH24 + const PUSH25 + const PUSH26 + const PUSH27 + const PUSH28 + const PUSH29 + const PUSH3 + const PUSH30 + const PUSH31 + const PUSH32 + const PUSH4 + const PUSH5 + const PUSH6 + const PUSH7 + const PUSH8 + const PUSH9 + const RETURN + const SDIV + const SELFDESTRUCT + const SGT + const SHA3 + const SIGNEXTEND + const SLOAD + const SLT + const SMOD + const SSTORE + const STOP + const SUB + const SWAP + const SWAP1 + const SWAP10 + const SWAP11 + const SWAP12 + const SWAP13 + const SWAP14 + const SWAP15 + const SWAP16 + const SWAP2 + const SWAP3 + const SWAP4 + const SWAP5 + const SWAP6 + const SWAP7 + const SWAP8 + const SWAP9 + const TIMESTAMP + const XOR + type OpExec struct + Exec executionFunc + Name string + func NewOpExecList() [256]OpExec + type PrecompiledContract interface + Run func(input []byte) ([]byte, error) + type Stack struct + func (s *Stack) Back(n int) *big.Int + func (s *Stack) Data() []*big.Int + func (s *Stack) Print() + type StateDB interface + AddBalance func(common.Uint160, *big.Int) + GetBalance func(common.Uint160) *big.Int + GetCode func(common.Uint160) []byte + GetCodeSize func(common.Uint160) int + GetState func(common.Uint160, common.Hash) common.Hash + SetCode func(common.Uint160, []byte) + SetState func(common.Uint160, common.Hash, common.Hash) + Suicide func(common.Uint160) bool