v2

package
v2.0.1 Latest Latest
Warning

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

Go to latest
Published: Oct 5, 2021 License: GPL-3.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNilInnerState = errors.New("nil inner state")

ErrNilInnerState returns when the inner state is nil and no copy set or get operations can be performed on state.

View Source
var (
	// ErrNilValidatorsInState returns when accessing validators in the state while the state has a
	// nil slice for the validators field.
	ErrNilValidatorsInState = errors.New("state has nil validator slice")
)

Functions

func CopySyncCommittee

func CopySyncCommittee(data *ethpb.SyncCommittee) *ethpb.SyncCommittee

CopySyncCommittee copies the provided sync committee object.

func ProtobufBeaconState

func ProtobufBeaconState(s interface{}) (*ethpb.BeaconStateAltair, error)

ProtobufBeaconState transforms an input into beacon state hard fork 1 in the form of protobuf. Error is returned if the input is not type protobuf beacon state.

Types

type BeaconState

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

BeaconState defines a struct containing utilities for the eth2 chain state, defining getters and setters for its respective values and helpful functions such as HashTreeRoot().

func InitializeFromProto

func InitializeFromProto(st *ethpb.BeaconStateAltair) (*BeaconState, error)

InitializeFromProto the beacon state from a protobuf representation.

func InitializeFromProtoUnsafe

func InitializeFromProtoUnsafe(st *ethpb.BeaconStateAltair) (*BeaconState, error)

InitializeFromProtoUnsafe directly uses the beacon state protobuf pointer and sets it as the inner state of the BeaconState type.

func (*BeaconState) AppendBalance

func (b *BeaconState) AppendBalance(bal uint64) error

AppendBalance for the beacon state. Appends the new value to the the end of list.

func (*BeaconState) AppendCurrentEpochAttestations

func (b *BeaconState) AppendCurrentEpochAttestations(val *ethpb.PendingAttestation) error

AppendCurrentEpochAttestations is not supported for HF1 beacon state.

func (*BeaconState) AppendCurrentParticipationBits

func (b *BeaconState) AppendCurrentParticipationBits(val byte) error

AppendCurrentParticipationBits for the beacon state. Appends the new value to the the end of list.

func (*BeaconState) AppendEth1DataVotes

func (b *BeaconState) AppendEth1DataVotes(val *ethpb.Eth1Data) error

AppendEth1DataVotes for the beacon state. Appends the new value to the the end of list.

func (*BeaconState) AppendHistoricalRoots

func (b *BeaconState) AppendHistoricalRoots(root [32]byte) error

AppendHistoricalRoots for the beacon state. Appends the new value to the the end of list.

func (*BeaconState) AppendInactivityScore

func (b *BeaconState) AppendInactivityScore(s uint64) error

AppendInactivityScore for the beacon state.

func (*BeaconState) AppendPreviousEpochAttestations

func (b *BeaconState) AppendPreviousEpochAttestations(val *ethpb.PendingAttestation) error

AppendPreviousEpochAttestations is not supported for HF1 beacon state.

func (*BeaconState) AppendPreviousParticipationBits

func (b *BeaconState) AppendPreviousParticipationBits(val byte) error

AppendPreviousParticipationBits for the beacon state. Appends the new value to the the end of list.

func (*BeaconState) AppendValidator

func (b *BeaconState) AppendValidator(val *ethpb.Validator) error

AppendValidator for the beacon state. Appends the new value to the the end of list.

func (*BeaconState) ApplyToEveryValidator

func (b *BeaconState) ApplyToEveryValidator(f func(idx int, val *ethpb.Validator) (bool, *ethpb.Validator, error)) error

ApplyToEveryValidator applies the provided callback function to each validator in the validator registry.

func (*BeaconState) BalanceAtIndex

func (b *BeaconState) BalanceAtIndex(idx types.ValidatorIndex) (uint64, error)

BalanceAtIndex of validator with the provided index.

func (*BeaconState) Balances

func (b *BeaconState) Balances() []uint64

Balances of validators participating in consensus on the beacon chain.

func (*BeaconState) BalancesLength

func (b *BeaconState) BalancesLength() int

BalancesLength returns the length of the balances slice.

func (*BeaconState) BlockRootAtIndex

func (b *BeaconState) BlockRootAtIndex(idx uint64) ([]byte, error)

BlockRootAtIndex retrieves a specific block root based on an input index value.

func (*BeaconState) BlockRoots

func (b *BeaconState) BlockRoots() [][]byte

BlockRoots kept track of in the beacon state.

func (*BeaconState) CloneInnerState

func (b *BeaconState) CloneInnerState() interface{}

CloneInnerState the beacon state into a protobuf for usage.

func (*BeaconState) Copy

func (b *BeaconState) Copy() state.BeaconState

Copy returns a deep copy of the beacon state.

func (*BeaconState) CurrentEpochAttestations

func (b *BeaconState) CurrentEpochAttestations() ([]*ethpb.PendingAttestation, error)

CurrentEpochAttestations is not supported for HF1 beacon state.

func (*BeaconState) CurrentEpochParticipation

func (b *BeaconState) CurrentEpochParticipation() ([]byte, error)

CurrentEpochParticipation corresponding to participation bits on the beacon chain.

func (*BeaconState) CurrentJustifiedCheckpoint

func (b *BeaconState) CurrentJustifiedCheckpoint() *ethpb.Checkpoint

CurrentJustifiedCheckpoint denoting an epoch and block root.

func (*BeaconState) CurrentSyncCommittee

func (b *BeaconState) CurrentSyncCommittee() (*ethpb.SyncCommittee, error)

CurrentSyncCommittee of the current sync committee in beacon chain state.

func (*BeaconState) Eth1Data

func (b *BeaconState) Eth1Data() *ethpb.Eth1Data

Eth1Data corresponding to the proof-of-work chain information stored in the beacon state.

func (*BeaconState) Eth1DataVotes

func (b *BeaconState) Eth1DataVotes() []*ethpb.Eth1Data

Eth1DataVotes corresponds to votes from Ethereum on the canonical proof-of-work chain data retrieved from eth1.

func (*BeaconState) Eth1DepositIndex

func (b *BeaconState) Eth1DepositIndex() uint64

Eth1DepositIndex corresponds to the index of the deposit made to the validator deposit contract at the time of this state's eth1 data.

func (*BeaconState) FieldReferencesCount

func (b *BeaconState) FieldReferencesCount() map[string]uint64

FieldReferencesCount returns the reference count held by each field. This also includes the field trie held by each field.

func (*BeaconState) FinalizedCheckpoint

func (b *BeaconState) FinalizedCheckpoint() *ethpb.Checkpoint

FinalizedCheckpoint denoting an epoch and block root.

func (*BeaconState) FinalizedCheckpointEpoch

func (b *BeaconState) FinalizedCheckpointEpoch() types.Epoch

FinalizedCheckpointEpoch returns the epoch value of the finalized checkpoint.

func (*BeaconState) Fork

func (b *BeaconState) Fork() *ethpb.Fork

Fork version of the beacon chain.

func (*BeaconState) GenesisTime

func (b *BeaconState) GenesisTime() uint64

GenesisTime of the beacon state as a uint64.

func (*BeaconState) GenesisUnixTime

func (b *BeaconState) GenesisUnixTime() time.Time

GenesisUnixTime returns the genesis time as time.Time.

func (*BeaconState) GenesisValidatorRoot

func (b *BeaconState) GenesisValidatorRoot() []byte

GenesisValidatorRoot of the beacon state.

func (*BeaconState) HashTreeRoot

func (b *BeaconState) HashTreeRoot(ctx context.Context) ([32]byte, error)

HashTreeRoot of the beacon state retrieves the Merkle root of the trie representation of the beacon state based on the eth2 Simple Serialize specification.

func (*BeaconState) HistoricalRoots

func (b *BeaconState) HistoricalRoots() [][]byte

HistoricalRoots based on epochs stored in the beacon state.

func (*BeaconState) InactivityScores

func (b *BeaconState) InactivityScores() ([]uint64, error)

InactivityScores of validators participating in consensus on the beacon chain.

func (*BeaconState) InnerStateUnsafe

func (b *BeaconState) InnerStateUnsafe() interface{}

InnerStateUnsafe returns the pointer value of the underlying beacon state proto object, bypassing immutability. Use with care.

func (*BeaconState) IsNil

func (b *BeaconState) IsNil() bool

IsNil checks if the state and the underlying proto object are nil.

func (*BeaconState) JustificationBits

func (b *BeaconState) JustificationBits() bitfield.Bitvector4

JustificationBits marking which epochs have been justified in the beacon chain.

func (*BeaconState) LatestBlockHeader

func (b *BeaconState) LatestBlockHeader() *ethpb.BeaconBlockHeader

LatestBlockHeader stored within the beacon state.

func (*BeaconState) MarshalSSZ

func (b *BeaconState) MarshalSSZ() ([]byte, error)

MarshalSSZ marshals the underlying beacon state to bytes.

func (*BeaconState) MatchCurrentJustifiedCheckpoint

func (b *BeaconState) MatchCurrentJustifiedCheckpoint(c *ethpb.Checkpoint) bool

MatchCurrentJustifiedCheckpoint returns true if input justified checkpoint matches the current justified checkpoint in state.

func (*BeaconState) MatchPreviousJustifiedCheckpoint

func (b *BeaconState) MatchPreviousJustifiedCheckpoint(c *ethpb.Checkpoint) bool

MatchPreviousJustifiedCheckpoint returns true if the input justified checkpoint matches the previous justified checkpoint in state.

func (*BeaconState) NextSyncCommittee

func (b *BeaconState) NextSyncCommittee() (*ethpb.SyncCommittee, error)

NextSyncCommittee of the next sync committee in beacon chain state.

func (*BeaconState) NumValidators

func (b *BeaconState) NumValidators() int

NumValidators returns the size of the validator registry.

func (*BeaconState) ParentRoot

func (b *BeaconState) ParentRoot() [32]byte

ParentRoot is a convenience method to access state.LatestBlockRoot.ParentRoot.

func (*BeaconState) PreviousEpochAttestations

func (b *BeaconState) PreviousEpochAttestations() ([]*ethpb.PendingAttestation, error)

PreviousEpochAttestations is not supported for HF1 beacon state.

func (*BeaconState) PreviousEpochParticipation

func (b *BeaconState) PreviousEpochParticipation() ([]byte, error)

PreviousEpochParticipation corresponding to participation bits on the beacon chain.

func (*BeaconState) PreviousJustifiedCheckpoint

func (b *BeaconState) PreviousJustifiedCheckpoint() *ethpb.Checkpoint

PreviousJustifiedCheckpoint denoting an epoch and block root.

func (*BeaconState) PubkeyAtIndex

func (b *BeaconState) PubkeyAtIndex(idx types.ValidatorIndex) [48]byte

PubkeyAtIndex returns the pubkey at the given validator index.

func (*BeaconState) RandaoMixAtIndex

func (b *BeaconState) RandaoMixAtIndex(idx uint64) ([]byte, error)

RandaoMixAtIndex retrieves a specific block root based on an input index value.

func (*BeaconState) RandaoMixes

func (b *BeaconState) RandaoMixes() [][]byte

RandaoMixes of block proposers on the beacon chain.

func (*BeaconState) RandaoMixesLength

func (b *BeaconState) RandaoMixesLength() int

RandaoMixesLength returns the length of the randao mixes slice.

func (*BeaconState) ReadFromEveryValidator

func (b *BeaconState) ReadFromEveryValidator(f func(idx int, val state.ReadOnlyValidator) error) error

ReadFromEveryValidator reads values from every validator and applies it to the provided function. Warning: This method is potentially unsafe, as it exposes the actual validator registry.

func (*BeaconState) RotateAttestations

func (b *BeaconState) RotateAttestations() error

RotateAttestations is not supported for HF1 beacon state.

func (*BeaconState) SetBalances

func (b *BeaconState) SetBalances(val []uint64) error

SetBalances for the beacon state. Updates the entire list to a new value by overwriting the previous one.

func (*BeaconState) SetBlockRoots

func (b *BeaconState) SetBlockRoots(val [][]byte) error

SetBlockRoots for the beacon state. Updates the entire list to a new value by overwriting the previous one.

func (*BeaconState) SetCurrentEpochAttestations

func (b *BeaconState) SetCurrentEpochAttestations(val []*ethpb.PendingAttestation) error

SetCurrentEpochAttestations is not supported for HF1 beacon state.

func (*BeaconState) SetCurrentJustifiedCheckpoint

func (b *BeaconState) SetCurrentJustifiedCheckpoint(val *ethpb.Checkpoint) error

SetCurrentJustifiedCheckpoint for the beacon state.

func (*BeaconState) SetCurrentParticipationBits

func (b *BeaconState) SetCurrentParticipationBits(val []byte) error

SetCurrentParticipationBits for the beacon state. Updates the entire list to a new value by overwriting the previous one.

func (*BeaconState) SetCurrentSyncCommittee

func (b *BeaconState) SetCurrentSyncCommittee(val *ethpb.SyncCommittee) error

SetCurrentSyncCommittee for the beacon state.

func (*BeaconState) SetEth1Data

func (b *BeaconState) SetEth1Data(val *ethpb.Eth1Data) error

SetEth1Data for the beacon state.

func (*BeaconState) SetEth1DataVotes

func (b *BeaconState) SetEth1DataVotes(val []*ethpb.Eth1Data) error

SetEth1DataVotes for the beacon state. Updates the entire list to a new value by overwriting the previous one.

func (*BeaconState) SetEth1DepositIndex

func (b *BeaconState) SetEth1DepositIndex(val uint64) error

SetEth1DepositIndex for the beacon state.

func (*BeaconState) SetFinalizedCheckpoint

func (b *BeaconState) SetFinalizedCheckpoint(val *ethpb.Checkpoint) error

SetFinalizedCheckpoint for the beacon state.

func (*BeaconState) SetFork

func (b *BeaconState) SetFork(val *ethpb.Fork) error

SetFork version for the beacon chain.

func (*BeaconState) SetGenesisTime

func (b *BeaconState) SetGenesisTime(val uint64) error

SetGenesisTime for the beacon state.

func (*BeaconState) SetGenesisValidatorRoot

func (b *BeaconState) SetGenesisValidatorRoot(val []byte) error

SetGenesisValidatorRoot for the beacon state.

func (*BeaconState) SetHistoricalRoots

func (b *BeaconState) SetHistoricalRoots(val [][]byte) error

SetHistoricalRoots for the beacon state. Updates the entire list to a new value by overwriting the previous one.

func (*BeaconState) SetInactivityScores

func (b *BeaconState) SetInactivityScores(val []uint64) error

SetInactivityScores for the beacon state. Updates the entire list to a new value by overwriting the previous one.

func (*BeaconState) SetJustificationBits

func (b *BeaconState) SetJustificationBits(val bitfield.Bitvector4) error

SetJustificationBits for the beacon state.

func (*BeaconState) SetLatestBlockHeader

func (b *BeaconState) SetLatestBlockHeader(val *ethpb.BeaconBlockHeader) error

SetLatestBlockHeader in the beacon state.

func (*BeaconState) SetNextSyncCommittee

func (b *BeaconState) SetNextSyncCommittee(val *ethpb.SyncCommittee) error

SetNextSyncCommittee for the beacon state.

func (*BeaconState) SetPreviousEpochAttestations

func (b *BeaconState) SetPreviousEpochAttestations(val []*ethpb.PendingAttestation) error

SetPreviousEpochAttestations is not supported for HF1 beacon state.

func (*BeaconState) SetPreviousJustifiedCheckpoint

func (b *BeaconState) SetPreviousJustifiedCheckpoint(val *ethpb.Checkpoint) error

SetPreviousJustifiedCheckpoint for the beacon state.

func (*BeaconState) SetPreviousParticipationBits

func (b *BeaconState) SetPreviousParticipationBits(val []byte) error

SetPreviousParticipationBits for the beacon state. Updates the entire list to a new value by overwriting the previous one.

func (*BeaconState) SetRandaoMixes

func (b *BeaconState) SetRandaoMixes(val [][]byte) error

SetRandaoMixes for the beacon state. Updates the entire randao mixes to a new value by overwriting the previous one.

func (*BeaconState) SetSlashings

func (b *BeaconState) SetSlashings(val []uint64) error

SetSlashings for the beacon state. Updates the entire list to a new value by overwriting the previous one.

func (*BeaconState) SetSlot

func (b *BeaconState) SetSlot(val types.Slot) error

SetSlot for the beacon state.

func (*BeaconState) SetStateRoots

func (b *BeaconState) SetStateRoots(val [][]byte) error

SetStateRoots for the beacon state. Updates the state roots to a new value by overwriting the previous value.

func (*BeaconState) SetValidators

func (b *BeaconState) SetValidators(val []*ethpb.Validator) error

SetValidators for the beacon state. Updates the entire to a new value by overwriting the previous one.

func (*BeaconState) Slashings

func (b *BeaconState) Slashings() []uint64

Slashings of validators on the beacon chain.

func (*BeaconState) Slot

func (b *BeaconState) Slot() types.Slot

Slot of the current beacon chain state.

func (*BeaconState) StateRootAtIndex

func (b *BeaconState) StateRootAtIndex(idx uint64) ([]byte, error)

StateRootAtIndex retrieves a specific state root based on an input index value.

func (*BeaconState) StateRoots

func (b *BeaconState) StateRoots() [][]byte

StateRoots kept track of in the beacon state.

func (*BeaconState) UpdateBalancesAtIndex

func (b *BeaconState) UpdateBalancesAtIndex(idx types.ValidatorIndex, val uint64) error

UpdateBalancesAtIndex for the beacon state. This method updates the balance at a specific index to a new value.

func (*BeaconState) UpdateBlockRootAtIndex

func (b *BeaconState) UpdateBlockRootAtIndex(idx uint64, blockRoot [32]byte) error

UpdateBlockRootAtIndex for the beacon state. Updates the block root at a specific index to a new value.

func (*BeaconState) UpdateRandaoMixesAtIndex

func (b *BeaconState) UpdateRandaoMixesAtIndex(idx uint64, val []byte) error

UpdateRandaoMixesAtIndex for the beacon state. Updates the randao mixes at a specific index to a new value.

func (*BeaconState) UpdateSlashingsAtIndex

func (b *BeaconState) UpdateSlashingsAtIndex(idx, val uint64) error

UpdateSlashingsAtIndex for the beacon state. Updates the slashings at a specific index to a new value.

func (*BeaconState) UpdateStateRootAtIndex

func (b *BeaconState) UpdateStateRootAtIndex(idx uint64, stateRoot [32]byte) error

UpdateStateRootAtIndex for the beacon state. Updates the state root at a specific index to a new value.

func (*BeaconState) UpdateValidatorAtIndex

func (b *BeaconState) UpdateValidatorAtIndex(idx types.ValidatorIndex, val *ethpb.Validator) error

UpdateValidatorAtIndex for the beacon state. Updates the validator at a specific index to a new value.

func (*BeaconState) ValidatorAtIndex

func (b *BeaconState) ValidatorAtIndex(idx types.ValidatorIndex) (*ethpb.Validator, error)

ValidatorAtIndex is the validator at the provided index.

func (*BeaconState) ValidatorAtIndexReadOnly

func (b *BeaconState) ValidatorAtIndexReadOnly(idx types.ValidatorIndex) (state.ReadOnlyValidator, error)

ValidatorAtIndexReadOnly is the validator at the provided index. This method doesn't clone the validator.

func (*BeaconState) ValidatorIndexByPubkey

func (b *BeaconState) ValidatorIndexByPubkey(key [48]byte) (types.ValidatorIndex, bool)

ValidatorIndexByPubkey returns a given validator by its 48-byte public key.

func (*BeaconState) Validators

func (b *BeaconState) Validators() []*ethpb.Validator

Validators participating in consensus on the beacon chain.

func (*BeaconState) Version

func (b *BeaconState) Version() int

Version of the beacon state. This method is strictly meant to be used without a lock internally.

type ValidatorIndexOutOfRangeError

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

ValidatorIndexOutOfRangeError represents an error scenario where a validator does not exist at a given index in the validator's array.

func NewValidatorIndexOutOfRangeError

func NewValidatorIndexOutOfRangeError(index types.ValidatorIndex) ValidatorIndexOutOfRangeError

NewValidatorIndexOutOfRangeError creates a new error instance.

func (*ValidatorIndexOutOfRangeError) Error

Error returns the underlying error message.

Jump to

Keyboard shortcuts

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