Versions in this module Expand all Collapse all v0 v0.3.7 May 31, 2024 v0.3.6 May 24, 2024 v0.3.5 May 19, 2024 Changes in this version type Decompiler + func (d *Decompiler) DecodeLOG1() []Instruction + func (d *Decompiler) DecodeLOG2() []Instruction + func (d *Decompiler) DecodeLOG3() []Instruction + func (d *Decompiler) DecodeLOG4() []Instruction + func (d *Decompiler) GetEvents() []*EventTreeNode + func (d *Decompiler) GetFunctions() []*FunctionTreeNode + func (d *Decompiler) GetStateVariables() ([]*InstructionTree, error) + func (d *Decompiler) StringArray() []string + type EventTreeNode struct + EventBytes []byte + EventBytesHex string + EventSignature string + EventSignatureHex string + HasEventSignature bool + type FunctionTreeNode struct + FunctionBytes []byte + FunctionBytesHex string + FunctionSignature string + FunctionSignatureHex string + HasFunctionSignature bool type Instruction + Data []byte + type InstructionTree struct + Children []*InstructionTree + Instruction Instruction + func NewInstructionTree(instruction Instruction) *InstructionTree type OpCode + func (op OpCode) IsEvent() bool + func (op OpCode) IsFunctionEnd() bool + func (op OpCode) IsFunctionStart() bool + func (op OpCode) IsLog() bool + func (op OpCode) IsPush32() bool v0.3.4 Apr 20, 2024 v0.3.3 Mar 29, 2024 v0.3.2 Mar 28, 2024 v0.3.1 Nov 14, 2023 v0.2.4 Sep 20, 2023 Changes in this version + 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 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 + var ErrEmptyBytecode = errors.New("bytecode is not set or empty bytecode provided") + type Decompiler struct + func NewDecompiler(ctx context.Context, b []byte) (*Decompiler, error) + func (d *Decompiler) Decompile() error + func (d *Decompiler) GetBytecode() []byte + func (d *Decompiler) GetBytecodeSize() uint64 + func (d *Decompiler) GetChildrenByOffset(offset int) []Instruction + func (d *Decompiler) GetInstructionTreeFormatted(instruction Instruction, indent string) string + func (d *Decompiler) GetInstructions() []Instruction + func (d *Decompiler) GetInstructionsByOpCode(op OpCode) []Instruction + func (d *Decompiler) GetTree() *TreeNode + func (d *Decompiler) IsOpCode(instruction Instruction, op OpCode) bool + func (d *Decompiler) MatchFunctionSignature(signature string) bool + func (d *Decompiler) MatchInstruction(instruction Instruction) bool + func (d *Decompiler) OpCodeFound(op OpCode) bool + func (d *Decompiler) String() string + func (d *Decompiler) ToProto() *opcode_pb.Root + type Instruction struct + Args []byte + Description string + Offset int + OpCode OpCode + func (i Instruction) GetArgs() []byte + func (i Instruction) GetCode() OpCode + func (i Instruction) GetDescription() string + func (i Instruction) GetOffset() int + func (i Instruction) String() string + func (i Instruction) ToProto() *opcode_pb.Instruction + type OpCode byte + const ADD + const ADDMOD + const ADDRESS + const AND + const BALANCE + const BASEFEE + const BLOBHASH + const BLOCKHASH + const BYTE + const CALL + const CALLCODE + const CALLDATACOPY + const CALLDATALOAD + const CALLDATASIZE + const CALLER + const CALLVALUE + const CHAINID + const CODECOPY + const CODESIZE + const COINBASE + const CREATE + const CREATE2 + const DELEGATECALL + const DIFFICULTY + const DIV + const EQ + const EXP + const EXTCODECOPY + const EXTCODEHASH + const EXTCODESIZE + const GAS + const GASLIMIT + const GASPRICE + const GT + const INVALID + const ISZERO + const JUMP + const JUMPDEST + const JUMPI + const KECCAK256 + 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 PREVRANDAO + const PUSH0 + 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 RANDOM + const RETURN + const RETURNDATACOPY + const RETURNDATASIZE + const REVERT + const SAR + const SDIV + const SELFBALANCE + const SELFDESTRUCT + const SGT + const SHL + const SHR + const SIGNEXTEND + const SLOAD + const SLT + const SMOD + const SSTORE + const STATICCALL + const STOP + const SUB + const TIMESTAMP + const TLOAD + const TSTORE + const XOR + func StringToOp(str string) OpCode + func (op OpCode) GetDescription() string + func (op OpCode) IsArithmetic() bool + func (op OpCode) IsBitwise() bool + func (op OpCode) IsBlockInformation() bool + func (op OpCode) IsComparison() bool + func (op OpCode) IsFlowControl() bool + func (op OpCode) IsJump() bool + func (op OpCode) IsMemory() bool + func (op OpCode) IsPush() bool + func (op OpCode) IsSelfDestruct() bool + func (op OpCode) IsStack() bool + func (op OpCode) IsStorage() bool + func (op OpCode) IsSystem() bool + func (op OpCode) String() string + func (op OpCode) ToProto() opcode_pb.OpCode + type TreeNode struct + Children []*TreeNode + Instruction Instruction + func (t *TreeNode) Print()