Documentation ¶
Index ¶
- type BlockStore
- type EngineAPI
- func (e *EngineAPI) ForkchoiceUpdatedV1(ctx context.Context, fcs eth.ForkchoiceState, pa *eth.PayloadAttributes) (*eth.ForkchoiceUpdatedResult, error)
- func (e *EngineAPI) ForkchoiceUpdatedV2(ctx context.Context, fcs eth.ForkchoiceState, pa *eth.PayloadAttributes) (*eth.ForkchoiceUpdatedResult, error)
- func (e *EngineAPI) ForkchoiceUpdatedV3(ctx context.Context, fcs eth.ForkchoiceState, pa *eth.PayloadAttributes) (*eth.ForkchoiceUpdatedResult, error)
- func (e *EngineAPI) GetPayloadV1(ctx context.Context, payloadID engine.PayloadID) (*eth.ExecutionPayloadEnvelope, error)
- func (e *EngineAPI) GetPayloadV2(ctx context.Context, payloadID engine.PayloadID) (*eth.ExecutionPayloadEnvelope, error)
- func (e *EngineAPI) GetPayloadV3(ctx context.Context, payloadID engine.PayloadID) (*eth.ExecutionPayloadEnvelope, error)
- func (e *EngineAPI) NewPayloadV1(payload eth.ExecutionPayload) (*eth.PayloadStatusV1, error)
- func (e *EngineAPI) NewPayloadV2(payload eth.ExecutionPayload) (*eth.PayloadStatusV1, error)
- func (e *EngineAPI) NewPayloadV3(payload eth.ExecutionPayload) (*eth.PayloadStatusV1, error)
- type TxValidator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockStore ¶
type BlockStore interface { store.BlockStoreReader UpdateLabel(label eth.BlockLabel, hash common.Hash) error }
type EngineAPI ¶
type EngineAPI struct {
// contains filtered or unexported fields
}
EngineAPI implements the Engine API. It assumes it is the sole block proposer.
func NewEngineAPI ¶
func NewEngineAPI( b *builder.Builder, txValidator TxValidator, blockStore BlockStore, ) *EngineAPI
func (*EngineAPI) ForkchoiceUpdatedV1 ¶
func (e *EngineAPI) ForkchoiceUpdatedV1( ctx context.Context, fcs eth.ForkchoiceState, pa *eth.PayloadAttributes, ) (*eth.ForkchoiceUpdatedResult, error)
func (*EngineAPI) ForkchoiceUpdatedV2 ¶
func (e *EngineAPI) ForkchoiceUpdatedV2( ctx context.Context, fcs eth.ForkchoiceState, pa *eth.PayloadAttributes, ) (*eth.ForkchoiceUpdatedResult, error)
func (*EngineAPI) ForkchoiceUpdatedV3 ¶
func (e *EngineAPI) ForkchoiceUpdatedV3( ctx context.Context, fcs eth.ForkchoiceState, pa *eth.PayloadAttributes, ) (*eth.ForkchoiceUpdatedResult, error)
func (*EngineAPI) GetPayloadV1 ¶
func (*EngineAPI) GetPayloadV2 ¶
func (*EngineAPI) GetPayloadV3 ¶
func (e *EngineAPI) GetPayloadV3(ctx context.Context, payloadID engine.PayloadID) (*eth.ExecutionPayloadEnvelope, error)
GetPayloadV3 seals a payload that is currently being built (i.e. was introduced in the PayloadAttributes from a previous ForkchoiceUpdated call).
func (*EngineAPI) NewPayloadV1 ¶
func (e *EngineAPI) NewPayloadV1(payload eth.ExecutionPayload) (*eth.PayloadStatusV1, error)
func (*EngineAPI) NewPayloadV2 ¶
func (e *EngineAPI) NewPayloadV2(payload eth.ExecutionPayload) (*eth.PayloadStatusV1, error)
func (*EngineAPI) NewPayloadV3 ¶
func (e *EngineAPI) NewPayloadV3(payload eth.ExecutionPayload) (*eth.PayloadStatusV1, error)
NewPayloadV3 ensures the payload's block hash is present in the block store. TODO will this ever be called if we are the sole block proposer?
type TxValidator ¶
type TxValidator interface {
CheckTx(context.Context, *abci.RequestCheckTx) (*abci.ResponseCheckTx, error)
}
Click to show internal directories.
Click to hide internal directories.