scale

package
v0.0.0-...-49ff922 Latest Latest
Warning

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

Go to latest
Published: Apr 10, 2023 License: LGPL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Attestation

type Attestation struct {
	AggregationBits []byte
	Data            AttestationData
	Signature       []byte
}

type AttestationData

type AttestationData struct {
	Slot            types.U64
	Index           types.U64
	BeaconBlockRoot types.H256
	Source          Checkpoint
	Target          Checkpoint
}

func (*AttestationData) ToJSON

func (a *AttestationData) ToJSON() json.AttestationData

type AttesterSlashing

type AttesterSlashing struct {
	Attestation1 IndexedAttestation
	Attestation2 IndexedAttestation
}

type BLSToExecutionChange

type BLSToExecutionChange struct {
	ValidatorIndex     types.U64
	FromBlsPubkey      []byte
	ToExecutionAddress []byte
}

type BeaconBlock

type BeaconBlock struct {
	Slot          types.U64
	ProposerIndex types.U64
	ParentRoot    types.H256
	StateRoot     types.H256
	Body          Body
}

type BeaconBlockCapella

type BeaconBlockCapella struct {
	Slot          types.U64
	ProposerIndex types.U64
	ParentRoot    types.H256
	StateRoot     types.H256
	Body          BodyCapella
}

type BeaconHeader

type BeaconHeader struct {
	Slot          types.U64
	ProposerIndex types.U64
	ParentRoot    types.H256
	StateRoot     types.H256
	BodyRoot      types.H256
}

func (*BeaconHeader) ToJSON

func (b *BeaconHeader) ToJSON() json.BeaconHeader

func (*BeaconHeader) ToSSZ

func (b *BeaconHeader) ToSSZ() *state.BeaconBlockHeader

type BlockRootProof

type BlockRootProof struct {
	Leaf  types.H256
	Proof []types.H256
	Tree  *ssz.Node
}

type Body

type Body struct {
	RandaoReveal      []byte
	Eth1Data          Eth1Data
	Graffiti          types.H256
	ProposerSlashings []ProposerSlashing
	AttesterSlashings []AttesterSlashing
	Attestations      []Attestation
	Deposits          []Deposit
	VoluntaryExits    []SignedVoluntaryExit
	SyncAggregate     SyncAggregate
	ExecutionPayload  ExecutionPayloadHeaderCapella
}

type BodyCapella

type BodyCapella struct {
	RandaoReveal          []byte
	Eth1Data              Eth1Data
	Graffiti              types.H256
	ProposerSlashings     []ProposerSlashing
	AttesterSlashings     []AttesterSlashing
	Attestations          []Attestation
	Deposits              []Deposit
	VoluntaryExits        []SignedVoluntaryExit
	SyncAggregate         SyncAggregate
	ExecutionPayload      ExecutionPayloadHeaderCapella
	BlsToExecutionChanges []*SignedBLSToExecutionChange
}

type Checkpoint

type Checkpoint struct {
	Epoch types.U64
	Root  types.H256
}

type Deposit

type Deposit struct {
	Proof []types.H256
	Data  DepositData
}

type DepositData

type DepositData struct {
	Pubkey                []byte
	WithdrawalCredentials types.H256
	Amount                types.U64
	Signature             []byte
}

type DepositVoluntaryExit

type DepositVoluntaryExit struct {
	Proof []types.H256
	Data  DepositData
}

type Eth1Data

type Eth1Data struct {
	DepositRoot  types.H256
	DepositCount types.U64
	BlockHash    types.H256
}

type ExecutionPayloadHeaderCapella

type ExecutionPayloadHeaderCapella struct {
	ParentHash       types.H256
	FeeRecipient     []byte
	StateRoot        types.H256
	ReceiptsRoot     types.H256
	LogsBloom        []byte
	PrevRandao       types.H256
	BlockNumber      types.U64
	GasLimit         types.U64
	GasUsed          types.U64
	Timestamp        types.U64
	ExtraData        []byte
	BaseFeePerGas    types.U256
	BlockHash        types.H256
	TransactionsRoot types.H256
	WithdrawalsRoot  types.H256
}

func (*ExecutionPayloadHeaderCapella) ToJSON

type FinalizedHeaderPayload

type FinalizedHeaderPayload struct {
	AttestedHeader  BeaconHeader
	FinalizedHeader BeaconHeader
	FinalityBranch  []types.H256
	SyncAggregate   SyncAggregate
	SignatureSlot   types.U64
	BlockRootsHash  types.H256
	BlockRootProof  []types.H256
}

func (FinalizedHeaderPayload) ToJSON

type FinalizedHeaderUpdate

type FinalizedHeaderUpdate struct {
	Payload                  FinalizedHeaderPayload
	FinalizedHeaderBlockRoot common.Hash
	BlockRootsTree           *ssz.Node
}

type HeaderUpdate

type HeaderUpdate struct {
	Payload           HeaderUpdatePayload
	NextSyncAggregate SyncAggregate
}

func (HeaderUpdate) ToJSON

func (h HeaderUpdate) ToJSON() json.HeaderUpdate

type HeaderUpdatePayload

type HeaderUpdatePayload struct {
	BeaconHeader              BeaconHeader
	ExecutionHeader           ExecutionPayloadHeaderCapella
	ExecutionBranch           []types.H256
	SyncAggregate             SyncAggregate
	SignatureSlot             types.U64
	BlockRootBranch           []types.H256
	BlockRootBranchHeaderRoot types.H256
}

type IndexedAttestation

type IndexedAttestation struct {
	AttestingIndices []types.U64
	Data             AttestationData
	Signature        []byte
}

type InitialSync

type InitialSync struct {
	Header                     BeaconHeader
	CurrentSyncCommittee       SyncCommittee
	CurrentSyncCommitteeBranch []types.H256
	ValidatorsRoot             types.H256
	ImportTime                 types.U64
}

func (InitialSync) ToJSON

func (s InitialSync) ToJSON() json.InitialSync

type ProposerSlashing

type ProposerSlashing struct {
	SignedHeader1 SignedHeader
	SignedHeader2 SignedHeader
}

type SignedBLSToExecutionChange

type SignedBLSToExecutionChange struct {
	Message   *BLSToExecutionChange
	Signature []byte
}

type SignedHeader

type SignedHeader struct {
	Message   BeaconHeader
	Signature []byte
}

type SignedVoluntaryExit

type SignedVoluntaryExit struct {
	Exit      VoluntaryExit
	Signature []byte
}

type SyncAggregate

type SyncAggregate struct {
	SyncCommitteeBits      []byte
	SyncCommitteeSignature []byte
}

func (*SyncAggregate) ToJSON

func (s *SyncAggregate) ToJSON() json.SyncAggregate

type SyncCommittee

type SyncCommittee struct {
	Pubkeys         [][48]byte
	AggregatePubkey [48]byte
}

func (*SyncCommittee) ToJSON

func (s *SyncCommittee) ToJSON() json.SyncCommittee

type SyncCommitteePeriodPayload

type SyncCommitteePeriodPayload struct {
	AttestedHeader          BeaconHeader
	NextSyncCommittee       SyncCommittee
	NextSyncCommitteeBranch []types.H256
	FinalizedHeader         BeaconHeader
	FinalityBranch          []types.H256
	SyncAggregate           SyncAggregate
	SyncCommitteePeriod     types.U64
	SignatureSlot           types.U64
	BlockRootsHash          types.H256
	BlockRootProof          []types.H256
}

func (SyncCommitteePeriodPayload) ToJSON

type SyncCommitteePeriodUpdate

type SyncCommitteePeriodUpdate struct {
	Payload                  SyncCommitteePeriodPayload
	FinalizedHeaderBlockRoot common.Hash
	BlockRootsTree           *ssz.Node
}

type VoluntaryExit

type VoluntaryExit struct {
	Epoch          types.U64
	ValidaterIndex types.U64
}

Jump to

Keyboard shortcuts

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