executor

package
v0.0.0-...-38c47b8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2023 License: AGPL-3.0, AGPL-3.0-or-later Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ExecutorService_ProcessBatch_FullMethodName   = "/executor.v1.ExecutorService/ProcessBatch"
	ExecutorService_GetFlushStatus_FullMethodName = "/executor.v1.ExecutorService/GetFlushStatus"
)

Variables

View Source
var (
	// ErrExecutorUnspecified indicates an unspecified executor error
	ErrExecutorUnspecified = fmt.Errorf("unspecified executor error")
	// ErrROMUnspecified indicates an unspecified ROM error
	ErrROMUnspecified = fmt.Errorf("unspecified ROM error")
	// ErrExecutorUnknown indicates an unknown executor error
	ErrExecutorUnknown = fmt.Errorf("unknown executor error")
	// ErrROMUnknown indicates an unknown ROM error
	ErrROMUnknown = fmt.Errorf("unknown ROM error")
)
View Source
var (
	RomError_name = map[int32]string{
		0:  "ROM_ERROR_UNSPECIFIED",
		1:  "ROM_ERROR_NO_ERROR",
		2:  "ROM_ERROR_OUT_OF_GAS",
		3:  "ROM_ERROR_STACK_OVERFLOW",
		4:  "ROM_ERROR_STACK_UNDERFLOW",
		5:  "ROM_ERROR_MAX_CODE_SIZE_EXCEEDED",
		6:  "ROM_ERROR_CONTRACT_ADDRESS_COLLISION",
		7:  "ROM_ERROR_EXECUTION_REVERTED",
		8:  "ROM_ERROR_OUT_OF_COUNTERS_STEP",
		9:  "ROM_ERROR_OUT_OF_COUNTERS_KECCAK",
		10: "ROM_ERROR_OUT_OF_COUNTERS_BINARY",
		11: "ROM_ERROR_OUT_OF_COUNTERS_MEM",
		12: "ROM_ERROR_OUT_OF_COUNTERS_ARITH",
		13: "ROM_ERROR_OUT_OF_COUNTERS_PADDING",
		14: "ROM_ERROR_OUT_OF_COUNTERS_POSEIDON",
		15: "ROM_ERROR_INVALID_JUMP",
		16: "ROM_ERROR_INVALID_OPCODE",
		17: "ROM_ERROR_INVALID_STATIC",
		18: "ROM_ERROR_INVALID_BYTECODE_STARTS_EF",
		19: "ROM_ERROR_INTRINSIC_INVALID_SIGNATURE",
		20: "ROM_ERROR_INTRINSIC_INVALID_CHAIN_ID",
		21: "ROM_ERROR_INTRINSIC_INVALID_NONCE",
		22: "ROM_ERROR_INTRINSIC_INVALID_GAS_LIMIT",
		23: "ROM_ERROR_INTRINSIC_INVALID_BALANCE",
		24: "ROM_ERROR_INTRINSIC_INVALID_BATCH_GAS_LIMIT",
		25: "ROM_ERROR_INTRINSIC_INVALID_SENDER_CODE",
		26: "ROM_ERROR_INTRINSIC_TX_GAS_OVERFLOW",
		27: "ROM_ERROR_BATCH_DATA_TOO_BIG",
		28: "ROM_ERROR_UNSUPPORTED_FORK_ID",
		29: "ROM_ERROR_INVALID_RLP",
	}
	RomError_value = map[string]int32{
		"ROM_ERROR_UNSPECIFIED":                       0,
		"ROM_ERROR_NO_ERROR":                          1,
		"ROM_ERROR_OUT_OF_GAS":                        2,
		"ROM_ERROR_STACK_OVERFLOW":                    3,
		"ROM_ERROR_STACK_UNDERFLOW":                   4,
		"ROM_ERROR_MAX_CODE_SIZE_EXCEEDED":            5,
		"ROM_ERROR_CONTRACT_ADDRESS_COLLISION":        6,
		"ROM_ERROR_EXECUTION_REVERTED":                7,
		"ROM_ERROR_OUT_OF_COUNTERS_STEP":              8,
		"ROM_ERROR_OUT_OF_COUNTERS_KECCAK":            9,
		"ROM_ERROR_OUT_OF_COUNTERS_BINARY":            10,
		"ROM_ERROR_OUT_OF_COUNTERS_MEM":               11,
		"ROM_ERROR_OUT_OF_COUNTERS_ARITH":             12,
		"ROM_ERROR_OUT_OF_COUNTERS_PADDING":           13,
		"ROM_ERROR_OUT_OF_COUNTERS_POSEIDON":          14,
		"ROM_ERROR_INVALID_JUMP":                      15,
		"ROM_ERROR_INVALID_OPCODE":                    16,
		"ROM_ERROR_INVALID_STATIC":                    17,
		"ROM_ERROR_INVALID_BYTECODE_STARTS_EF":        18,
		"ROM_ERROR_INTRINSIC_INVALID_SIGNATURE":       19,
		"ROM_ERROR_INTRINSIC_INVALID_CHAIN_ID":        20,
		"ROM_ERROR_INTRINSIC_INVALID_NONCE":           21,
		"ROM_ERROR_INTRINSIC_INVALID_GAS_LIMIT":       22,
		"ROM_ERROR_INTRINSIC_INVALID_BALANCE":         23,
		"ROM_ERROR_INTRINSIC_INVALID_BATCH_GAS_LIMIT": 24,
		"ROM_ERROR_INTRINSIC_INVALID_SENDER_CODE":     25,
		"ROM_ERROR_INTRINSIC_TX_GAS_OVERFLOW":         26,
		"ROM_ERROR_BATCH_DATA_TOO_BIG":                27,
		"ROM_ERROR_UNSUPPORTED_FORK_ID":               28,
		"ROM_ERROR_INVALID_RLP":                       29,
	}
)

Enum value maps for RomError.

View Source
var (
	ExecutorError_name = map[int32]string{
		0:  "EXECUTOR_ERROR_UNSPECIFIED",
		1:  "EXECUTOR_ERROR_NO_ERROR",
		2:  "EXECUTOR_ERROR_DB_ERROR",
		3:  "EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_STEPS",
		4:  "EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_KECCAK",
		5:  "EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_BINARY",
		6:  "EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_MEM",
		7:  "EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_ARITH",
		8:  "EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_PADDING",
		9:  "EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_POSEIDON",
		10: "EXECUTOR_ERROR_UNSUPPORTED_FORK_ID",
		11: "EXECUTOR_ERROR_BALANCE_MISMATCH",
		12: "EXECUTOR_ERROR_FEA2SCALAR",
		13: "EXECUTOR_ERROR_TOS32",
		14: "EXECUTOR_ERROR_SM_MAIN_INVALID_UNSIGNED_TX",
		15: "EXECUTOR_ERROR_SM_MAIN_INVALID_NO_COUNTERS",
		16: "EXECUTOR_ERROR_SM_MAIN_ARITH_ECRECOVER_DIVIDE_BY_ZERO",
		17: "EXECUTOR_ERROR_SM_MAIN_ADDRESS_OUT_OF_RANGE",
		18: "EXECUTOR_ERROR_SM_MAIN_ADDRESS_NEGATIVE",
		19: "EXECUTOR_ERROR_SM_MAIN_STORAGE_INVALID_KEY",
		20: "EXECUTOR_ERROR_SM_MAIN_HASHK",
		21: "EXECUTOR_ERROR_SM_MAIN_HASHK_SIZE_OUT_OF_RANGE",
		22: "EXECUTOR_ERROR_SM_MAIN_HASHK_POSITION_NEGATIVE",
		23: "EXECUTOR_ERROR_SM_MAIN_HASHK_POSITION_PLUS_SIZE_OUT_OF_RANGE",
		24: "EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_ADDRESS_NOT_FOUND",
		25: "EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_NOT_COMPLETED",
		26: "EXECUTOR_ERROR_SM_MAIN_HASHP",
		27: "EXECUTOR_ERROR_SM_MAIN_HASHP_SIZE_OUT_OF_RANGE",
		28: "EXECUTOR_ERROR_SM_MAIN_HASHP_POSITION_NEGATIVE",
		29: "EXECUTOR_ERROR_SM_MAIN_HASHP_POSITION_PLUS_SIZE_OUT_OF_RANGE",
		30: "EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_ADDRESS_NOT_FOUND",
		31: "EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_NOT_COMPLETED",
		32: "EXECUTOR_ERROR_SM_MAIN_MEMALIGN_OFFSET_OUT_OF_RANGE",
		33: "EXECUTOR_ERROR_SM_MAIN_MULTIPLE_FREEIN",
		34: "EXECUTOR_ERROR_SM_MAIN_ASSERT",
		35: "EXECUTOR_ERROR_SM_MAIN_MEMORY",
		36: "EXECUTOR_ERROR_SM_MAIN_STORAGE_READ_MISMATCH",
		37: "EXECUTOR_ERROR_SM_MAIN_STORAGE_WRITE_MISMATCH",
		38: "EXECUTOR_ERROR_SM_MAIN_HASHK_VALUE_MISMATCH",
		39: "EXECUTOR_ERROR_SM_MAIN_HASHK_PADDING_MISMATCH",
		40: "EXECUTOR_ERROR_SM_MAIN_HASHK_SIZE_MISMATCH",
		41: "EXECUTOR_ERROR_SM_MAIN_HASHKLEN_LENGTH_MISMATCH",
		42: "EXECUTOR_ERROR_SM_MAIN_HASHKLEN_CALLED_TWICE",
		43: "EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_NOT_FOUND",
		44: "EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_DIGEST_MISMATCH",
		45: "EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_CALLED_TWICE",
		46: "EXECUTOR_ERROR_SM_MAIN_HASHP_VALUE_MISMATCH",
		47: "EXECUTOR_ERROR_SM_MAIN_HASHP_PADDING_MISMATCH",
		48: "EXECUTOR_ERROR_SM_MAIN_HASHP_SIZE_MISMATCH",
		49: "EXECUTOR_ERROR_SM_MAIN_HASHPLEN_LENGTH_MISMATCH",
		50: "EXECUTOR_ERROR_SM_MAIN_HASHPLEN_CALLED_TWICE",
		51: "EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_DIGEST_MISMATCH",
		52: "EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_CALLED_TWICE",
		53: "EXECUTOR_ERROR_SM_MAIN_ARITH_MISMATCH",
		54: "EXECUTOR_ERROR_SM_MAIN_ARITH_ECRECOVER_MISMATCH",
		55: "EXECUTOR_ERROR_SM_MAIN_BINARY_ADD_MISMATCH",
		56: "EXECUTOR_ERROR_SM_MAIN_BINARY_SUB_MISMATCH",
		57: "EXECUTOR_ERROR_SM_MAIN_BINARY_LT_MISMATCH",
		58: "EXECUTOR_ERROR_SM_MAIN_BINARY_SLT_MISMATCH",
		59: "EXECUTOR_ERROR_SM_MAIN_BINARY_EQ_MISMATCH",
		60: "EXECUTOR_ERROR_SM_MAIN_BINARY_AND_MISMATCH",
		61: "EXECUTOR_ERROR_SM_MAIN_BINARY_OR_MISMATCH",
		62: "EXECUTOR_ERROR_SM_MAIN_BINARY_XOR_MISMATCH",
		63: "EXECUTOR_ERROR_SM_MAIN_MEMALIGN_WRITE_MISMATCH",
		64: "EXECUTOR_ERROR_SM_MAIN_MEMALIGN_WRITE8_MISMATCH",
		65: "EXECUTOR_ERROR_SM_MAIN_MEMALIGN_READ_MISMATCH",
		66: "EXECUTOR_ERROR_SM_MAIN_JMPN_OUT_OF_RANGE",
		67: "EXECUTOR_ERROR_SM_MAIN_HASHK_READ_OUT_OF_RANGE",
		68: "EXECUTOR_ERROR_SM_MAIN_HASHP_READ_OUT_OF_RANGE",
		69: "EXECUTOR_ERROR_INVALID_OLD_STATE_ROOT",
		70: "EXECUTOR_ERROR_INVALID_OLD_ACC_INPUT_HASH",
		71: "EXECUTOR_ERROR_INVALID_CHAIN_ID",
		72: "EXECUTOR_ERROR_INVALID_BATCH_L2_DATA",
		73: "EXECUTOR_ERROR_INVALID_GLOBAL_EXIT_ROOT",
		74: "EXECUTOR_ERROR_INVALID_COINBASE",
		75: "EXECUTOR_ERROR_INVALID_FROM",
		76: "EXECUTOR_ERROR_INVALID_DB_KEY",
		77: "EXECUTOR_ERROR_INVALID_DB_VALUE",
		78: "EXECUTOR_ERROR_INVALID_CONTRACTS_BYTECODE_KEY",
		79: "EXECUTOR_ERROR_INVALID_CONTRACTS_BYTECODE_VALUE",
		80: "EXECUTOR_ERROR_INVALID_GET_KEY",
	}
	ExecutorError_value = map[string]int32{
		"EXECUTOR_ERROR_UNSPECIFIED":                                   0,
		"EXECUTOR_ERROR_NO_ERROR":                                      1,
		"EXECUTOR_ERROR_DB_ERROR":                                      2,
		"EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_STEPS":               3,
		"EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_KECCAK":              4,
		"EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_BINARY":              5,
		"EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_MEM":                 6,
		"EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_ARITH":               7,
		"EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_PADDING":             8,
		"EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_POSEIDON":            9,
		"EXECUTOR_ERROR_UNSUPPORTED_FORK_ID":                           10,
		"EXECUTOR_ERROR_BALANCE_MISMATCH":                              11,
		"EXECUTOR_ERROR_FEA2SCALAR":                                    12,
		"EXECUTOR_ERROR_TOS32":                                         13,
		"EXECUTOR_ERROR_SM_MAIN_INVALID_UNSIGNED_TX":                   14,
		"EXECUTOR_ERROR_SM_MAIN_INVALID_NO_COUNTERS":                   15,
		"EXECUTOR_ERROR_SM_MAIN_ARITH_ECRECOVER_DIVIDE_BY_ZERO":        16,
		"EXECUTOR_ERROR_SM_MAIN_ADDRESS_OUT_OF_RANGE":                  17,
		"EXECUTOR_ERROR_SM_MAIN_ADDRESS_NEGATIVE":                      18,
		"EXECUTOR_ERROR_SM_MAIN_STORAGE_INVALID_KEY":                   19,
		"EXECUTOR_ERROR_SM_MAIN_HASHK":                                 20,
		"EXECUTOR_ERROR_SM_MAIN_HASHK_SIZE_OUT_OF_RANGE":               21,
		"EXECUTOR_ERROR_SM_MAIN_HASHK_POSITION_NEGATIVE":               22,
		"EXECUTOR_ERROR_SM_MAIN_HASHK_POSITION_PLUS_SIZE_OUT_OF_RANGE": 23,
		"EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_ADDRESS_NOT_FOUND":         24,
		"EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_NOT_COMPLETED":             25,
		"EXECUTOR_ERROR_SM_MAIN_HASHP":                                 26,
		"EXECUTOR_ERROR_SM_MAIN_HASHP_SIZE_OUT_OF_RANGE":               27,
		"EXECUTOR_ERROR_SM_MAIN_HASHP_POSITION_NEGATIVE":               28,
		"EXECUTOR_ERROR_SM_MAIN_HASHP_POSITION_PLUS_SIZE_OUT_OF_RANGE": 29,
		"EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_ADDRESS_NOT_FOUND":         30,
		"EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_NOT_COMPLETED":             31,
		"EXECUTOR_ERROR_SM_MAIN_MEMALIGN_OFFSET_OUT_OF_RANGE":          32,
		"EXECUTOR_ERROR_SM_MAIN_MULTIPLE_FREEIN":                       33,
		"EXECUTOR_ERROR_SM_MAIN_ASSERT":                                34,
		"EXECUTOR_ERROR_SM_MAIN_MEMORY":                                35,
		"EXECUTOR_ERROR_SM_MAIN_STORAGE_READ_MISMATCH":                 36,
		"EXECUTOR_ERROR_SM_MAIN_STORAGE_WRITE_MISMATCH":                37,
		"EXECUTOR_ERROR_SM_MAIN_HASHK_VALUE_MISMATCH":                  38,
		"EXECUTOR_ERROR_SM_MAIN_HASHK_PADDING_MISMATCH":                39,
		"EXECUTOR_ERROR_SM_MAIN_HASHK_SIZE_MISMATCH":                   40,
		"EXECUTOR_ERROR_SM_MAIN_HASHKLEN_LENGTH_MISMATCH":              41,
		"EXECUTOR_ERROR_SM_MAIN_HASHKLEN_CALLED_TWICE":                 42,
		"EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_NOT_FOUND":                 43,
		"EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_DIGEST_MISMATCH":           44,
		"EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_CALLED_TWICE":              45,
		"EXECUTOR_ERROR_SM_MAIN_HASHP_VALUE_MISMATCH":                  46,
		"EXECUTOR_ERROR_SM_MAIN_HASHP_PADDING_MISMATCH":                47,
		"EXECUTOR_ERROR_SM_MAIN_HASHP_SIZE_MISMATCH":                   48,
		"EXECUTOR_ERROR_SM_MAIN_HASHPLEN_LENGTH_MISMATCH":              49,
		"EXECUTOR_ERROR_SM_MAIN_HASHPLEN_CALLED_TWICE":                 50,
		"EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_DIGEST_MISMATCH":           51,
		"EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_CALLED_TWICE":              52,
		"EXECUTOR_ERROR_SM_MAIN_ARITH_MISMATCH":                        53,
		"EXECUTOR_ERROR_SM_MAIN_ARITH_ECRECOVER_MISMATCH":              54,
		"EXECUTOR_ERROR_SM_MAIN_BINARY_ADD_MISMATCH":                   55,
		"EXECUTOR_ERROR_SM_MAIN_BINARY_SUB_MISMATCH":                   56,
		"EXECUTOR_ERROR_SM_MAIN_BINARY_LT_MISMATCH":                    57,
		"EXECUTOR_ERROR_SM_MAIN_BINARY_SLT_MISMATCH":                   58,
		"EXECUTOR_ERROR_SM_MAIN_BINARY_EQ_MISMATCH":                    59,
		"EXECUTOR_ERROR_SM_MAIN_BINARY_AND_MISMATCH":                   60,
		"EXECUTOR_ERROR_SM_MAIN_BINARY_OR_MISMATCH":                    61,
		"EXECUTOR_ERROR_SM_MAIN_BINARY_XOR_MISMATCH":                   62,
		"EXECUTOR_ERROR_SM_MAIN_MEMALIGN_WRITE_MISMATCH":               63,
		"EXECUTOR_ERROR_SM_MAIN_MEMALIGN_WRITE8_MISMATCH":              64,
		"EXECUTOR_ERROR_SM_MAIN_MEMALIGN_READ_MISMATCH":                65,
		"EXECUTOR_ERROR_SM_MAIN_JMPN_OUT_OF_RANGE":                     66,
		"EXECUTOR_ERROR_SM_MAIN_HASHK_READ_OUT_OF_RANGE":               67,
		"EXECUTOR_ERROR_SM_MAIN_HASHP_READ_OUT_OF_RANGE":               68,
		"EXECUTOR_ERROR_INVALID_OLD_STATE_ROOT":                        69,
		"EXECUTOR_ERROR_INVALID_OLD_ACC_INPUT_HASH":                    70,
		"EXECUTOR_ERROR_INVALID_CHAIN_ID":                              71,
		"EXECUTOR_ERROR_INVALID_BATCH_L2_DATA":                         72,
		"EXECUTOR_ERROR_INVALID_GLOBAL_EXIT_ROOT":                      73,
		"EXECUTOR_ERROR_INVALID_COINBASE":                              74,
		"EXECUTOR_ERROR_INVALID_FROM":                                  75,
		"EXECUTOR_ERROR_INVALID_DB_KEY":                                76,
		"EXECUTOR_ERROR_INVALID_DB_VALUE":                              77,
		"EXECUTOR_ERROR_INVALID_CONTRACTS_BYTECODE_KEY":                78,
		"EXECUTOR_ERROR_INVALID_CONTRACTS_BYTECODE_VALUE":              79,
		"EXECUTOR_ERROR_INVALID_GET_KEY":                               80,
	}
)

Enum value maps for ExecutorError.

View Source
var ExecutorService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "executor.v1.ExecutorService",
	HandlerType: (*ExecutorServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ProcessBatch",
			Handler:    _ExecutorService_ProcessBatch_Handler,
		},
		{
			MethodName: "GetFlushStatus",
			Handler:    _ExecutorService_GetFlushStatus_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "executor.proto",
}

ExecutorService_ServiceDesc is the grpc.ServiceDesc for ExecutorService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var File_executor_proto protoreflect.FileDescriptor

Functions

func ExecutorErr

func ExecutorErr(errorCode ExecutorError) error

ExecutorErr returns an instance of error related to the ExecutorError

func IsExecutorOutOfCountersError

func IsExecutorOutOfCountersError(error ExecutorError) bool

IsExecutorOutOfCountersError indicates if the error is an ROM OOC

func IsExecutorUnspecifiedError

func IsExecutorUnspecifiedError(error ExecutorError) bool

IsExecutorUnspecifiedError indicates an unspecified error in the executor

func IsIntrinsicError

func IsIntrinsicError(error RomError) bool

IsIntrinsicError indicates if the error is due to a intrinsic check

func IsInvalidBalanceError

func IsInvalidBalanceError(error RomError) bool

IsInvalidBalanceError indicates if the error is due to a invalid balance

func IsInvalidNonceError

func IsInvalidNonceError(error RomError) bool

IsInvalidNonceError indicates if the error is due to a invalid nonce

func IsROMOutOfCountersError

func IsROMOutOfCountersError(error RomError) bool

IsROMOutOfCountersError indicates if the error is an ROM OOC

func IsROMOutOfGasError

func IsROMOutOfGasError(error RomError) bool

IsROMOutOfGasError indicates if the error is an ROM OOG

func RegisterExecutorServiceServer

func RegisterExecutorServiceServer(s grpc.ServiceRegistrar, srv ExecutorServiceServer)

func RomErr

func RomErr(errorCode RomError) error

RomErr returns an instance of error related to the ExecutorError

Types

type CallTrace

type CallTrace struct {
	Context *TransactionContext `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"`
	Steps   []*TransactionStep  `protobuf:"bytes,2,rep,name=steps,proto3" json:"steps,omitempty"`
	// contains filtered or unexported fields
}

func (*CallTrace) Descriptor deprecated

func (*CallTrace) Descriptor() ([]byte, []int)

Deprecated: Use CallTrace.ProtoReflect.Descriptor instead.

func (*CallTrace) GetContext

func (x *CallTrace) GetContext() *TransactionContext

func (*CallTrace) GetSteps

func (x *CallTrace) GetSteps() []*TransactionStep

func (*CallTrace) ProtoMessage

func (*CallTrace) ProtoMessage()

func (*CallTrace) ProtoReflect

func (x *CallTrace) ProtoReflect() protoreflect.Message

func (*CallTrace) Reset

func (x *CallTrace) Reset()

func (*CallTrace) String

func (x *CallTrace) String() string

type Config

type Config struct {
	URI string `mapstructure:"URI"`
	// MaxResourceExhaustedAttempts is the max number of attempts to make a transaction succeed because of resource exhaustion
	MaxResourceExhaustedAttempts int `mapstructure:"MaxResourceExhaustedAttempts"`
	// WaitOnResourceExhaustion is the time to wait before retrying a transaction because of resource exhaustion
	WaitOnResourceExhaustion types.Duration `mapstructure:"WaitOnResourceExhaustion"`
	MaxGRPCMessageSize       int            `mapstructure:"MaxGRPCMessageSize"`
}

Config represents the configuration of the executor server

type Contract

type Contract struct {
	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Caller  string `protobuf:"bytes,2,opt,name=caller,proto3" json:"caller,omitempty"`
	Value   string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
	Data    []byte `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"`
	Gas     uint64 `protobuf:"varint,5,opt,name=gas,proto3" json:"gas,omitempty"`
	// Define type of internal call: CREATE, CREATE2, CALL, CALLCODE, DELEGATECALL, STATICCALL
	Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"`
	// contains filtered or unexported fields
}

func (*Contract) Descriptor deprecated

func (*Contract) Descriptor() ([]byte, []int)

Deprecated: Use Contract.ProtoReflect.Descriptor instead.

func (*Contract) GetAddress

func (x *Contract) GetAddress() string

func (*Contract) GetCaller

func (x *Contract) GetCaller() string

func (*Contract) GetData

func (x *Contract) GetData() []byte

func (*Contract) GetGas

func (x *Contract) GetGas() uint64

func (*Contract) GetType

func (x *Contract) GetType() string

func (*Contract) GetValue

func (x *Contract) GetValue() string

func (*Contract) ProtoMessage

func (*Contract) ProtoMessage()

func (*Contract) ProtoReflect

func (x *Contract) ProtoReflect() protoreflect.Message

func (*Contract) Reset

func (x *Contract) Reset()

func (*Contract) String

func (x *Contract) String() string

type ExecutionTraceStep

type ExecutionTraceStep struct {

	// Program Counter
	Pc uint64 `protobuf:"varint,1,opt,name=pc,proto3" json:"pc,omitempty"`
	// OpCode
	Op string `protobuf:"bytes,2,opt,name=op,proto3" json:"op,omitempty"`
	// Remaining gas
	RemainingGas uint64 `protobuf:"varint,3,opt,name=remaining_gas,json=remainingGas,proto3" json:"remaining_gas,omitempty"`
	// Gas cost of the operation
	GasCost uint64 `protobuf:"varint,4,opt,name=gas_cost,json=gasCost,proto3" json:"gas_cost,omitempty"`
	// Content of memory, starting at memory_offset, showing only changes vs. previous step
	Memory []byte `protobuf:"bytes,5,opt,name=memory,proto3" json:"memory,omitempty"`
	// Total size of memory
	MemorySize uint32 `protobuf:"varint,6,opt,name=memory_size,json=memorySize,proto3" json:"memory_size,omitempty"`
	// Offset of memory changes
	MemoryOffset uint32 `protobuf:"varint,7,opt,name=memory_offset,json=memoryOffset,proto3" json:"memory_offset,omitempty"`
	// Content of the stack
	Stack []string `protobuf:"bytes,8,rep,name=stack,proto3" json:"stack,omitempty"`
	// Returned data
	ReturnData []byte `protobuf:"bytes,9,opt,name=return_data,json=returnData,proto3" json:"return_data,omitempty"`
	// Content of the storage
	Storage map[string]string `` /* 156-byte string literal not displayed */
	// Call depth
	Depth uint32 `protobuf:"varint,11,opt,name=depth,proto3" json:"depth,omitempty"`
	// Gas refund
	GasRefund uint64 `protobuf:"varint,12,opt,name=gas_refund,json=gasRefund,proto3" json:"gas_refund,omitempty"`
	// Error
	Error RomError `protobuf:"varint,13,opt,name=error,proto3,enum=executor.v1.RomError" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionTraceStep) Descriptor deprecated

func (*ExecutionTraceStep) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionTraceStep.ProtoReflect.Descriptor instead.

func (*ExecutionTraceStep) GetDepth

func (x *ExecutionTraceStep) GetDepth() uint32

func (*ExecutionTraceStep) GetError

func (x *ExecutionTraceStep) GetError() RomError

func (*ExecutionTraceStep) GetGasCost

func (x *ExecutionTraceStep) GetGasCost() uint64

func (*ExecutionTraceStep) GetGasRefund

func (x *ExecutionTraceStep) GetGasRefund() uint64

func (*ExecutionTraceStep) GetMemory

func (x *ExecutionTraceStep) GetMemory() []byte

func (*ExecutionTraceStep) GetMemoryOffset

func (x *ExecutionTraceStep) GetMemoryOffset() uint32

func (*ExecutionTraceStep) GetMemorySize

func (x *ExecutionTraceStep) GetMemorySize() uint32

func (*ExecutionTraceStep) GetOp

func (x *ExecutionTraceStep) GetOp() string

func (*ExecutionTraceStep) GetPc

func (x *ExecutionTraceStep) GetPc() uint64

func (*ExecutionTraceStep) GetRemainingGas

func (x *ExecutionTraceStep) GetRemainingGas() uint64

func (*ExecutionTraceStep) GetReturnData

func (x *ExecutionTraceStep) GetReturnData() []byte

func (*ExecutionTraceStep) GetStack

func (x *ExecutionTraceStep) GetStack() []string

func (*ExecutionTraceStep) GetStorage

func (x *ExecutionTraceStep) GetStorage() map[string]string

func (*ExecutionTraceStep) ProtoMessage

func (*ExecutionTraceStep) ProtoMessage()

func (*ExecutionTraceStep) ProtoReflect

func (x *ExecutionTraceStep) ProtoReflect() protoreflect.Message

func (*ExecutionTraceStep) Reset

func (x *ExecutionTraceStep) Reset()

func (*ExecutionTraceStep) String

func (x *ExecutionTraceStep) String() string

type ExecutorError

type ExecutorError int32
const (
	ExecutorError_EXECUTOR_ERROR_UNSPECIFIED ExecutorError = 0
	// EXECUTOR_ERROR_NO_ERROR indicates there was no error
	ExecutorError_EXECUTOR_ERROR_NO_ERROR ExecutorError = 1
	// EXECUTOR_ERROR_DB_ERROR indicates that there is an error connecting to the database
	ExecutorError_EXECUTOR_ERROR_DB_ERROR ExecutorError = 2
	// EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_STEPS indicates that the main execution exceeded the maximum number of steps
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_STEPS ExecutorError = 3
	// EXECUTOR_ERROR_COUNTERS_OVERFLOW_KECCAK indicates that the keccak counter exceeded the maximum
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_KECCAK ExecutorError = 4
	// EXECUTOR_ERROR_COUNTERS_OVERFLOW_BINARY indicates that the binary counter exceeded the maximum
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_BINARY ExecutorError = 5
	// EXECUTOR_ERROR_COUNTERS_OVERFLOW_MEM indicates that the memory align counter exceeded the maximum
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_MEM ExecutorError = 6
	// EXECUTOR_ERROR_COUNTERS_OVERFLOW_ARITH indicates that the arith counter exceeded the maximum
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_ARITH ExecutorError = 7
	// EXECUTOR_ERROR_COUNTERS_OVERFLOW_PADDING indicates that the padding counter exceeded the maximum
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_PADDING ExecutorError = 8
	// EXECUTOR_ERROR_COUNTERS_OVERFLOW_POSEIDON indicates that the poseidon counter exceeded the maximum
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_COUNTERS_OVERFLOW_POSEIDON ExecutorError = 9
	// EXECUTOR_ERROR_UNSUPPORTED_FORK_ID indicates that the fork id is not supported
	ExecutorError_EXECUTOR_ERROR_UNSUPPORTED_FORK_ID ExecutorError = 10
	// EXECUTOR_ERROR_BALANCE_MISMATCH indicates that there is a balance mismatch error in the ROM
	ExecutorError_EXECUTOR_ERROR_BALANCE_MISMATCH ExecutorError = 11
	// EXECUTOR_ERROR_FEA2SCALAR indicates that there is a fea2scalar error in the execution
	ExecutorError_EXECUTOR_ERROR_FEA2SCALAR ExecutorError = 12
	// EXECUTOR_ERROR_TOS32 indicates that there is a TOS32 error in the execution
	ExecutorError_EXECUTOR_ERROR_TOS32 ExecutorError = 13
	// EXECUTOR_ERROR_SM_MAIN_INVALID_UNSIGNED_TX indicates that there is an unsigned TX in a non-process batch (i.e. in a prover request)
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_INVALID_UNSIGNED_TX ExecutorError = 14
	// EXECUTOR_ERROR_SM_MAIN_INVALID_NO_COUNTERS indicates that there is a no-counters request in a non-process batch (i.e. in a prover request)
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_INVALID_NO_COUNTERS ExecutorError = 15
	// EXECUTOR_ERROR_SM_MAIN_ARITH_ECRECOVER_DIVIDE_BY_ZERO indicates that there is a divide-by-zero situation during an ECRecover
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_ARITH_ECRECOVER_DIVIDE_BY_ZERO ExecutorError = 16
	// EXECUTOR_ERROR_SM_MAIN_ADDRESS_OUT_OF_RANGE indicates that an address is out of valid memory space range
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_ADDRESS_OUT_OF_RANGE ExecutorError = 17
	// EXECUTOR_ERROR_SM_MAIN_ADDRESS_NEGATIVE indicates that an address is negative
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_ADDRESS_NEGATIVE ExecutorError = 18
	// EXECUTOR_ERROR_SM_MAIN_STORAGE_INVALID_KEY indicates that a register value is out of range while building storage key
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_STORAGE_INVALID_KEY ExecutorError = 19
	// EXECUTOR_ERROR_SM_MAIN_HASHK indicates that a register value is out of range while calculating a Keccak hash
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHK ExecutorError = 20
	// EXECUTOR_ERROR_SM_MAIN_HASHK_SIZE_OUT_OF_RANGE indicates that a size register value is out of range while calculating a Keccak hash
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHK_SIZE_OUT_OF_RANGE ExecutorError = 21
	// EXECUTOR_ERROR_SM_MAIN_HASHK_POSITION_NEGATIVE indicates that a position register value is negative while calculating a Keccak hash
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHK_POSITION_NEGATIVE ExecutorError = 22
	// EXECUTOR_ERROR_SM_MAIN_HASHK_POSITION_PLUS_SIZE_OUT_OF_RANGE indicates that a position register value plus a size register value is out of range while calculating a Keccak hash
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHK_POSITION_PLUS_SIZE_OUT_OF_RANGE ExecutorError = 23
	// EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_ADDRESS_NOT_FOUND indicates that an address has not been found while calculating a Keccak hash digest
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_ADDRESS_NOT_FOUND ExecutorError = 24
	// EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_NOT_COMPLETED indicates that the hash has not been completed while calling a Keccak hash digest
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_NOT_COMPLETED ExecutorError = 25
	// EXECUTOR_ERROR_SM_MAIN_HASHP indicates that a register value is out of range while calculating a Poseidon hash
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHP ExecutorError = 26
	// EXECUTOR_ERROR_SM_MAIN_HASHP_SIZE_OUT_OF_RANGE indicates that a size register value is out of range while calculating a Poseidon hash
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHP_SIZE_OUT_OF_RANGE ExecutorError = 27
	// EXECUTOR_ERROR_SM_MAIN_HASHP_POSITION_NEGATIVE indicates that a position register value is negative while calculating a Poseidon hash
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHP_POSITION_NEGATIVE ExecutorError = 28
	// EXECUTOR_ERROR_SM_MAIN_HASHP_POSITION_PLUS_SIZE_OUT_OF_RANGE indicates that a position register value plus a size register value is out of range while calculating a Poseidon hash
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHP_POSITION_PLUS_SIZE_OUT_OF_RANGE ExecutorError = 29
	// EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_ADDRESS_NOT_FOUND indicates that an address has not been found while calculating a Poseidon hash digest
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_ADDRESS_NOT_FOUND ExecutorError = 30
	// EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_NOT_COMPLETED indicates that the hash has not been completed while calling a Poseidon hash digest
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_NOT_COMPLETED ExecutorError = 31
	// EXECUTOR_ERROR_SM_MAIN_MEMALIGN_OFFSET_OUT_OF_RANGE indicates that the an offset register value is out of range while doing a mem align operation
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_MEMALIGN_OFFSET_OUT_OF_RANGE ExecutorError = 32
	// EXECUTOR_ERROR_SM_MAIN_MULTIPLE_FREEIN indicates that we got more than one free inputs in one ROM instruction
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_MULTIPLE_FREEIN ExecutorError = 33
	// EXECUTOR_ERROR_SM_MAIN_ASSERT indicates that the ROM assert instruction failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_ASSERT ExecutorError = 34
	// EXECUTOR_ERROR_SM_MAIN_MEMORY indicates that the memory instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_MEMORY ExecutorError = 35
	// EXECUTOR_ERROR_SM_MAIN_STORAGE_READ_MISMATCH indicates that the storage read instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_STORAGE_READ_MISMATCH ExecutorError = 36
	// EXECUTOR_ERROR_SM_MAIN_STORAGE_WRITE_MISMATCH indicates that the storage read instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_STORAGE_WRITE_MISMATCH ExecutorError = 37
	// EXECUTOR_ERROR_SM_MAIN_HASHK_VALUE_MISMATCH indicates that the Keccak hash instruction value check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHK_VALUE_MISMATCH ExecutorError = 38
	// EXECUTOR_ERROR_SM_MAIN_HASHK_PADDING_MISMATCH indicates that the Keccak hash instruction padding check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHK_PADDING_MISMATCH ExecutorError = 39
	// EXECUTOR_ERROR_SM_MAIN_HASHK_SIZE_MISMATCH indicates that the Keccak hash instruction size check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHK_SIZE_MISMATCH ExecutorError = 40
	// EXECUTOR_ERROR_SM_MAIN_HASHKLEN_LENGTH_MISMATCH indicates that the Keccak hash length instruction length check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHKLEN_LENGTH_MISMATCH ExecutorError = 41
	// EXECUTOR_ERROR_SM_MAIN_HASHKLEN_CALLED_TWICE indicates that the Keccak hash length instruction called once check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHKLEN_CALLED_TWICE ExecutorError = 42
	// EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_NOT_FOUND indicates that the Keccak hash digest instruction slot not found
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_NOT_FOUND ExecutorError = 43
	// EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_DIGEST_MISMATCH indicates that the Keccak hash digest instruction digest check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_DIGEST_MISMATCH ExecutorError = 44
	// EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_CALLED_TWICE indicates that the Keccak hash digest instruction called once check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHKDIGEST_CALLED_TWICE ExecutorError = 45
	// EXECUTOR_ERROR_SM_MAIN_HASHP_VALUE_MISMATCH indicates that the Poseidon hash instruction value check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHP_VALUE_MISMATCH ExecutorError = 46
	// EXECUTOR_ERROR_SM_MAIN_HASHP_PADDING_MISMATCH indicates that the Poseidon hash instruction padding check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHP_PADDING_MISMATCH ExecutorError = 47
	// EXECUTOR_ERROR_SM_MAIN_HASHP_SIZE_MISMATCH indicates that the Poseidon hash instruction size check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHP_SIZE_MISMATCH ExecutorError = 48
	// EXECUTOR_ERROR_SM_MAIN_HASHPLEN_LENGTH_MISMATCH indicates that the Poseidon hash length instruction length check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHPLEN_LENGTH_MISMATCH ExecutorError = 49
	// EXECUTOR_ERROR_SM_MAIN_HASHPLEN_CALLED_TWICE indicates that the Poseidon hash length instruction called once check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHPLEN_CALLED_TWICE ExecutorError = 50
	// EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_DIGEST_MISMATCH indicates that the Poseidon hash digest instruction digest check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_DIGEST_MISMATCH ExecutorError = 51
	// EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_CALLED_TWICE indicates that the Poseidon hash digest instruction called once check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHPDIGEST_CALLED_TWICE ExecutorError = 52
	// EXECUTOR_ERROR_SM_MAIN_ARITH_MISMATCH indicates that the arith instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_ARITH_MISMATCH ExecutorError = 53
	// EXECUTOR_ERROR_SM_MAIN_ARITH_ECRECOVER_MISMATCH indicates that the arith ECRecover instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_ARITH_ECRECOVER_MISMATCH ExecutorError = 54
	// EXECUTOR_ERROR_SM_MAIN_BINARY_ADD_MISMATCH indicates that the binary add instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_BINARY_ADD_MISMATCH ExecutorError = 55
	// EXECUTOR_ERROR_SM_MAIN_BINARY_SUB_MISMATCH indicates that the binary sub instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_BINARY_SUB_MISMATCH ExecutorError = 56
	// EXECUTOR_ERROR_SM_MAIN_BINARY_LT_MISMATCH indicates that the binary less than instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_BINARY_LT_MISMATCH ExecutorError = 57
	// EXECUTOR_ERROR_SM_MAIN_BINARY_SLT_MISMATCH indicates that the binary signed less than instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_BINARY_SLT_MISMATCH ExecutorError = 58
	// EXECUTOR_ERROR_SM_MAIN_BINARY_EQ_MISMATCH indicates that the binary equal instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_BINARY_EQ_MISMATCH ExecutorError = 59
	// EXECUTOR_ERROR_SM_MAIN_BINARY_AND_MISMATCH indicates that the binary and instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_BINARY_AND_MISMATCH ExecutorError = 60
	// EXECUTOR_ERROR_SM_MAIN_BINARY_OR_MISMATCH indicates that the binary or instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_BINARY_OR_MISMATCH ExecutorError = 61
	// EXECUTOR_ERROR_SM_MAIN_BINARY_XOR_MISMATCH indicates that the binary xor instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_BINARY_XOR_MISMATCH ExecutorError = 62
	// EXECUTOR_ERROR_SM_MAIN_MEMALIGN_WRITE_MISMATCH indicates that the memory align write instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_MEMALIGN_WRITE_MISMATCH ExecutorError = 63
	// EXECUTOR_ERROR_SM_MAIN_MEMALIGN_WRITE8_MISMATCH indicates that the memory align write 8 instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_MEMALIGN_WRITE8_MISMATCH ExecutorError = 64
	// EXECUTOR_ERROR_SM_MAIN_MEMALIGN_READ_MISMATCH indicates that the memory align read instruction check failed
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_MEMALIGN_READ_MISMATCH ExecutorError = 65
	// EXECUTOR_ERROR_SM_MAIN_JMPN_OUT_OF_RANGE indicates that the JMPN instruction found a jump position out of range
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_JMPN_OUT_OF_RANGE ExecutorError = 66
	// EXECUTOR_ERROR_SM_MAIN_HASHK_READ_OUT_OF_RANGE indicates that the main execution Keccak check found read out of range
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHK_READ_OUT_OF_RANGE ExecutorError = 67
	// EXECUTOR_ERROR_SM_MAIN_HASHP_READ_OUT_OF_RANGE indicates that the main execution Poseidon check found read out of range
	ExecutorError_EXECUTOR_ERROR_SM_MAIN_HASHP_READ_OUT_OF_RANGE ExecutorError = 68
	// EXECUTOR_ERROR_INVALID_OLD_STATE_ROOT indicates that the input parameter old_state_root is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_OLD_STATE_ROOT ExecutorError = 69
	// EXECUTOR_ERROR_INVALID_OLD_ACC_INPUT_HASH indicates that the input parameter old_acc_input_hash is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_OLD_ACC_INPUT_HASH ExecutorError = 70
	// EXECUTOR_ERROR_INVALID_CHAIN_ID indicates that the input parameter chain_id is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_CHAIN_ID ExecutorError = 71
	// EXECUTOR_ERROR_INVALID_BATCH_L2_DATA indicates that the input parameter batch_l2_data is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_BATCH_L2_DATA ExecutorError = 72
	// EXECUTOR_ERROR_INVALID_GLOBAL_EXIT_ROOT indicates that the input parameter global_exit_root is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_GLOBAL_EXIT_ROOT ExecutorError = 73
	// EXECUTOR_ERROR_INVALID_COINBASE indicates that the input parameter coinbase (i.e. sequencer address) is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_COINBASE ExecutorError = 74
	// EXECUTOR_ERROR_INVALID_FROM indicates that the input parameter from is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_FROM ExecutorError = 75
	// EXECUTOR_ERROR_INVALID_DB_KEY indicates that the input parameter db key is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_DB_KEY ExecutorError = 76
	// EXECUTOR_ERROR_INVALID_DB_VALUE indicates that the input parameter db value is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_DB_VALUE ExecutorError = 77
	// EXECUTOR_ERROR_INVALID_CONTRACTS_BYTECODE_KEY indicates that the input parameter contracts_bytecode key is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_CONTRACTS_BYTECODE_KEY ExecutorError = 78
	// EXECUTOR_ERROR_INVALID_CONTRACTS_BYTECODE_VALUE indicates that the input parameter contracts_bytecode value is invalid
	ExecutorError_EXECUTOR_ERROR_INVALID_CONTRACTS_BYTECODE_VALUE ExecutorError = 79
	// EXECUTOR_ERROR_INVALID_GET_KEY indicates that the input parameter get key is invalid, e.g. is true but fork_id<5
	ExecutorError_EXECUTOR_ERROR_INVALID_GET_KEY ExecutorError = 80
)

func ExecutorErrorCode

func ExecutorErrorCode(err error) ExecutorError

ExecutorErrorCode returns the error code for a given error

func (ExecutorError) Descriptor

func (ExecutorError) Enum

func (x ExecutorError) Enum() *ExecutorError

func (ExecutorError) EnumDescriptor deprecated

func (ExecutorError) EnumDescriptor() ([]byte, []int)

Deprecated: Use ExecutorError.Descriptor instead.

func (ExecutorError) Number

func (ExecutorError) String

func (x ExecutorError) String() string

func (ExecutorError) Type

type ExecutorServiceClient

type ExecutorServiceClient interface {
	// / Processes a batch
	ProcessBatch(ctx context.Context, in *ProcessBatchRequest, opts ...grpc.CallOption) (*ProcessBatchResponse, error)
	GetFlushStatus(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*GetFlushStatusResponse, error)
}

ExecutorServiceClient is the client API for ExecutorService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewExecutorClient

NewExecutorClient is the executor client constructor.

type ExecutorServiceServer

type ExecutorServiceServer interface {
	// / Processes a batch
	ProcessBatch(context.Context, *ProcessBatchRequest) (*ProcessBatchResponse, error)
	GetFlushStatus(context.Context, *emptypb.Empty) (*GetFlushStatusResponse, error)
	// contains filtered or unexported methods
}

ExecutorServiceServer is the server API for ExecutorService service. All implementations must embed UnimplementedExecutorServiceServer for forward compatibility

type GetFlushStatusResponse

type GetFlushStatusResponse struct {
	StoredFlushId         uint64 `protobuf:"varint,1,opt,name=stored_flush_id,json=storedFlushId,proto3" json:"stored_flush_id,omitempty"`
	StoringFlushId        uint64 `protobuf:"varint,2,opt,name=storing_flush_id,json=storingFlushId,proto3" json:"storing_flush_id,omitempty"`
	LastFlushId           uint64 `protobuf:"varint,3,opt,name=last_flush_id,json=lastFlushId,proto3" json:"last_flush_id,omitempty"`
	PendingToFlushNodes   uint64 `protobuf:"varint,4,opt,name=pending_to_flush_nodes,json=pendingToFlushNodes,proto3" json:"pending_to_flush_nodes,omitempty"`
	PendingToFlushProgram uint64 `` /* 129-byte string literal not displayed */
	StoringNodes          uint64 `protobuf:"varint,6,opt,name=storing_nodes,json=storingNodes,proto3" json:"storing_nodes,omitempty"`
	StoringProgram        uint64 `protobuf:"varint,7,opt,name=storing_program,json=storingProgram,proto3" json:"storing_program,omitempty"`
	ProverId              string `protobuf:"bytes,8,opt,name=prover_id,json=proverId,proto3" json:"prover_id,omitempty"`
	// contains filtered or unexported fields
}

* @dev GetFlushStatusResponse @param {last_sent_flush_id} - id of the last flush data sent to database @param {sending_flush_id} - id of the flush data being sent now to database @param {last_flush_id} - id assigned to the last call to flush @param {pending_to_flush_nodes} - number of SMT nodes pending to flush @param {pending_to_flush_program} - number of SC programs pending to flush @param {storing_nodes} - number of SMT nodes being stored in the hash database @param {storing_program} - number of SC programs being stored in the hash database @param {prover_id} - id assigned to this instance of the prover process

func (*GetFlushStatusResponse) Descriptor deprecated

func (*GetFlushStatusResponse) Descriptor() ([]byte, []int)

Deprecated: Use GetFlushStatusResponse.ProtoReflect.Descriptor instead.

func (*GetFlushStatusResponse) GetLastFlushId

func (x *GetFlushStatusResponse) GetLastFlushId() uint64

func (*GetFlushStatusResponse) GetPendingToFlushNodes

func (x *GetFlushStatusResponse) GetPendingToFlushNodes() uint64

func (*GetFlushStatusResponse) GetPendingToFlushProgram

func (x *GetFlushStatusResponse) GetPendingToFlushProgram() uint64

func (*GetFlushStatusResponse) GetProverId

func (x *GetFlushStatusResponse) GetProverId() string

func (*GetFlushStatusResponse) GetStoredFlushId

func (x *GetFlushStatusResponse) GetStoredFlushId() uint64

func (*GetFlushStatusResponse) GetStoringFlushId

func (x *GetFlushStatusResponse) GetStoringFlushId() uint64

func (*GetFlushStatusResponse) GetStoringNodes

func (x *GetFlushStatusResponse) GetStoringNodes() uint64

func (*GetFlushStatusResponse) GetStoringProgram

func (x *GetFlushStatusResponse) GetStoringProgram() uint64

func (*GetFlushStatusResponse) ProtoMessage

func (*GetFlushStatusResponse) ProtoMessage()

func (*GetFlushStatusResponse) ProtoReflect

func (x *GetFlushStatusResponse) ProtoReflect() protoreflect.Message

func (*GetFlushStatusResponse) Reset

func (x *GetFlushStatusResponse) Reset()

func (*GetFlushStatusResponse) String

func (x *GetFlushStatusResponse) String() string

type InfoReadWrite

type InfoReadWrite struct {

	// If nonce="" then it has not been set; if set, string is in decimal (base 10)
	Nonce string `protobuf:"bytes,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
	// If balance="" then it has not been set; if set, string is in decimal (base 10)
	Balance string `protobuf:"bytes,2,opt,name=balance,proto3" json:"balance,omitempty"`
	// contains filtered or unexported fields
}

func (*InfoReadWrite) Descriptor deprecated

func (*InfoReadWrite) Descriptor() ([]byte, []int)

Deprecated: Use InfoReadWrite.ProtoReflect.Descriptor instead.

func (*InfoReadWrite) GetBalance

func (x *InfoReadWrite) GetBalance() string

func (*InfoReadWrite) GetNonce

func (x *InfoReadWrite) GetNonce() string

func (*InfoReadWrite) ProtoMessage

func (*InfoReadWrite) ProtoMessage()

func (*InfoReadWrite) ProtoReflect

func (x *InfoReadWrite) ProtoReflect() protoreflect.Message

func (*InfoReadWrite) Reset

func (x *InfoReadWrite) Reset()

func (*InfoReadWrite) String

func (x *InfoReadWrite) String() string

type Log

type Log struct {

	// Address of the contract that generated the event
	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	// List of topics provided by the contract
	Topics [][]byte `protobuf:"bytes,2,rep,name=topics,proto3" json:"topics,omitempty"`
	// Supplied by the contract, usually ABI-encoded
	Data []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
	// Batch in which the transaction was included
	BatchNumber uint64 `protobuf:"varint,4,opt,name=batch_number,json=batchNumber,proto3" json:"batch_number,omitempty"`
	// Hash of the transaction
	TxHash []byte `protobuf:"bytes,5,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"`
	// Index of the transaction in the block
	TxIndex uint32 `protobuf:"varint,6,opt,name=tx_index,json=txIndex,proto3" json:"tx_index,omitempty"`
	// Hash of the batch in which the transaction was included
	BatchHash []byte `protobuf:"bytes,7,opt,name=batch_hash,json=batchHash,proto3" json:"batch_hash,omitempty"`
	// Index of the log in the block
	Index uint32 `protobuf:"varint,8,opt,name=index,proto3" json:"index,omitempty"`
	// contains filtered or unexported fields
}

func (*Log) Descriptor deprecated

func (*Log) Descriptor() ([]byte, []int)

Deprecated: Use Log.ProtoReflect.Descriptor instead.

func (*Log) GetAddress

func (x *Log) GetAddress() string

func (*Log) GetBatchHash

func (x *Log) GetBatchHash() []byte

func (*Log) GetBatchNumber

func (x *Log) GetBatchNumber() uint64

func (*Log) GetData

func (x *Log) GetData() []byte

func (*Log) GetIndex

func (x *Log) GetIndex() uint32

func (*Log) GetTopics

func (x *Log) GetTopics() [][]byte

func (*Log) GetTxHash

func (x *Log) GetTxHash() []byte

func (*Log) GetTxIndex

func (x *Log) GetTxIndex() uint32

func (*Log) ProtoMessage

func (*Log) ProtoMessage()

func (*Log) ProtoReflect

func (x *Log) ProtoReflect() protoreflect.Message

func (*Log) Reset

func (x *Log) Reset()

func (*Log) String

func (x *Log) String() string

type ProcessBatchRequest

type ProcessBatchRequest struct {
	OldStateRoot     []byte `protobuf:"bytes,1,opt,name=old_state_root,json=oldStateRoot,proto3" json:"old_state_root,omitempty"`
	OldAccInputHash  []byte `protobuf:"bytes,2,opt,name=old_acc_input_hash,json=oldAccInputHash,proto3" json:"old_acc_input_hash,omitempty"`
	OldBatchNum      uint64 `protobuf:"varint,3,opt,name=old_batch_num,json=oldBatchNum,proto3" json:"old_batch_num,omitempty"`
	ChainId          uint64 `protobuf:"varint,4,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"`
	ForkId           uint64 `protobuf:"varint,5,opt,name=fork_id,json=forkId,proto3" json:"fork_id,omitempty"`
	BatchL2Data      []byte `protobuf:"bytes,6,opt,name=batch_l2_data,json=batchL2Data,proto3" json:"batch_l2_data,omitempty"`
	GlobalExitRoot   []byte `protobuf:"bytes,7,opt,name=global_exit_root,json=globalExitRoot,proto3" json:"global_exit_root,omitempty"`
	EthTimestamp     uint64 `protobuf:"varint,8,opt,name=eth_timestamp,json=ethTimestamp,proto3" json:"eth_timestamp,omitempty"`
	Coinbase         string `protobuf:"bytes,9,opt,name=coinbase,proto3" json:"coinbase,omitempty"`
	UpdateMerkleTree uint32 `protobuf:"varint,10,opt,name=update_merkle_tree,json=updateMerkleTree,proto3" json:"update_merkle_tree,omitempty"`
	// flag to indicate that counters should not be taken into account
	NoCounters uint64 `protobuf:"varint,11,opt,name=no_counters,json=noCounters,proto3" json:"no_counters,omitempty"`
	// from is used for unsigned transactions with sender
	From string `protobuf:"bytes,12,opt,name=from,proto3" json:"from,omitempty"`
	// For testing purposes only
	Db                map[string]string `` /* 146-byte string literal not displayed */
	ContractsBytecode map[string]string `` // For debug/testing purpposes only. Don't fill this on production
	/* 201-byte string literal not displayed */
	TraceConfig *TraceConfig `protobuf:"bytes,15,opt,name=trace_config,json=traceConfig,proto3" json:"trace_config,omitempty"`
	ContextId   string       `protobuf:"bytes,16,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	GetKeys     uint32       `protobuf:"varint,17,opt,name=get_keys,json=getKeys,proto3" json:"get_keys,omitempty"` // if 1, the keys used to read or write storage values will be returned
	// contains filtered or unexported fields
}

func (*ProcessBatchRequest) Descriptor deprecated

func (*ProcessBatchRequest) Descriptor() ([]byte, []int)

Deprecated: Use ProcessBatchRequest.ProtoReflect.Descriptor instead.

func (*ProcessBatchRequest) GetBatchL2Data

func (x *ProcessBatchRequest) GetBatchL2Data() []byte

func (*ProcessBatchRequest) GetChainId

func (x *ProcessBatchRequest) GetChainId() uint64

func (*ProcessBatchRequest) GetCoinbase

func (x *ProcessBatchRequest) GetCoinbase() string

func (*ProcessBatchRequest) GetContextId

func (x *ProcessBatchRequest) GetContextId() string

func (*ProcessBatchRequest) GetContractsBytecode

func (x *ProcessBatchRequest) GetContractsBytecode() map[string]string

func (*ProcessBatchRequest) GetDb

func (x *ProcessBatchRequest) GetDb() map[string]string

func (*ProcessBatchRequest) GetEthTimestamp

func (x *ProcessBatchRequest) GetEthTimestamp() uint64

func (*ProcessBatchRequest) GetForkId

func (x *ProcessBatchRequest) GetForkId() uint64

func (*ProcessBatchRequest) GetFrom

func (x *ProcessBatchRequest) GetFrom() string

func (*ProcessBatchRequest) GetGetKeys

func (x *ProcessBatchRequest) GetGetKeys() uint32

func (*ProcessBatchRequest) GetGlobalExitRoot

func (x *ProcessBatchRequest) GetGlobalExitRoot() []byte

func (*ProcessBatchRequest) GetNoCounters

func (x *ProcessBatchRequest) GetNoCounters() uint64

func (*ProcessBatchRequest) GetOldAccInputHash

func (x *ProcessBatchRequest) GetOldAccInputHash() []byte

func (*ProcessBatchRequest) GetOldBatchNum

func (x *ProcessBatchRequest) GetOldBatchNum() uint64

func (*ProcessBatchRequest) GetOldStateRoot

func (x *ProcessBatchRequest) GetOldStateRoot() []byte

func (*ProcessBatchRequest) GetTraceConfig

func (x *ProcessBatchRequest) GetTraceConfig() *TraceConfig

func (*ProcessBatchRequest) GetUpdateMerkleTree

func (x *ProcessBatchRequest) GetUpdateMerkleTree() uint32

func (*ProcessBatchRequest) ProtoMessage

func (*ProcessBatchRequest) ProtoMessage()

func (*ProcessBatchRequest) ProtoReflect

func (x *ProcessBatchRequest) ProtoReflect() protoreflect.Message

func (*ProcessBatchRequest) Reset

func (x *ProcessBatchRequest) Reset()

func (*ProcessBatchRequest) String

func (x *ProcessBatchRequest) String() string

type ProcessBatchResponse

type ProcessBatchResponse struct {
	NewStateRoot        []byte                        `protobuf:"bytes,1,opt,name=new_state_root,json=newStateRoot,proto3" json:"new_state_root,omitempty"`
	NewAccInputHash     []byte                        `protobuf:"bytes,2,opt,name=new_acc_input_hash,json=newAccInputHash,proto3" json:"new_acc_input_hash,omitempty"`
	NewLocalExitRoot    []byte                        `protobuf:"bytes,3,opt,name=new_local_exit_root,json=newLocalExitRoot,proto3" json:"new_local_exit_root,omitempty"`
	NewBatchNum         uint64                        `protobuf:"varint,4,opt,name=new_batch_num,json=newBatchNum,proto3" json:"new_batch_num,omitempty"`
	CntKeccakHashes     uint32                        `protobuf:"varint,5,opt,name=cnt_keccak_hashes,json=cntKeccakHashes,proto3" json:"cnt_keccak_hashes,omitempty"`
	CntPoseidonHashes   uint32                        `protobuf:"varint,6,opt,name=cnt_poseidon_hashes,json=cntPoseidonHashes,proto3" json:"cnt_poseidon_hashes,omitempty"`
	CntPoseidonPaddings uint32                        `protobuf:"varint,7,opt,name=cnt_poseidon_paddings,json=cntPoseidonPaddings,proto3" json:"cnt_poseidon_paddings,omitempty"`
	CntMemAligns        uint32                        `protobuf:"varint,8,opt,name=cnt_mem_aligns,json=cntMemAligns,proto3" json:"cnt_mem_aligns,omitempty"`
	CntArithmetics      uint32                        `protobuf:"varint,9,opt,name=cnt_arithmetics,json=cntArithmetics,proto3" json:"cnt_arithmetics,omitempty"`
	CntBinaries         uint32                        `protobuf:"varint,10,opt,name=cnt_binaries,json=cntBinaries,proto3" json:"cnt_binaries,omitempty"`
	CntSteps            uint32                        `protobuf:"varint,11,opt,name=cnt_steps,json=cntSteps,proto3" json:"cnt_steps,omitempty"`
	CumulativeGasUsed   uint64                        `protobuf:"varint,12,opt,name=cumulative_gas_used,json=cumulativeGasUsed,proto3" json:"cumulative_gas_used,omitempty"`
	Responses           []*ProcessTransactionResponse `protobuf:"bytes,13,rep,name=responses,proto3" json:"responses,omitempty"`
	Error               ExecutorError                 `protobuf:"varint,14,opt,name=error,proto3,enum=executor.v1.ExecutorError" json:"error,omitempty"`
	ReadWriteAddresses  map[string]*InfoReadWrite     `` /* 206-byte string literal not displayed */
	FlushId             uint64                        `protobuf:"varint,16,opt,name=flush_id,json=flushId,proto3" json:"flush_id,omitempty"`
	StoredFlushId       uint64                        `protobuf:"varint,17,opt,name=stored_flush_id,json=storedFlushId,proto3" json:"stored_flush_id,omitempty"`
	ProverId            string                        `protobuf:"bytes,18,opt,name=prover_id,json=proverId,proto3" json:"prover_id,omitempty"`
	NodesKeys           [][]byte                      `protobuf:"bytes,19,rep,name=nodes_keys,json=nodesKeys,proto3" json:"nodes_keys,omitempty"`
	ProgramKeys         [][]byte                      `protobuf:"bytes,20,rep,name=program_keys,json=programKeys,proto3" json:"program_keys,omitempty"`
	// contains filtered or unexported fields
}

func (*ProcessBatchResponse) Descriptor deprecated

func (*ProcessBatchResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProcessBatchResponse.ProtoReflect.Descriptor instead.

func (*ProcessBatchResponse) GetCntArithmetics

func (x *ProcessBatchResponse) GetCntArithmetics() uint32

func (*ProcessBatchResponse) GetCntBinaries

func (x *ProcessBatchResponse) GetCntBinaries() uint32

func (*ProcessBatchResponse) GetCntKeccakHashes

func (x *ProcessBatchResponse) GetCntKeccakHashes() uint32

func (*ProcessBatchResponse) GetCntMemAligns

func (x *ProcessBatchResponse) GetCntMemAligns() uint32

func (*ProcessBatchResponse) GetCntPoseidonHashes

func (x *ProcessBatchResponse) GetCntPoseidonHashes() uint32

func (*ProcessBatchResponse) GetCntPoseidonPaddings

func (x *ProcessBatchResponse) GetCntPoseidonPaddings() uint32

func (*ProcessBatchResponse) GetCntSteps

func (x *ProcessBatchResponse) GetCntSteps() uint32

func (*ProcessBatchResponse) GetCumulativeGasUsed

func (x *ProcessBatchResponse) GetCumulativeGasUsed() uint64

func (*ProcessBatchResponse) GetError

func (x *ProcessBatchResponse) GetError() ExecutorError

func (*ProcessBatchResponse) GetFlushId

func (x *ProcessBatchResponse) GetFlushId() uint64

func (*ProcessBatchResponse) GetNewAccInputHash

func (x *ProcessBatchResponse) GetNewAccInputHash() []byte

func (*ProcessBatchResponse) GetNewBatchNum

func (x *ProcessBatchResponse) GetNewBatchNum() uint64

func (*ProcessBatchResponse) GetNewLocalExitRoot

func (x *ProcessBatchResponse) GetNewLocalExitRoot() []byte

func (*ProcessBatchResponse) GetNewStateRoot

func (x *ProcessBatchResponse) GetNewStateRoot() []byte

func (*ProcessBatchResponse) GetNodesKeys

func (x *ProcessBatchResponse) GetNodesKeys() [][]byte

func (*ProcessBatchResponse) GetProgramKeys

func (x *ProcessBatchResponse) GetProgramKeys() [][]byte

func (*ProcessBatchResponse) GetProverId

func (x *ProcessBatchResponse) GetProverId() string

func (*ProcessBatchResponse) GetReadWriteAddresses

func (x *ProcessBatchResponse) GetReadWriteAddresses() map[string]*InfoReadWrite

func (*ProcessBatchResponse) GetResponses

func (x *ProcessBatchResponse) GetResponses() []*ProcessTransactionResponse

func (*ProcessBatchResponse) GetStoredFlushId

func (x *ProcessBatchResponse) GetStoredFlushId() uint64

func (*ProcessBatchResponse) ProtoMessage

func (*ProcessBatchResponse) ProtoMessage()

func (*ProcessBatchResponse) ProtoReflect

func (x *ProcessBatchResponse) ProtoReflect() protoreflect.Message

func (*ProcessBatchResponse) Reset

func (x *ProcessBatchResponse) Reset()

func (*ProcessBatchResponse) String

func (x *ProcessBatchResponse) String() string

type ProcessTransactionResponse

type ProcessTransactionResponse struct {

	// Hash of the transaction
	TxHash []byte `protobuf:"bytes,1,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"`
	// RLP encoded transaction
	// [nonce, gasPrice, gasLimit, to, value, data, v, r, s]
	RlpTx []byte `protobuf:"bytes,2,opt,name=rlp_tx,json=rlpTx,proto3" json:"rlp_tx,omitempty"`
	// Type indicates legacy transaction
	// It will be always 0 (legacy) in the executor
	Type uint32 `protobuf:"varint,3,opt,name=type,proto3" json:"type,omitempty"`
	// Returned data from the runtime (function result or data supplied with revert opcode)
	ReturnValue []byte `protobuf:"bytes,4,opt,name=return_value,json=returnValue,proto3" json:"return_value,omitempty"`
	// Total gas left as result of execution
	GasLeft uint64 `protobuf:"varint,5,opt,name=gas_left,json=gasLeft,proto3" json:"gas_left,omitempty"`
	// Total gas used as result of execution or gas estimation
	GasUsed uint64 `protobuf:"varint,6,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
	// Total gas refunded as result of execution
	GasRefunded uint64 `protobuf:"varint,7,opt,name=gas_refunded,json=gasRefunded,proto3" json:"gas_refunded,omitempty"`
	// Any error encountered during the execution
	Error RomError `protobuf:"varint,8,opt,name=error,proto3,enum=executor.v1.RomError" json:"error,omitempty"`
	// New SC Address in case of SC creation
	CreateAddress string `protobuf:"bytes,9,opt,name=create_address,json=createAddress,proto3" json:"create_address,omitempty"`
	// State Root
	StateRoot []byte `protobuf:"bytes,10,opt,name=state_root,json=stateRoot,proto3" json:"state_root,omitempty"`
	// Logs emited by LOG opcode
	Logs []*Log `protobuf:"bytes,11,rep,name=logs,proto3" json:"logs,omitempty"`
	// Trace
	ExecutionTrace []*ExecutionTraceStep `protobuf:"bytes,13,rep,name=execution_trace,json=executionTrace,proto3" json:"execution_trace,omitempty"`
	CallTrace      *CallTrace            `protobuf:"bytes,14,opt,name=call_trace,json=callTrace,proto3" json:"call_trace,omitempty"`
	// Efective Gas Price
	EffectiveGasPrice   string `protobuf:"bytes,15,opt,name=effective_gas_price,json=effectiveGasPrice,proto3" json:"effective_gas_price,omitempty"`
	EffectivePercentage uint32 `protobuf:"varint,16,opt,name=effective_percentage,json=effectivePercentage,proto3" json:"effective_percentage,omitempty"`
	// Flag to indicate if opcode 'GASPRICE' has been called
	HasGaspriceOpcode uint32 `protobuf:"varint,17,opt,name=has_gasprice_opcode,json=hasGaspriceOpcode,proto3" json:"has_gasprice_opcode,omitempty"`
	// Flag to indicate if opcode 'BALANCE' has been called
	HasBalanceOpcode uint32 `protobuf:"varint,18,opt,name=has_balance_opcode,json=hasBalanceOpcode,proto3" json:"has_balance_opcode,omitempty"`
	// contains filtered or unexported fields
}

func (*ProcessTransactionResponse) Descriptor deprecated

func (*ProcessTransactionResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProcessTransactionResponse.ProtoReflect.Descriptor instead.

func (*ProcessTransactionResponse) GetCallTrace

func (x *ProcessTransactionResponse) GetCallTrace() *CallTrace

func (*ProcessTransactionResponse) GetCreateAddress

func (x *ProcessTransactionResponse) GetCreateAddress() string

func (*ProcessTransactionResponse) GetEffectiveGasPrice

func (x *ProcessTransactionResponse) GetEffectiveGasPrice() string

func (*ProcessTransactionResponse) GetEffectivePercentage

func (x *ProcessTransactionResponse) GetEffectivePercentage() uint32

func (*ProcessTransactionResponse) GetError

func (x *ProcessTransactionResponse) GetError() RomError

func (*ProcessTransactionResponse) GetExecutionTrace

func (x *ProcessTransactionResponse) GetExecutionTrace() []*ExecutionTraceStep

func (*ProcessTransactionResponse) GetGasLeft

func (x *ProcessTransactionResponse) GetGasLeft() uint64

func (*ProcessTransactionResponse) GetGasRefunded

func (x *ProcessTransactionResponse) GetGasRefunded() uint64

func (*ProcessTransactionResponse) GetGasUsed

func (x *ProcessTransactionResponse) GetGasUsed() uint64

func (*ProcessTransactionResponse) GetHasBalanceOpcode

func (x *ProcessTransactionResponse) GetHasBalanceOpcode() uint32

func (*ProcessTransactionResponse) GetHasGaspriceOpcode

func (x *ProcessTransactionResponse) GetHasGaspriceOpcode() uint32

func (*ProcessTransactionResponse) GetLogs

func (x *ProcessTransactionResponse) GetLogs() []*Log

func (*ProcessTransactionResponse) GetReturnValue

func (x *ProcessTransactionResponse) GetReturnValue() []byte

func (*ProcessTransactionResponse) GetRlpTx

func (x *ProcessTransactionResponse) GetRlpTx() []byte

func (*ProcessTransactionResponse) GetStateRoot

func (x *ProcessTransactionResponse) GetStateRoot() []byte

func (*ProcessTransactionResponse) GetTxHash

func (x *ProcessTransactionResponse) GetTxHash() []byte

func (*ProcessTransactionResponse) GetType

func (x *ProcessTransactionResponse) GetType() uint32

func (*ProcessTransactionResponse) ProtoMessage

func (*ProcessTransactionResponse) ProtoMessage()

func (*ProcessTransactionResponse) ProtoReflect

func (*ProcessTransactionResponse) Reset

func (x *ProcessTransactionResponse) Reset()

func (*ProcessTransactionResponse) String

func (x *ProcessTransactionResponse) String() string

type RomError

type RomError int32
const (
	RomError_ROM_ERROR_UNSPECIFIED RomError = 0
	// ROM_ERROR_NO_ERROR indicates the execution ended successfully
	RomError_ROM_ERROR_NO_ERROR RomError = 1
	// ROM_ERROR_OUT_OF_GAS indicates there is not enough balance to continue the execution
	RomError_ROM_ERROR_OUT_OF_GAS RomError = 2
	// ROM_ERROR_STACK_OVERFLOW indicates a stack overflow has happened
	RomError_ROM_ERROR_STACK_OVERFLOW RomError = 3
	// ROM_ERROR_STACK_UNDERFLOW indicates a stack overflow has happened
	RomError_ROM_ERROR_STACK_UNDERFLOW RomError = 4
	// ROM_ERROR_MAX_CODE_SIZE_EXCEEDED indicates the code size is beyond the maximum
	RomError_ROM_ERROR_MAX_CODE_SIZE_EXCEEDED RomError = 5
	// ROM_ERROR_CONTRACT_ADDRESS_COLLISION there is a collision regarding contract addresses
	RomError_ROM_ERROR_CONTRACT_ADDRESS_COLLISION RomError = 6
	// ROM_ERROR_EXECUTION_REVERTED indicates the execution has been reverted
	RomError_ROM_ERROR_EXECUTION_REVERTED RomError = 7
	// ROM_ERROR_OUT_OF_COUNTERS_STEP indicates there is not enough step counters to continue the execution
	RomError_ROM_ERROR_OUT_OF_COUNTERS_STEP RomError = 8
	// ROM_ERROR_OUT_OF_COUNTERS_KECCAK indicates there is not enough keccak counters to continue the execution
	RomError_ROM_ERROR_OUT_OF_COUNTERS_KECCAK RomError = 9
	// ROM_ERROR_OUT_OF_COUNTERS_BINARY indicates there is not enough binary counters to continue the execution
	RomError_ROM_ERROR_OUT_OF_COUNTERS_BINARY RomError = 10
	// ROM_ERROR_OUT_OF_COUNTERS_MEM indicates there is not enough memory aligncounters to continue the execution
	RomError_ROM_ERROR_OUT_OF_COUNTERS_MEM RomError = 11
	// ROM_ERROR_OUT_OF_COUNTERS_ARITH indicates there is not enough arith counters to continue the execution
	RomError_ROM_ERROR_OUT_OF_COUNTERS_ARITH RomError = 12
	// ROM_ERROR_OUT_OF_COUNTERS_PADDING indicates there is not enough padding counters to continue the execution
	RomError_ROM_ERROR_OUT_OF_COUNTERS_PADDING RomError = 13
	// ROM_ERROR_OUT_OF_COUNTERS_POSEIDON indicates there is not enough poseidon counters to continue the execution
	RomError_ROM_ERROR_OUT_OF_COUNTERS_POSEIDON RomError = 14
	// ROM_ERROR_INVALID_JUMP indicates there is an invalid jump opcode
	RomError_ROM_ERROR_INVALID_JUMP RomError = 15
	// ROM_ERROR_INVALID_OPCODE indicates there is an invalid opcode
	RomError_ROM_ERROR_INVALID_OPCODE RomError = 16
	// ROM_ERROR_INVALID_STATIC indicates there is an invalid static call
	RomError_ROM_ERROR_INVALID_STATIC RomError = 17
	// ROM_ERROR_INVALID_BYTECODE_STARTS_EF indicates there is a bytecode starting with 0xEF
	RomError_ROM_ERROR_INVALID_BYTECODE_STARTS_EF RomError = 18
	// ROM_ERROR_INTRINSIC_INVALID_SIGNATURE indicates the transaction is failing at the signature intrinsic check
	RomError_ROM_ERROR_INTRINSIC_INVALID_SIGNATURE RomError = 19
	// ROM_ERROR_INTRINSIC_INVALID_CHAIN_ID indicates the transaction is failing at the chain id intrinsic check
	RomError_ROM_ERROR_INTRINSIC_INVALID_CHAIN_ID RomError = 20
	// ROM_ERROR_INTRINSIC_INVALID_NONCE indicates the transaction is failing at the nonce intrinsic check
	RomError_ROM_ERROR_INTRINSIC_INVALID_NONCE RomError = 21
	// ROM_ERROR_INTRINSIC_INVALID_GAS indicates the transaction is failing at the gas limit intrinsic check
	RomError_ROM_ERROR_INTRINSIC_INVALID_GAS_LIMIT RomError = 22
	// ROM_ERROR_INTRINSIC_INVALID_BALANCE indicates the transaction is failing at balance intrinsic check
	RomError_ROM_ERROR_INTRINSIC_INVALID_BALANCE RomError = 23
	// ROM_ERROR_INTRINSIC_INVALID_BATCH_GAS_LIMIT indicates the batch is exceeding the batch gas limit
	RomError_ROM_ERROR_INTRINSIC_INVALID_BATCH_GAS_LIMIT RomError = 24
	// ROM_ERROR_INTRINSIC_INVALID_SENDER_CODE indicates the transaction sender is invalid
	RomError_ROM_ERROR_INTRINSIC_INVALID_SENDER_CODE RomError = 25
	// ROM_ERROR_INTRINSIC_TX_GAS_OVERFLOW indicates the transaction gasLimit*gasPrice > MAX_UINT_256 - 1
	RomError_ROM_ERROR_INTRINSIC_TX_GAS_OVERFLOW RomError = 26
	// ROM_ERROR_BATCH_DATA_TOO_BIG indicates the batch_l2_data is too big to be processed
	RomError_ROM_ERROR_BATCH_DATA_TOO_BIG RomError = 27
	// ROM_ERROR_UNSUPPORTED_FORK_ID indicates that the fork id is not supported
	RomError_ROM_ERROR_UNSUPPORTED_FORK_ID RomError = 28
	// ROM_ERROR_INVALID_RLP indicates that there has been an error while parsing the RLP
	RomError_ROM_ERROR_INVALID_RLP RomError = 29
)

func RomErrorCode

func RomErrorCode(err error) RomError

RomErrorCode returns the error code for a given error

func (RomError) Descriptor

func (RomError) Descriptor() protoreflect.EnumDescriptor

func (RomError) Enum

func (x RomError) Enum() *RomError

func (RomError) EnumDescriptor deprecated

func (RomError) EnumDescriptor() ([]byte, []int)

Deprecated: Use RomError.Descriptor instead.

func (RomError) Number

func (x RomError) Number() protoreflect.EnumNumber

func (RomError) String

func (x RomError) String() string

func (RomError) Type

type TraceConfig

type TraceConfig struct {

	// Disables storage (default=false)
	DisableStorage uint32 `protobuf:"varint,1,opt,name=disable_storage,json=disableStorage,proto3" json:"disable_storage,omitempty"`
	// Disables stack (default=false)
	DisableStack uint32 `protobuf:"varint,2,opt,name=disable_stack,json=disableStack,proto3" json:"disable_stack,omitempty"`
	// Enables memory (default=false)
	EnableMemory uint32 `protobuf:"varint,3,opt,name=enable_memory,json=enableMemory,proto3" json:"enable_memory,omitempty"`
	// Enables return data (default=false)
	EnableReturnData uint32 `protobuf:"varint,4,opt,name=enable_return_data,json=enableReturnData,proto3" json:"enable_return_data,omitempty"`
	// Hash of tx in batch to retrieve the execution trace
	TxHashToGenerateExecuteTrace []byte `` /* 153-byte string literal not displayed */
	// Hash of tx in batch to retrieve the call trace
	TxHashToGenerateCallTrace []byte `` /* 144-byte string literal not displayed */
	// contains filtered or unexported fields
}

Trace configuration request params

func (*TraceConfig) Descriptor deprecated

func (*TraceConfig) Descriptor() ([]byte, []int)

Deprecated: Use TraceConfig.ProtoReflect.Descriptor instead.

func (*TraceConfig) GetDisableStack

func (x *TraceConfig) GetDisableStack() uint32

func (*TraceConfig) GetDisableStorage

func (x *TraceConfig) GetDisableStorage() uint32

func (*TraceConfig) GetEnableMemory

func (x *TraceConfig) GetEnableMemory() uint32

func (*TraceConfig) GetEnableReturnData

func (x *TraceConfig) GetEnableReturnData() uint32

func (*TraceConfig) GetTxHashToGenerateCallTrace

func (x *TraceConfig) GetTxHashToGenerateCallTrace() []byte

func (*TraceConfig) GetTxHashToGenerateExecuteTrace

func (x *TraceConfig) GetTxHashToGenerateExecuteTrace() []byte

func (*TraceConfig) ProtoMessage

func (*TraceConfig) ProtoMessage()

func (*TraceConfig) ProtoReflect

func (x *TraceConfig) ProtoReflect() protoreflect.Message

func (*TraceConfig) Reset

func (x *TraceConfig) Reset()

func (*TraceConfig) String

func (x *TraceConfig) String() string

type TransactionContext

type TransactionContext struct {

	// CALL or CREATE
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	// Sender of the transaction
	From string `protobuf:"bytes,2,opt,name=from,proto3" json:"from,omitempty"`
	// Target of the transaction
	To string `protobuf:"bytes,3,opt,name=to,proto3" json:"to,omitempty"`
	// Input data of the transaction
	Data []byte `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"`
	// Gas of the transaction
	Gas uint64 `protobuf:"varint,5,opt,name=gas,proto3" json:"gas,omitempty"`
	// Value of the transaction
	Value string `protobuf:"bytes,6,opt,name=value,proto3" json:"value,omitempty"`
	// Hash of the batch in which the transaction was included
	Batch []byte `protobuf:"bytes,7,opt,name=batch,proto3" json:"batch,omitempty"`
	// Returned data from the runtime (function result or data supplied with revert opcode)
	Output []byte `protobuf:"bytes,8,opt,name=output,proto3" json:"output,omitempty"`
	// Total gas used as result of execution
	GasUsed uint64 `protobuf:"varint,9,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
	// Gas Price
	GasPrice string `protobuf:"bytes,10,opt,name=gas_price,json=gasPrice,proto3" json:"gas_price,omitempty"`
	// Execution Time
	ExecutionTime uint32 `protobuf:"varint,11,opt,name=execution_time,json=executionTime,proto3" json:"execution_time,omitempty"`
	// Starting state root
	OldStateRoot []byte `protobuf:"bytes,12,opt,name=old_state_root,json=oldStateRoot,proto3" json:"old_state_root,omitempty"`
	// contains filtered or unexported fields
}

func (*TransactionContext) Descriptor deprecated

func (*TransactionContext) Descriptor() ([]byte, []int)

Deprecated: Use TransactionContext.ProtoReflect.Descriptor instead.

func (*TransactionContext) GetBatch

func (x *TransactionContext) GetBatch() []byte

func (*TransactionContext) GetData

func (x *TransactionContext) GetData() []byte

func (*TransactionContext) GetExecutionTime

func (x *TransactionContext) GetExecutionTime() uint32

func (*TransactionContext) GetFrom

func (x *TransactionContext) GetFrom() string

func (*TransactionContext) GetGas

func (x *TransactionContext) GetGas() uint64

func (*TransactionContext) GetGasPrice

func (x *TransactionContext) GetGasPrice() string

func (*TransactionContext) GetGasUsed

func (x *TransactionContext) GetGasUsed() uint64

func (*TransactionContext) GetOldStateRoot

func (x *TransactionContext) GetOldStateRoot() []byte

func (*TransactionContext) GetOutput

func (x *TransactionContext) GetOutput() []byte

func (*TransactionContext) GetTo

func (x *TransactionContext) GetTo() string

func (*TransactionContext) GetType

func (x *TransactionContext) GetType() string

func (*TransactionContext) GetValue

func (x *TransactionContext) GetValue() string

func (*TransactionContext) ProtoMessage

func (*TransactionContext) ProtoMessage()

func (*TransactionContext) ProtoReflect

func (x *TransactionContext) ProtoReflect() protoreflect.Message

func (*TransactionContext) Reset

func (x *TransactionContext) Reset()

func (*TransactionContext) String

func (x *TransactionContext) String() string

type TransactionStep

type TransactionStep struct {
	StateRoot []byte `protobuf:"bytes,1,opt,name=state_root,json=stateRoot,proto3" json:"state_root,omitempty"`
	// Call depth
	Depth uint32 `protobuf:"varint,2,opt,name=depth,proto3" json:"depth,omitempty"`
	// Program counter
	Pc uint64 `protobuf:"varint,3,opt,name=pc,proto3" json:"pc,omitempty"`
	// Remaining gas
	Gas uint64 `protobuf:"varint,4,opt,name=gas,proto3" json:"gas,omitempty"`
	// Gas cost of the operation
	GasCost uint64 `protobuf:"varint,5,opt,name=gas_cost,json=gasCost,proto3" json:"gas_cost,omitempty"`
	// Gas refunded during the operation
	GasRefund uint64 `protobuf:"varint,6,opt,name=gas_refund,json=gasRefund,proto3" json:"gas_refund,omitempty"`
	// Opcode
	Op uint32 `protobuf:"varint,7,opt,name=op,proto3" json:"op,omitempty"`
	// Content of the stack
	Stack []string `protobuf:"bytes,8,rep,name=stack,proto3" json:"stack,omitempty"`
	// Content of memory, starting at memory_offset, showing only changes vs. previous step
	Memory []byte `protobuf:"bytes,9,opt,name=memory,proto3" json:"memory,omitempty"`
	// Total size of memory
	MemorySize uint32 `protobuf:"varint,10,opt,name=memory_size,json=memorySize,proto3" json:"memory_size,omitempty"`
	// Offset of memory changes
	MemoryOffset uint32 `protobuf:"varint,11,opt,name=memory_offset,json=memoryOffset,proto3" json:"memory_offset,omitempty"`
	// Content of the stack
	// Return Data
	ReturnData []byte `protobuf:"bytes,12,opt,name=return_data,json=returnData,proto3" json:"return_data,omitempty"`
	// Contract information
	Contract *Contract `protobuf:"bytes,13,opt,name=contract,proto3" json:"contract,omitempty"`
	// Error
	Error RomError `protobuf:"varint,14,opt,name=error,proto3,enum=executor.v1.RomError" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*TransactionStep) Descriptor deprecated

func (*TransactionStep) Descriptor() ([]byte, []int)

Deprecated: Use TransactionStep.ProtoReflect.Descriptor instead.

func (*TransactionStep) GetContract

func (x *TransactionStep) GetContract() *Contract

func (*TransactionStep) GetDepth

func (x *TransactionStep) GetDepth() uint32

func (*TransactionStep) GetError

func (x *TransactionStep) GetError() RomError

func (*TransactionStep) GetGas

func (x *TransactionStep) GetGas() uint64

func (*TransactionStep) GetGasCost

func (x *TransactionStep) GetGasCost() uint64

func (*TransactionStep) GetGasRefund

func (x *TransactionStep) GetGasRefund() uint64

func (*TransactionStep) GetMemory

func (x *TransactionStep) GetMemory() []byte

func (*TransactionStep) GetMemoryOffset

func (x *TransactionStep) GetMemoryOffset() uint32

func (*TransactionStep) GetMemorySize

func (x *TransactionStep) GetMemorySize() uint32

func (*TransactionStep) GetOp

func (x *TransactionStep) GetOp() uint32

func (*TransactionStep) GetPc

func (x *TransactionStep) GetPc() uint64

func (*TransactionStep) GetReturnData

func (x *TransactionStep) GetReturnData() []byte

func (*TransactionStep) GetStack

func (x *TransactionStep) GetStack() []string

func (*TransactionStep) GetStateRoot

func (x *TransactionStep) GetStateRoot() []byte

func (*TransactionStep) ProtoMessage

func (*TransactionStep) ProtoMessage()

func (*TransactionStep) ProtoReflect

func (x *TransactionStep) ProtoReflect() protoreflect.Message

func (*TransactionStep) Reset

func (x *TransactionStep) Reset()

func (*TransactionStep) String

func (x *TransactionStep) String() string

type UnimplementedExecutorServiceServer

type UnimplementedExecutorServiceServer struct {
}

UnimplementedExecutorServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedExecutorServiceServer) GetFlushStatus

func (UnimplementedExecutorServiceServer) ProcessBatch

type UnsafeExecutorServiceServer

type UnsafeExecutorServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeExecutorServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ExecutorServiceServer will result in compilation errors.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL