v1

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Jul 16, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Overview

Code generated by fastssz. DO NOT EDIT. Hash: 4138c3a9facc5ccd31f1e1607b26966b6ecfd78af99f1a5ed49e386fc2cf1ac8 Version: 0.1.3

Code generated by fastssz. DO NOT EDIT. Hash: 4138c3a9facc5ccd31f1e1607b26966b6ecfd78af99f1a5ed49e386fc2cf1ac8 Version: 0.1.3

Index

Constants

This section is empty.

Variables

View Source
var ForkChoiceNodeValidityStrings = [...]string{
	"unknown",
	"invalid",
	"valid",
	"optimistic",
}

ForkChoiceNodeValidityStrings are the strings for fork choice validity names.

View Source
var SupportedEventTopics = map[string]bool{
	"attestation":            true,
	"block":                  true,
	"chain_reorg":            true,
	"finalized_checkpoint":   true,
	"head":                   true,
	"voluntary_exit":         true,
	"contribution_and_proof": true,
	"payload_attributes":     true,
	"blob_sidecar":           true,
}

SupportedEventTopics is a map of supported event topics.

Functions

This section is empty.

Types

type AttesterDuty

type AttesterDuty struct {
	// PubKey is the public key of the validator that should attest.
	PubKey phase0.BLSPubKey
	// Slot is the slot in which the validator should attest.
	Slot phase0.Slot
	// ValidatorIndex is the index of the validator that should attest.
	ValidatorIndex phase0.ValidatorIndex
	// CommitteeIndex is the index of the committee in which the attesting validator has been placed.
	CommitteeIndex phase0.CommitteeIndex
	// CommitteeLength is the length of the committee in which the attesting validator has been placed.
	CommitteeLength uint64
	// CommitteesAtSlot is the number of committees in the slot.
	CommitteesAtSlot uint64
	// ValidatorCommitteeIndex is the index of the validator in the list of validators in the committee.
	ValidatorCommitteeIndex uint64
}

AttesterDuty is the data regarding which validators have the duty to attest in a slot.

func (*AttesterDuty) MarshalJSON

func (a *AttesterDuty) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*AttesterDuty) String

func (a *AttesterDuty) String() string

String returns a string version of the structure.

func (*AttesterDuty) UnmarshalJSON

func (a *AttesterDuty) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type BeaconBlockHeader

type BeaconBlockHeader struct {
	// Root is the root of the beacon block.
	Root phase0.Root
	// Canonical is true if the block is considered canonical.
	Canonical bool
	// Header is the beacon block header.
	Header *phase0.SignedBeaconBlockHeader
}

BeaconBlockHeader is the data providing information about beacon blocks.

func (*BeaconBlockHeader) MarshalJSON

func (b *BeaconBlockHeader) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*BeaconBlockHeader) String

func (b *BeaconBlockHeader) String() string

String returns a string version of the structure.

func (*BeaconBlockHeader) UnmarshalJSON

func (b *BeaconBlockHeader) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type BeaconCommittee

type BeaconCommittee struct {
	// Slot is the slot in which the committee attests.
	Slot phase0.Slot
	// Index is the index of the committee.
	Index phase0.CommitteeIndex
	// Validators is the list of validator indices in the committee.
	Validators []phase0.ValidatorIndex
}

BeaconCommittee is the data providing information validator membership of committees.

func (*BeaconCommittee) MarshalJSON

func (b *BeaconCommittee) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*BeaconCommittee) String

func (b *BeaconCommittee) String() string

String returns a string version of the structure.

func (*BeaconCommittee) UnmarshalJSON

func (b *BeaconCommittee) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type BeaconCommitteeSubscription

type BeaconCommitteeSubscription struct {
	// ValidatorIdex is the index of the validator making the subscription request.
	ValidatorIndex phase0.ValidatorIndex
	// Slot is the slot for which the validator is attesting.
	Slot phase0.Slot
	// CommitteeIndex is the index of the committee of which the validator is a member at the given slot.
	CommitteeIndex phase0.CommitteeIndex
	// CommitteesAtSlot is the number of committees at the given slot.
	CommitteesAtSlot uint64
	// IsAggregator is true if the validator that wishes to subscribe is required to aggregate attestations.
	IsAggregator bool
}

BeaconCommitteeSubscription is the data required for a beacon committee subscription.

func (*BeaconCommitteeSubscription) MarshalJSON

func (b *BeaconCommitteeSubscription) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*BeaconCommitteeSubscription) String

func (b *BeaconCommitteeSubscription) String() string

String returns a string version of the structure.

func (*BeaconCommitteeSubscription) UnmarshalJSON

func (b *BeaconCommitteeSubscription) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type BlobSidecarEvent

type BlobSidecarEvent struct {
	BlockRoot     phase0.Root
	Slot          phase0.Slot
	Index         deneb.BlobIndex
	KZGCommitment deneb.KZGCommitment
	VersionedHash deneb.VersionedHash
}

BlobSidecarEvent is the data for the blob sidecar event.

func (*BlobSidecarEvent) MarshalJSON

func (e *BlobSidecarEvent) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*BlobSidecarEvent) String

func (e *BlobSidecarEvent) String() string

String returns a string version of the structure.

func (*BlobSidecarEvent) UnmarshalJSON

func (e *BlobSidecarEvent) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type BlockEvent

type BlockEvent struct {
	Slot                phase0.Slot
	Block               phase0.Root
	ExecutionOptimistic bool
}

BlockEvent is the data for the block event.

func (*BlockEvent) MarshalJSON

func (e *BlockEvent) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*BlockEvent) String

func (e *BlockEvent) String() string

String returns a string version of the structure.

func (*BlockEvent) UnmarshalJSON

func (e *BlockEvent) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type ChainReorgEvent

type ChainReorgEvent struct {
	Slot         phase0.Slot
	Depth        uint64
	OldHeadBlock phase0.Root
	NewHeadBlock phase0.Root
	OldHeadState phase0.Root
	NewHeadState phase0.Root
	Epoch        phase0.Epoch
}

ChainReorgEvent is the data for the head event.

func (*ChainReorgEvent) MarshalJSON

func (e *ChainReorgEvent) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*ChainReorgEvent) String

func (e *ChainReorgEvent) String() string

String returns a string version of the structure.

func (*ChainReorgEvent) UnmarshalJSON

func (e *ChainReorgEvent) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type DepositContract

type DepositContract struct {
	ChainID uint64
	Address []byte
}

DepositContract represents the details of the Ethereum 1 deposit contract for a chain.

func (*DepositContract) MarshalJSON

func (d *DepositContract) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*DepositContract) String

func (d *DepositContract) String() string

String returns a string version of the structure.

func (*DepositContract) UnmarshalJSON

func (d *DepositContract) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type Event

type Event struct {
	// Topic is the topic of the event.
	Topic string
	// Data is the data of the event.
	Data interface{}
}

Event is the container for events sent from the API.

func (*Event) MarshalJSON

func (e *Event) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*Event) String

func (e *Event) String() string

String returns a string version of the structure.

func (*Event) UnmarshalJSON

func (e *Event) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type Finality

type Finality struct {
	// Finalized is the finalized checkpoint.
	Finalized *phase0.Checkpoint
	// Justified is the justified checkpoint.
	Justified *phase0.Checkpoint
	// PreviousJustified is the previous justified checkpoint.
	PreviousJustified *phase0.Checkpoint
}

Finality is the data regarding finality checkpoints at a given state.

func (*Finality) MarshalJSON

func (f *Finality) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*Finality) String

func (f *Finality) String() string

String returns a string version of the structure.

func (*Finality) UnmarshalJSON

func (f *Finality) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type FinalizedCheckpointEvent

type FinalizedCheckpointEvent struct {
	Block phase0.Root
	State phase0.Root
	Epoch phase0.Epoch
}

FinalizedCheckpointEvent is the data for the finalized checkpoint event.

func (*FinalizedCheckpointEvent) MarshalJSON

func (e *FinalizedCheckpointEvent) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*FinalizedCheckpointEvent) String

func (e *FinalizedCheckpointEvent) String() string

String returns a string version of the structure.

func (*FinalizedCheckpointEvent) UnmarshalJSON

func (e *FinalizedCheckpointEvent) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type ForkChoice

type ForkChoice struct {
	// JustifiedCheckpoint is the current justified checkpoint.
	JustifiedCheckpoint phase0.Checkpoint
	// FInalizedCheckpoint is the current finalized checkpoint.
	FinalizedCheckpoint phase0.Checkpoint
	// ForkChoiceNodes contains the fork choice nodes.
	ForkChoiceNodes []*ForkChoiceNode
}

ForkChoice is the data regarding the node's current fork choice context.

func (*ForkChoice) MarshalJSON

func (f *ForkChoice) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*ForkChoice) String

func (f *ForkChoice) String() string

String returns a string version of the structure.

func (*ForkChoice) UnmarshalJSON

func (f *ForkChoice) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type ForkChoiceNode

type ForkChoiceNode struct {
	// Slot is the slot of the node.
	Slot phase0.Slot
	// BlockRoot is the block root of the node.
	BlockRoot phase0.Root
	// ParentRoot is the parent root of the node.
	ParentRoot phase0.Root
	// JustifiedEpcih is the justified epoch of the node.
	JustifiedEpoch phase0.Epoch
	// FinalizedEpoch is the finalized epoch of the node.
	FinalizedEpoch phase0.Epoch
	// Weight is the weight of the node.
	Weight uint64
	// Validity is the validity of the node.
	Validity ForkChoiceNodeValidity
	// ExecutiionBlockHash is the execution block hash of the node.
	ExecutionBlockHash phase0.Root
	// ExtraData is the extra data of the node.
	ExtraData map[string]interface{}
}

ForkChoiceNode is a node in the fork choice tree.

func (*ForkChoiceNode) MarshalJSON

func (f *ForkChoiceNode) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*ForkChoiceNode) String

func (f *ForkChoiceNode) String() string

String returns a string version of the structure.

func (*ForkChoiceNode) UnmarshalJSON

func (f *ForkChoiceNode) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type ForkChoiceNodeValidity

type ForkChoiceNodeValidity uint64

ForkChoiceNodeValidity represents the validity of a fork choice node.

const (
	// ForkChoiceNodeValidityUnknown is an unknown fork choice node.
	ForkChoiceNodeValidityUnknown ForkChoiceNodeValidity = iota
	// ForkChoiceNodeValidityInvalid is an invalid fork choice node.
	ForkChoiceNodeValidityInvalid
	// ForkChoiceNodeValidityValid is a valid fork choice node.
	ForkChoiceNodeValidityValid
	// ForkChoiceNodeValidityOptimistic is an optimistic fork choice node.
	ForkChoiceNodeValidityOptimistic
)

func ForkChoiceNodeValidityFromString

func ForkChoiceNodeValidityFromString(input string) (ForkChoiceNodeValidity, error)

ForkChoiceNodeValidityFromString converts a string input to a fork choice.

func (*ForkChoiceNodeValidity) MarshalJSON

func (d *ForkChoiceNodeValidity) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (ForkChoiceNodeValidity) String

func (d ForkChoiceNodeValidity) String() string

String returns a string representation of the ForkChoiceNodeValidity.

func (*ForkChoiceNodeValidity) UnmarshalJSON

func (d *ForkChoiceNodeValidity) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type Genesis

type Genesis struct {
	GenesisTime           time.Time
	GenesisValidatorsRoot phase0.Root
	GenesisForkVersion    phase0.Version
}

Genesis provides information about the genesis of a chain.

func (*Genesis) MarshalJSON

func (g *Genesis) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*Genesis) String

func (g *Genesis) String() string

String returns a string version of the structure.

func (*Genesis) UnmarshalJSON

func (g *Genesis) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type HeadEvent

type HeadEvent struct {
	Slot                      phase0.Slot
	Block                     phase0.Root
	State                     phase0.Root
	EpochTransition           bool
	CurrentDutyDependentRoot  phase0.Root
	PreviousDutyDependentRoot phase0.Root
}

HeadEvent is the data for the head event.

func (*HeadEvent) MarshalJSON

func (e *HeadEvent) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*HeadEvent) String

func (e *HeadEvent) String() string

String returns a string version of the structure.

func (*HeadEvent) UnmarshalJSON

func (e *HeadEvent) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type PayloadAttributesData

type PayloadAttributesData struct {
	// ProposerIndex is the index of the proposer.
	ProposerIndex phase0.ValidatorIndex
	// ProposalSlot is the slot of the proposal.
	ProposalSlot phase0.Slot
	// ParentBlockNumber is the number of the parent block.
	ParentBlockNumber uint64
	// ParentBlockRoot is the root of the parent block.
	ParentBlockRoot phase0.Root
	// ParentBlockHash is the hash of the parent block.
	ParentBlockHash phase0.Hash32
	// V1 is the v1 payload attributes.
	V1 *PayloadAttributesV1
	// V2 is the v2 payload attributes.
	V2 *PayloadAttributesV2
	// V3 is the v3 payload attributes.
	V3 *PayloadAttributesV3
}

PayloadAttributesData represents the data of a payload_attributes event.

type PayloadAttributesEvent

type PayloadAttributesEvent struct {
	// Version is the fork version of the beacon chain.
	Version spec.DataVersion
	// Data is the data of the event.
	Data *PayloadAttributesData
}

PayloadAttributesEvent represents the data of a payload_attributes event.

func (*PayloadAttributesEvent) MarshalJSON

func (e *PayloadAttributesEvent) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*PayloadAttributesEvent) String

func (e *PayloadAttributesEvent) String() string

String returns a string version of the structure.

func (*PayloadAttributesEvent) UnmarshalJSON

func (e *PayloadAttributesEvent) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type PayloadAttributesV1

type PayloadAttributesV1 struct {
	// Timestamp is the timestamp of the payload.
	Timestamp uint64
	// PrevRandao is the previous randao.
	PrevRandao [32]byte
	// SuggestedFeeRecipient is the suggested fee recipient.
	SuggestedFeeRecipient bellatrix.ExecutionAddress
}

PayloadAttributesV1 represents the payload attributes.

func (*PayloadAttributesV1) UnmarshalJSON

func (p *PayloadAttributesV1) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type PayloadAttributesV2

type PayloadAttributesV2 struct {
	// Timestamp is the timestamp of the payload.
	Timestamp uint64
	// PrevRandao is the previous randao.
	PrevRandao [32]byte
	// SuggestedFeeRecipient is the suggested fee recipient.
	SuggestedFeeRecipient bellatrix.ExecutionAddress
	// Withdrawals is the list of withdrawals.
	Withdrawals []*capella.Withdrawal
}

PayloadAttributesV2 represents the payload attributes v2.

func (*PayloadAttributesV2) UnmarshalJSON

func (p *PayloadAttributesV2) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type PayloadAttributesV3

type PayloadAttributesV3 struct {
	// Timestamp is the timestamp of the payload.
	Timestamp uint64
	// PrevRandao is the previous randao.
	PrevRandao [32]byte
	// SuggestedFeeRecipient is the suggested fee recipient.
	SuggestedFeeRecipient bellatrix.ExecutionAddress
	// Withdrawals is the list of withdrawals.
	Withdrawals []*capella.Withdrawal
	// ParentBeaconBlockRoot is the parent beacon block root.
	ParentBeaconBlockRoot phase0.Root
}

PayloadAttributesV3 represents the payload attributes v3.

func (*PayloadAttributesV3) UnmarshalJSON

func (p *PayloadAttributesV3) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type Peer

type Peer struct {
	PeerID             string `json:"peer_id"`
	Enr                string `json:"enr,omitempty"`
	LastSeenP2PAddress string `json:"last_seen_p2p_address"`
	State              string `json:"state"`
	Direction          string `json:"direction"`
}

Peer contains all the available information about a nodes peer.

func (*Peer) MarshalJSON

func (p *Peer) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*Peer) String

func (p *Peer) String() string

func (*Peer) UnmarshalJSON

func (p *Peer) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type ProposalPreparation

type ProposalPreparation struct {
	// ValidatorIdex is the index of the validator making the proposal request.
	ValidatorIndex phase0.ValidatorIndex
	// FeeRecipient is the execution address to be used with preparing blocks.
	FeeRecipient bellatrix.ExecutionAddress `ssz-size:"20"`
}

ProposalPreparation is the data required for proposal preparation.

func (*ProposalPreparation) MarshalJSON

func (p *ProposalPreparation) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*ProposalPreparation) String

func (p *ProposalPreparation) String() string

String returns a string version of the structure.

func (*ProposalPreparation) UnmarshalJSON

func (p *ProposalPreparation) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type ProposerDuty

type ProposerDuty struct {
	PubKey         phase0.BLSPubKey
	Slot           phase0.Slot
	ValidatorIndex phase0.ValidatorIndex
}

ProposerDuty represents a duty of a validator to propose a slot.

func (*ProposerDuty) MarshalJSON

func (p *ProposerDuty) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*ProposerDuty) String

func (p *ProposerDuty) String() string

String returns a string version of the structure.

func (*ProposerDuty) UnmarshalJSON

func (p *ProposerDuty) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SignedValidatorRegistration

type SignedValidatorRegistration struct {
	Message   *ValidatorRegistration
	Signature phase0.BLSSignature `ssz-size:"96"`
}

SignedValidatorRegistration is a signed ValidatorRegistrationV1.

func (*SignedValidatorRegistration) GetTree

func (s *SignedValidatorRegistration) GetTree() (*ssz.Node, error)

GetTree ssz hashes the SignedValidatorRegistration object

func (*SignedValidatorRegistration) HashTreeRoot

func (s *SignedValidatorRegistration) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the SignedValidatorRegistration object

func (*SignedValidatorRegistration) HashTreeRootWith

func (s *SignedValidatorRegistration) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the SignedValidatorRegistration object with a hasher

func (*SignedValidatorRegistration) MarshalJSON

func (s *SignedValidatorRegistration) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*SignedValidatorRegistration) MarshalSSZ

func (s *SignedValidatorRegistration) MarshalSSZ() ([]byte, error)

MarshalSSZ ssz marshals the SignedValidatorRegistration object

func (*SignedValidatorRegistration) MarshalSSZTo

func (s *SignedValidatorRegistration) MarshalSSZTo(buf []byte) (dst []byte, err error)

MarshalSSZTo ssz marshals the SignedValidatorRegistration object to a target array

func (*SignedValidatorRegistration) MarshalYAML

func (s *SignedValidatorRegistration) MarshalYAML() ([]byte, error)

MarshalYAML implements yaml.Marshaler.

func (*SignedValidatorRegistration) SizeSSZ

func (s *SignedValidatorRegistration) SizeSSZ() (size int)

SizeSSZ returns the ssz encoded size in bytes for the SignedValidatorRegistration object

func (*SignedValidatorRegistration) String

func (s *SignedValidatorRegistration) String() string

String returns a string version of the structure.

func (*SignedValidatorRegistration) UnmarshalJSON

func (s *SignedValidatorRegistration) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

func (*SignedValidatorRegistration) UnmarshalSSZ

func (s *SignedValidatorRegistration) UnmarshalSSZ(buf []byte) error

UnmarshalSSZ ssz unmarshals the SignedValidatorRegistration object

func (*SignedValidatorRegistration) UnmarshalYAML

func (s *SignedValidatorRegistration) UnmarshalYAML(input []byte) error

UnmarshalYAML implements yaml.Unmarshaler.

type SyncCommittee

type SyncCommittee struct {
	// Validators is the list of validator indices in the committee.
	Validators []phase0.ValidatorIndex
	// ValidatorAggregates are the lists of validators in each aggregate.
	ValidatorAggregates [][]phase0.ValidatorIndex
}

SyncCommittee is the data providing validator membership of sync committees.

func (*SyncCommittee) MarshalJSON

func (s *SyncCommittee) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*SyncCommittee) String

func (s *SyncCommittee) String() string

String returns a string version of the structure.

func (*SyncCommittee) UnmarshalJSON

func (s *SyncCommittee) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SyncCommitteeDuty

type SyncCommitteeDuty struct {
	// PubKey is the public key of the validator that should contribute.
	PubKey phase0.BLSPubKey
	// ValidatorIndex is the index of the validator that should contribute.
	ValidatorIndex phase0.ValidatorIndex
	// ValidatorSyncCommitteeIndices is the index of the validator in the list of validators in the committee.
	ValidatorSyncCommitteeIndices []phase0.CommitteeIndex
}

SyncCommitteeDuty is the data regarding which validators have the duty to contribute to sync committees in a slot.

func (*SyncCommitteeDuty) MarshalJSON

func (s *SyncCommitteeDuty) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*SyncCommitteeDuty) String

func (s *SyncCommitteeDuty) String() string

String returns a string version of the structure.

func (*SyncCommitteeDuty) UnmarshalJSON

func (s *SyncCommitteeDuty) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SyncCommitteeSubscription

type SyncCommitteeSubscription struct {
	// ValidatorIdex is the index of the validator making the subscription request.
	ValidatorIndex phase0.ValidatorIndex
	// SyncCommitteeIndices are the indices of the sync committees of which the validator is a member.
	SyncCommitteeIndices []phase0.CommitteeIndex
	// UntilEpoch is the epoch at which the subscription no longer applies.
	UntilEpoch phase0.Epoch
}

SyncCommitteeSubscription is the data required for a sync committee subscription.

func (*SyncCommitteeSubscription) MarshalJSON

func (s *SyncCommitteeSubscription) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*SyncCommitteeSubscription) String

func (s *SyncCommitteeSubscription) String() string

String returns a string version of the structure.

func (*SyncCommitteeSubscription) UnmarshalJSON

func (s *SyncCommitteeSubscription) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type SyncState

type SyncState struct {
	// HeadSlot is the head slot of the chain as understood by the node.
	HeadSlot phase0.Slot
	// SyncDistance is the distance between the node's highest synced slot and the head slot.
	SyncDistance phase0.Slot
	// IsOptimistic is true if the node is optimistic.
	IsOptimistic bool
	// IsSyncing is true if the node is syncing.
	IsSyncing bool
}

SyncState is the data regarding the node's synchronization state to the chain.

func (*SyncState) MarshalJSON

func (s *SyncState) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*SyncState) String

func (s *SyncState) String() string

String returns a string version of the structure.

func (*SyncState) UnmarshalJSON

func (s *SyncState) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type Validator

type Validator struct {
	Index     phase0.ValidatorIndex
	Balance   phase0.Gwei
	Status    ValidatorState
	Validator *phase0.Validator
}

Validator contains the spec validator plus additional fields.

func (*Validator) MarshalJSON

func (v *Validator) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*Validator) PubKey

func (v *Validator) PubKey(_ context.Context) (phase0.BLSPubKey, error)

PubKey implements ValidatorPubKeyProvider.

func (*Validator) String

func (v *Validator) String() string

String returns a string version of the structure.

func (*Validator) UnmarshalJSON

func (v *Validator) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type ValidatorBalance

type ValidatorBalance struct {
	Index   phase0.ValidatorIndex
	Balance phase0.Gwei
}

ValidatorBalance contains the balance of a validator.

func (*ValidatorBalance) MarshalJSON

func (v *ValidatorBalance) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*ValidatorBalance) String

func (v *ValidatorBalance) String() string

String returns a string version of the structure.

func (*ValidatorBalance) UnmarshalJSON

func (v *ValidatorBalance) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

type ValidatorRegistration

type ValidatorRegistration struct {
	FeeRecipient bellatrix.ExecutionAddress `ssz-size:"20"`
	GasLimit     uint64
	Timestamp    time.Time
	Pubkey       phase0.BLSPubKey `ssz-size:"48"`
}

ValidatorRegistration represents a ValidatorRegistrationV1.

func (*ValidatorRegistration) GetTree

func (v *ValidatorRegistration) GetTree() (*ssz.Node, error)

GetTree ssz hashes the ValidatorRegistration object

func (*ValidatorRegistration) HashTreeRoot

func (v *ValidatorRegistration) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the ValidatorRegistration object

func (*ValidatorRegistration) HashTreeRootWith

func (v *ValidatorRegistration) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the ValidatorRegistration object with a hasher

func (*ValidatorRegistration) MarshalJSON

func (v *ValidatorRegistration) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*ValidatorRegistration) MarshalSSZ

func (v *ValidatorRegistration) MarshalSSZ() ([]byte, error)

MarshalSSZ ssz marshals the ValidatorRegistration object

func (*ValidatorRegistration) MarshalSSZTo

func (v *ValidatorRegistration) MarshalSSZTo(buf []byte) (dst []byte, err error)

MarshalSSZTo ssz marshals the ValidatorRegistration object to a target array

func (*ValidatorRegistration) MarshalYAML

func (v *ValidatorRegistration) MarshalYAML() ([]byte, error)

MarshalYAML implements yaml.Marshaler.

func (*ValidatorRegistration) SizeSSZ

func (v *ValidatorRegistration) SizeSSZ() (size int)

SizeSSZ returns the ssz encoded size in bytes for the ValidatorRegistration object

func (*ValidatorRegistration) String

func (v *ValidatorRegistration) String() string

String returns a string version of the structure.

func (*ValidatorRegistration) UnmarshalJSON

func (v *ValidatorRegistration) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

func (*ValidatorRegistration) UnmarshalSSZ

func (v *ValidatorRegistration) UnmarshalSSZ(buf []byte) error

UnmarshalSSZ ssz unmarshals the ValidatorRegistration object

func (*ValidatorRegistration) UnmarshalYAML

func (v *ValidatorRegistration) UnmarshalYAML(input []byte) error

UnmarshalYAML implements yaml.Unmarshaler.

type ValidatorState

type ValidatorState int

ValidatorState defines the state of the validator.

const (
	// ValidatorStateUnknown means no information can be found about the validator.
	ValidatorStateUnknown ValidatorState = iota
	// ValidatorStatePendingInitialized means the validator is not yet in the queue to be activated.
	ValidatorStatePendingInitialized
	// ValidatorStatePendingQueued means the validator is in the queue to be activated.
	ValidatorStatePendingQueued
	// ValidatorStateActiveOngoing means the validator is active.
	ValidatorStateActiveOngoing
	// ValidatorStateActiveExiting means the validator is active but exiting.
	ValidatorStateActiveExiting
	// ValidatorStateActiveSlashed means the validator is active but exiting due to being slashed.
	ValidatorStateActiveSlashed
	// ValidatorStateExitedUnslashed means the validator has exited without being slashed.
	ValidatorStateExitedUnslashed
	// ValidatorStateExitedSlashed means the validator has exited due to being slashed.
	ValidatorStateExitedSlashed
	// ValidatorStateWithdrawalPossible means it is possible to withdraw funds from the validator.
	ValidatorStateWithdrawalPossible
	// ValidatorStateWithdrawalDone means funds have been withdrawn from the validator.
	ValidatorStateWithdrawalDone
)

func ValidatorToState

func ValidatorToState(validator *phase0.Validator,
	balance *phase0.Gwei,
	currentEpoch phase0.Epoch,
	farFutureEpoch phase0.Epoch,
) ValidatorState

ValidatorToState is a helper that calculates the validator status given a validator struct.

func (ValidatorState) HasActivated

func (v ValidatorState) HasActivated() bool

HasActivated returns true if the validator has activated.

func (ValidatorState) HasBalance

func (v ValidatorState) HasBalance() bool

HasBalance returns true if the validator has a balance.

func (ValidatorState) HasExited

func (v ValidatorState) HasExited() bool

HasExited returns true if the validator has exited.

func (ValidatorState) IsActive

func (v ValidatorState) IsActive() bool

IsActive returns true if the validator is active.

func (ValidatorState) IsAttesting

func (v ValidatorState) IsAttesting() bool

IsAttesting returns true if the validator should be attesting.

func (ValidatorState) IsExited

func (v ValidatorState) IsExited() bool

IsExited returns true if the validator is exited.

func (ValidatorState) IsPending

func (v ValidatorState) IsPending() bool

IsPending returns true if the validator is pending.

func (*ValidatorState) MarshalJSON

func (v *ValidatorState) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (ValidatorState) String

func (v ValidatorState) String() string

func (*ValidatorState) UnmarshalJSON

func (v *ValidatorState) UnmarshalJSON(input []byte) error

UnmarshalJSON implements json.Unmarshaler.

Directories

Path Synopsis
Code generated by fastssz.
Code generated by fastssz.
Code generated by fastssz.
Code generated by fastssz.
Code generated by fastssz.
Code generated by fastssz.

Jump to

Keyboard shortcuts

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