interfaces

package
v5.1.0 Latest Latest
Warning

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

Go to latest
Published: Aug 8, 2024 License: GPL-3.0 Imports: 9 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrIncompatibleFork = errors.New("Can't convert to fork-specific interface")
View Source
var ErrInvalidCast = errors.New("unable to cast between types")

Functions

func BeaconBlockHeaderFromBlock

func BeaconBlockHeaderFromBlock(block *ethpb.BeaconBlock) (*ethpb.BeaconBlockHeader, error)

BeaconBlockHeaderFromBlock function to retrieve block header from block.

func BeaconBlockHeaderFromBlockInterface

func BeaconBlockHeaderFromBlockInterface(block ReadOnlyBeaconBlock) (*ethpb.BeaconBlockHeader, error)

BeaconBlockHeaderFromBlockInterface function to retrieve block header from block.

func SignedBeaconBlockHeaderFromBlock

func SignedBeaconBlockHeaderFromBlock(block *ethpb.SignedBeaconBlock) (*ethpb.SignedBeaconBlockHeader, error)

SignedBeaconBlockHeaderFromBlock function to retrieve signed block header from block.

func SignedBeaconBlockHeaderFromBlockInterface

func SignedBeaconBlockHeaderFromBlockInterface(sb ReadOnlySignedBeaconBlock) (*ethpb.SignedBeaconBlockHeader, error)

SignedBeaconBlockHeaderFromBlockInterface function to retrieve signed block header from block.

Types

type ExecutionData

type ExecutionData interface {
	ssz.Marshaler
	ssz.Unmarshaler
	ssz.HashRoot
	IsNil() bool
	IsBlinded() bool
	Proto() proto.Message
	ParentHash() []byte
	FeeRecipient() []byte
	StateRoot() []byte
	ReceiptsRoot() []byte
	LogsBloom() []byte
	PrevRandao() []byte
	BlockNumber() uint64
	GasLimit() uint64
	GasUsed() uint64
	Timestamp() uint64
	ExtraData() []byte
	BaseFeePerGas() []byte
	BlobGasUsed() (uint64, error)
	ExcessBlobGas() (uint64, error)
	BlockHash() []byte
	Transactions() ([][]byte, error)
	TransactionsRoot() ([]byte, error)
	Withdrawals() ([]*enginev1.Withdrawal, error)
	WithdrawalsRoot() ([]byte, error)
}

ExecutionData represents execution layer information that is contained within post-Bellatrix beacon block bodies.

type ExecutionDataElectra added in v5.1.0

type ExecutionDataElectra interface {
	ExecutionData
	DepositRequests() []*enginev1.DepositRequest
	WithdrawalRequests() []*enginev1.WithdrawalRequest
	ConsolidationRequests() []*enginev1.ConsolidationRequest
}

type InvalidCastError added in v5.1.0

type InvalidCastError struct {
	// contains filtered or unexported fields
}

func NewInvalidCastError added in v5.1.0

func NewInvalidCastError(from, to int) *InvalidCastError

func (*InvalidCastError) Error added in v5.1.0

func (e *InvalidCastError) Error() string

func (*InvalidCastError) Is added in v5.1.0

func (*InvalidCastError) Is(err error) bool

type ReadOnlyBeaconBlock

type ReadOnlyBeaconBlock interface {
	Slot() primitives.Slot
	ProposerIndex() primitives.ValidatorIndex
	ParentRoot() [field_params.RootLength]byte
	StateRoot() [field_params.RootLength]byte
	Body() ReadOnlyBeaconBlockBody
	IsNil() bool
	IsBlinded() bool
	HashTreeRoot() ([field_params.RootLength]byte, error)
	Proto() (proto.Message, error)
	ssz.Marshaler
	ssz.Unmarshaler
	ssz.HashRoot
	Version() int
	AsSignRequestObject() (validatorpb.SignRequestObject, error)
	Copy() (ReadOnlyBeaconBlock, error)
}

ReadOnlyBeaconBlock describes an interface which states the methods employed by an object that is a beacon block.

type ReadOnlyBeaconBlockBody

type ReadOnlyBeaconBlockBody interface {
	Version() int
	RandaoReveal() [field_params.BLSSignatureLength]byte
	Eth1Data() *ethpb.Eth1Data
	Graffiti() [field_params.RootLength]byte
	ProposerSlashings() []*ethpb.ProposerSlashing
	AttesterSlashings() []ethpb.AttSlashing
	Attestations() []ethpb.Att
	Deposits() []*ethpb.Deposit
	VoluntaryExits() []*ethpb.SignedVoluntaryExit
	SyncAggregate() (*ethpb.SyncAggregate, error)
	IsNil() bool
	HashTreeRoot() ([field_params.RootLength]byte, error)
	Proto() (proto.Message, error)
	Execution() (ExecutionData, error)
	BLSToExecutionChanges() ([]*ethpb.SignedBLSToExecutionChange, error)
	BlobKzgCommitments() ([][]byte, error)
}

ReadOnlyBeaconBlockBody describes the method set employed by an object that is a beacon block body.

type ReadOnlySignedBeaconBlock

type ReadOnlySignedBeaconBlock interface {
	Block() ReadOnlyBeaconBlock
	Signature() [field_params.BLSSignatureLength]byte
	IsNil() bool
	Copy() (SignedBeaconBlock, error)
	Proto() (proto.Message, error)
	PbGenericBlock() (*ethpb.GenericSignedBeaconBlock, error)
	ToBlinded() (ReadOnlySignedBeaconBlock, error)
	ssz.Marshaler
	ssz.Unmarshaler
	Version() int
	IsBlinded() bool
	Header() (*ethpb.SignedBeaconBlockHeader, error)
}

ReadOnlySignedBeaconBlock is an interface describing the method set of a signed beacon block.

type SignedBeaconBlock

type SignedBeaconBlock interface {
	ReadOnlySignedBeaconBlock
	SetExecution(ExecutionData) error
	SetBLSToExecutionChanges([]*ethpb.SignedBLSToExecutionChange) error
	SetBlobKzgCommitments(c [][]byte) error
	SetSyncAggregate(*ethpb.SyncAggregate) error
	SetVoluntaryExits([]*ethpb.SignedVoluntaryExit)
	SetDeposits([]*ethpb.Deposit)
	SetAttestations([]ethpb.Att) error
	SetAttesterSlashings([]ethpb.AttSlashing) error
	SetProposerSlashings([]*ethpb.ProposerSlashing)
	SetGraffiti([]byte)
	SetEth1Data(*ethpb.Eth1Data)
	SetRandaoReveal([]byte)
	SetStateRoot([]byte)
	SetParentRoot([]byte)
	SetProposerIndex(idx primitives.ValidatorIndex)
	SetSlot(slot primitives.Slot)
	SetSignature(sig []byte)
	Unblind(e ExecutionData) error
}

type WithWithdrawalCredentials added in v5.1.0

type WithWithdrawalCredentials interface {
	GetWithdrawalCredentials() []byte
}

Jump to

Keyboard shortcuts

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