v1

package
v0.22.0 Latest Latest
Warning

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

Go to latest
Published: Dec 11, 2024 License: Apache-2.0 Imports: 17 Imported by: 173

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,
	"attester_slashing":       true,
	"blob_sidecar":            true,
	"block":                   true,
	"block_gossip":            true,
	"bls_to_execution_change": true,
	"chain_reorg":             true,
	"contribution_and_proof":  true,
	"finalized_checkpoint":    true,
	"head":                    true,
	"payload_attributes":      true,
	"proposer_slashing":       true,
	"voluntary_exit":          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 added in v0.6.9

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 added in v0.6.9

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

MarshalJSON implements json.Marshaler.

func (*BeaconBlockHeader) String added in v0.6.9

func (b *BeaconBlockHeader) String() string

String returns a string version of the structure.

func (*BeaconBlockHeader) UnmarshalJSON added in v0.6.9

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 added in v0.19.0

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 added in v0.19.0

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

MarshalJSON implements json.Marshaler.

func (*BlobSidecarEvent) String added in v0.19.0

func (e *BlobSidecarEvent) String() string

String returns a string version of the structure.

func (*BlobSidecarEvent) UnmarshalJSON added in v0.19.0

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

UnmarshalJSON implements json.Unmarshaler.

type BlockEvent added in v0.6.9

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

BlockEvent is the data for the block event.

func (*BlockEvent) MarshalJSON added in v0.6.9

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

MarshalJSON implements json.Marshaler.

func (*BlockEvent) String added in v0.6.9

func (e *BlockEvent) String() string

String returns a string version of the structure.

func (*BlockEvent) UnmarshalJSON added in v0.6.9

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

UnmarshalJSON implements json.Unmarshaler.

type BlockGossipEvent added in v0.21.11

type BlockGossipEvent struct {
	Slot  phase0.Slot
	Block phase0.Root
}

BlockGossipEvent is the data for the block gossip event.

func (*BlockGossipEvent) MarshalJSON added in v0.21.11

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

MarshalJSON implements json.Marshaler.

func (*BlockGossipEvent) String added in v0.21.11

func (e *BlockGossipEvent) String() string

String returns a string version of the structure.

func (*BlockGossipEvent) UnmarshalJSON added in v0.21.11

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

UnmarshalJSON implements json.Unmarshaler.

type ChainReorgEvent added in v0.6.9

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 added in v0.6.9

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

MarshalJSON implements json.Marshaler.

func (*ChainReorgEvent) String added in v0.6.9

func (e *ChainReorgEvent) String() string

String returns a string version of the structure.

func (*ChainReorgEvent) UnmarshalJSON added in v0.6.9

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

UnmarshalJSON implements json.Unmarshaler.

type DepositContract added in v0.6.2

type DepositContract struct {
	ChainID uint64
	Address []byte
}

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

func (*DepositContract) MarshalJSON added in v0.6.2

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

MarshalJSON implements json.Marshaler.

func (*DepositContract) String added in v0.6.2

func (d *DepositContract) String() string

String returns a string version of the structure.

func (*DepositContract) UnmarshalJSON added in v0.6.2

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

UnmarshalJSON implements json.Unmarshaler.

type Event added in v0.6.9

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

Event is the container for events sent from the API.

func (*Event) MarshalJSON added in v0.6.20

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

MarshalJSON implements json.Marshaler.

func (*Event) String added in v0.6.20

func (e *Event) String() string

String returns a string version of the structure.

func (*Event) UnmarshalJSON added in v0.6.20

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

UnmarshalJSON implements json.Unmarshaler.

type Finality added in v0.6.4

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 added in v0.6.4

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

MarshalJSON implements json.Marshaler.

func (*Finality) String added in v0.6.4

func (f *Finality) String() string

String returns a string version of the structure.

func (*Finality) UnmarshalJSON added in v0.6.4

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

UnmarshalJSON implements json.Unmarshaler.

type FinalizedCheckpointEvent added in v0.6.9

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

FinalizedCheckpointEvent is the data for the finalized checkpoint event.

func (*FinalizedCheckpointEvent) MarshalJSON added in v0.6.9

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

MarshalJSON implements json.Marshaler.

func (*FinalizedCheckpointEvent) String added in v0.6.9

func (e *FinalizedCheckpointEvent) String() string

String returns a string version of the structure.

func (*FinalizedCheckpointEvent) UnmarshalJSON added in v0.6.9

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

UnmarshalJSON implements json.Unmarshaler.

type ForkChoice added in v0.18.1

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 added in v0.18.1

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

MarshalJSON implements json.Marshaler.

func (*ForkChoice) String added in v0.18.1

func (f *ForkChoice) String() string

String returns a string version of the structure.

func (*ForkChoice) UnmarshalJSON added in v0.18.1

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

UnmarshalJSON implements json.Unmarshaler.

type ForkChoiceNode added in v0.18.1

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]any
}

ForkChoiceNode is a node in the fork choice tree.

func (*ForkChoiceNode) MarshalJSON added in v0.18.1

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

MarshalJSON implements json.Marshaler.

func (*ForkChoiceNode) String added in v0.18.1

func (f *ForkChoiceNode) String() string

String returns a string version of the structure.

func (*ForkChoiceNode) UnmarshalJSON added in v0.18.1

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

UnmarshalJSON implements json.Unmarshaler.

type ForkChoiceNodeValidity added in v0.18.1

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 added in v0.18.1

func ForkChoiceNodeValidityFromString(input string) (ForkChoiceNodeValidity, error)

ForkChoiceNodeValidityFromString converts a string input to a fork choice.

func (*ForkChoiceNodeValidity) MarshalJSON added in v0.18.1

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

MarshalJSON implements json.Marshaler.

func (ForkChoiceNodeValidity) String added in v0.18.1

func (d ForkChoiceNodeValidity) String() string

String returns a string representation of the ForkChoiceNodeValidity.

func (*ForkChoiceNodeValidity) UnmarshalJSON added in v0.18.1

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 added in v0.6.2

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

MarshalJSON implements json.Marshaler.

func (*Genesis) String added in v0.6.2

func (g *Genesis) String() string

String returns a string version of the structure.

func (*Genesis) UnmarshalJSON added in v0.6.2

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

UnmarshalJSON implements json.Unmarshaler.

type HeadEvent added in v0.6.9

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 added in v0.6.9

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

MarshalJSON implements json.Marshaler.

func (*HeadEvent) String added in v0.6.9

func (e *HeadEvent) String() string

String returns a string version of the structure.

func (*HeadEvent) UnmarshalJSON added in v0.6.9

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

UnmarshalJSON implements json.Unmarshaler.

type PayloadAttributesData added in v0.16.0

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 added in v0.16.0

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 added in v0.16.0

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

MarshalJSON implements json.Marshaler.

func (*PayloadAttributesEvent) String added in v0.16.0

func (e *PayloadAttributesEvent) String() string

String returns a string version of the structure.

func (*PayloadAttributesEvent) UnmarshalJSON added in v0.16.0

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

UnmarshalJSON implements json.Unmarshaler.

type PayloadAttributesV1 added in v0.16.0

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 added in v0.16.0

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

UnmarshalJSON implements json.Unmarshaler.

type PayloadAttributesV2 added in v0.16.0

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 added in v0.16.0

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

UnmarshalJSON implements json.Unmarshaler.

type PayloadAttributesV3 added in v0.19.0

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 added in v0.19.0

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

UnmarshalJSON implements json.Unmarshaler.

type Peer added in v0.19.0

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 added in v0.19.0

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

MarshalJSON implements json.Marshaler.

func (*Peer) String added in v0.19.0

func (p *Peer) String() string

func (*Peer) UnmarshalJSON added in v0.19.0

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

UnmarshalJSON implements json.Unmarshaler.

type ProposalPreparation added in v0.11.0

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 added in v0.11.0

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

MarshalJSON implements json.Marshaler.

func (*ProposalPreparation) String added in v0.11.0

func (p *ProposalPreparation) String() string

String returns a string version of the structure.

func (*ProposalPreparation) UnmarshalJSON added in v0.11.0

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 added in v0.12.0

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

SignedValidatorRegistration is a signed ValidatorRegistrationV1.

func (*SignedValidatorRegistration) GetTree added in v0.18.2

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

GetTree ssz hashes the SignedValidatorRegistration object

func (*SignedValidatorRegistration) HashTreeRoot added in v0.18.2

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

HashTreeRoot ssz hashes the SignedValidatorRegistration object

func (*SignedValidatorRegistration) HashTreeRootWith added in v0.18.2

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

HashTreeRootWith ssz hashes the SignedValidatorRegistration object with a hasher

func (*SignedValidatorRegistration) MarshalJSON added in v0.12.0

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

MarshalJSON implements json.Marshaler.

func (*SignedValidatorRegistration) MarshalSSZ added in v0.18.2

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

MarshalSSZ ssz marshals the SignedValidatorRegistration object

func (*SignedValidatorRegistration) MarshalSSZTo added in v0.18.2

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

MarshalSSZTo ssz marshals the SignedValidatorRegistration object to a target array

func (*SignedValidatorRegistration) MarshalYAML added in v0.12.0

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

MarshalYAML implements yaml.Marshaler.

func (*SignedValidatorRegistration) SizeSSZ added in v0.18.2

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

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

func (*SignedValidatorRegistration) String added in v0.12.0

func (s *SignedValidatorRegistration) String() string

String returns a string version of the structure.

func (*SignedValidatorRegistration) UnmarshalJSON added in v0.12.0

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

UnmarshalJSON implements json.Unmarshaler.

func (*SignedValidatorRegistration) UnmarshalSSZ added in v0.18.2

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

UnmarshalSSZ ssz unmarshals the SignedValidatorRegistration object

func (*SignedValidatorRegistration) UnmarshalYAML added in v0.12.0

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

UnmarshalYAML implements yaml.Unmarshaler.

type SyncCommittee added in v0.7.0

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 added in v0.7.0

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

MarshalJSON implements json.Marshaler.

func (*SyncCommittee) String added in v0.7.0

func (s *SyncCommittee) String() string

String returns a string version of the structure.

func (*SyncCommittee) UnmarshalJSON added in v0.7.0

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

UnmarshalJSON implements json.Unmarshaler.

type SyncCommitteeDuty added in v0.7.0

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 added in v0.7.0

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

MarshalJSON implements json.Marshaler.

func (*SyncCommitteeDuty) String added in v0.7.0

func (s *SyncCommitteeDuty) String() string

String returns a string version of the structure.

func (*SyncCommitteeDuty) UnmarshalJSON added in v0.7.0

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

UnmarshalJSON implements json.Unmarshaler.

type SyncCommitteeSubscription added in v0.7.0

type SyncCommitteeSubscription struct {
	// ValidatorIndex 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 added in v0.7.0

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

MarshalJSON implements json.Marshaler.

func (*SyncCommitteeSubscription) String added in v0.7.0

func (s *SyncCommitteeSubscription) String() string

String returns a string version of the structure.

func (*SyncCommitteeSubscription) UnmarshalJSON added in v0.7.0

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 added in v0.6.1

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 added in v0.6.9

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

ValidatorBalance contains the balance of a validator.

func (*ValidatorBalance) MarshalJSON added in v0.6.9

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

MarshalJSON implements json.Marshaler.

func (*ValidatorBalance) String added in v0.6.9

func (v *ValidatorBalance) String() string

String returns a string version of the structure.

func (*ValidatorBalance) UnmarshalJSON added in v0.6.9

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

UnmarshalJSON implements json.Unmarshaler.

type ValidatorRegistration added in v0.12.0

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 added in v0.13.0

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

GetTree ssz hashes the ValidatorRegistration object

func (*ValidatorRegistration) HashTreeRoot added in v0.12.0

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

HashTreeRoot ssz hashes the ValidatorRegistration object

func (*ValidatorRegistration) HashTreeRootWith added in v0.12.0

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

HashTreeRootWith ssz hashes the ValidatorRegistration object with a hasher

func (*ValidatorRegistration) MarshalJSON added in v0.12.0

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

MarshalJSON implements json.Marshaler.

func (*ValidatorRegistration) MarshalSSZ added in v0.12.0

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

MarshalSSZ ssz marshals the ValidatorRegistration object

func (*ValidatorRegistration) MarshalSSZTo added in v0.12.0

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

MarshalSSZTo ssz marshals the ValidatorRegistration object to a target array

func (*ValidatorRegistration) MarshalYAML added in v0.12.0

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

MarshalYAML implements yaml.Marshaler.

func (*ValidatorRegistration) SizeSSZ added in v0.12.0

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

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

func (*ValidatorRegistration) String added in v0.12.0

func (v *ValidatorRegistration) String() string

String returns a string version of the structure.

func (*ValidatorRegistration) UnmarshalJSON added in v0.12.0

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

UnmarshalJSON implements json.Unmarshaler.

func (*ValidatorRegistration) UnmarshalSSZ added in v0.12.0

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

UnmarshalSSZ ssz unmarshals the ValidatorRegistration object

func (*ValidatorRegistration) UnmarshalYAML added in v0.12.0

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 added in v0.6.7

func (v ValidatorState) HasActivated() bool

HasActivated returns true if the validator has activated.

func (ValidatorState) HasBalance added in v0.6.1

func (v ValidatorState) HasBalance() bool

HasBalance returns true if the validator has a balance.

func (ValidatorState) HasExited added in v0.6.7

func (v ValidatorState) HasExited() bool

HasExited returns true if the validator has exited.

func (ValidatorState) IsActive added in v0.6.7

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 added in v0.6.7

func (v ValidatorState) IsExited() bool

IsExited returns true if the validator is exited.

func (ValidatorState) IsPending added in v0.6.7

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