// Code generated by MockGen. DO NOT EDIT.
// Source: state_processor.go
//
// Generated by this command:
//
//	mockgen -source=state_processor.go -destination=state_processor_mock.go -package=evmcore
//

// Package evmcore is a generated GoMock package.
package evmcore

import (
	reflect "reflect"

	common "github.com/ethereum/go-ethereum/common"
	types "github.com/ethereum/go-ethereum/core/types"
	uint256 "github.com/holiman/uint256"
	gomock "go.uber.org/mock/gomock"
)

// Mock_transactionRunner is a mock of _transactionRunner interface.
type Mock_transactionRunner struct {
	ctrl     *gomock.Controller
	recorder *Mock_transactionRunnerMockRecorder
	isgomock struct{}
}

// Mock_transactionRunnerMockRecorder is the mock recorder for Mock_transactionRunner.
type Mock_transactionRunnerMockRecorder struct {
	mock *Mock_transactionRunner
}

// NewMock_transactionRunner creates a new mock instance.
func NewMock_transactionRunner(ctrl *gomock.Controller) *Mock_transactionRunner {
	mock := &Mock_transactionRunner{ctrl: ctrl}
	mock.recorder = &Mock_transactionRunnerMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *Mock_transactionRunner) EXPECT() *Mock_transactionRunnerMockRecorder {
	return m.recorder
}

// runRegularTransaction mocks base method.
func (m *Mock_transactionRunner) runRegularTransaction(ctxt *runContext, tx *types.Transaction, txIndex int) ProcessedTransaction {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "runRegularTransaction", ctxt, tx, txIndex)
	ret0, _ := ret[0].(ProcessedTransaction)
	return ret0
}

// runRegularTransaction indicates an expected call of runRegularTransaction.
func (mr *Mock_transactionRunnerMockRecorder) runRegularTransaction(ctxt, tx, txIndex any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "runRegularTransaction", reflect.TypeOf((*Mock_transactionRunner)(nil).runRegularTransaction), ctxt, tx, txIndex)
}

// runSponsoredTransaction mocks base method.
func (m *Mock_transactionRunner) runSponsoredTransaction(ctxt *runContext, tx *types.Transaction, txIndex int) []ProcessedTransaction {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "runSponsoredTransaction", ctxt, tx, txIndex)
	ret0, _ := ret[0].([]ProcessedTransaction)
	return ret0
}

// runSponsoredTransaction indicates an expected call of runSponsoredTransaction.
func (mr *Mock_transactionRunnerMockRecorder) runSponsoredTransaction(ctxt, tx, txIndex any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "runSponsoredTransaction", reflect.TypeOf((*Mock_transactionRunner)(nil).runSponsoredTransaction), ctxt, tx, txIndex)
}

// Mock_evm is a mock of _evm interface.
type Mock_evm struct {
	ctrl     *gomock.Controller
	recorder *Mock_evmMockRecorder
	isgomock struct{}
}

// Mock_evmMockRecorder is the mock recorder for Mock_evm.
type Mock_evmMockRecorder struct {
	mock *Mock_evm
}

// NewMock_evm creates a new mock instance.
func NewMock_evm(ctrl *gomock.Controller) *Mock_evm {
	mock := &Mock_evm{ctrl: ctrl}
	mock.recorder = &Mock_evmMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *Mock_evm) EXPECT() *Mock_evmMockRecorder {
	return m.recorder
}

// Call mocks base method.
func (m *Mock_evm) Call(from, to common.Address, input []byte, gas uint64, value *uint256.Int) ([]byte, uint64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Call", from, to, input, gas, value)
	ret0, _ := ret[0].([]byte)
	ret1, _ := ret[1].(uint64)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// Call indicates an expected call of Call.
func (mr *Mock_evmMockRecorder) Call(from, to, input, gas, value any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Call", reflect.TypeOf((*Mock_evm)(nil).Call), from, to, input, gas, value)
}

// runWithBaseFeeCheck mocks base method.
func (m *Mock_evm) runWithBaseFeeCheck(arg0 *runContext, arg1 *types.Transaction, arg2 int) ProcessedTransaction {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "runWithBaseFeeCheck", arg0, arg1, arg2)
	ret0, _ := ret[0].(ProcessedTransaction)
	return ret0
}

// runWithBaseFeeCheck indicates an expected call of runWithBaseFeeCheck.
func (mr *Mock_evmMockRecorder) runWithBaseFeeCheck(arg0, arg1, arg2 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "runWithBaseFeeCheck", reflect.TypeOf((*Mock_evm)(nil).runWithBaseFeeCheck), arg0, arg1, arg2)
}

// runWithoutBaseFeeCheck mocks base method.
func (m *Mock_evm) runWithoutBaseFeeCheck(arg0 *runContext, arg1 *types.Transaction, arg2 int) ProcessedTransaction {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "runWithoutBaseFeeCheck", arg0, arg1, arg2)
	ret0, _ := ret[0].(ProcessedTransaction)
	return ret0
}

// runWithoutBaseFeeCheck indicates an expected call of runWithoutBaseFeeCheck.
func (mr *Mock_evmMockRecorder) runWithoutBaseFeeCheck(arg0, arg1, arg2 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "runWithoutBaseFeeCheck", reflect.TypeOf((*Mock_evm)(nil).runWithoutBaseFeeCheck), arg0, arg1, arg2)
}
