commonutils

package
v0.0.0-...-dbe7483 Latest Latest
Warning

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

Go to latest
Published: May 23, 2024 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConvertBytesToStrings

func ConvertBytesToStrings(b [][32]byte) []string

func ExtractBlock

func ExtractBlock(blockFile string) (deneb.BeaconBlock, error)

func ExtractBlockHeader

func ExtractBlockHeader(blockHeaderFile string) (phase0.BeaconBlockHeader, error)

func ExtractSignedDenebBlock

func ExtractSignedDenebBlock(signedBlockFile string) (*spec.VersionedSignedBeaconBlock, error)

func GetValidatorFields

func GetValidatorFields(v *phase0.Validator) []string

func GetWithdrawalFields

func GetWithdrawalFields(w *capella.Withdrawal) []string

func GetWithdrawalIndex

func GetWithdrawalIndex(validatorIndex uint64, withdrawals []*capella.Withdrawal) uint64

func ParseCapellaBeaconStateFromJSON

func ParseCapellaBeaconStateFromJSON(data beaconStateJSONCapella, s *capella.BeaconState) error

func ParseCapellaStateJSONFile

func ParseCapellaStateJSONFile(filePath string) (*beaconStateJSONCapella, error)

func ParseDenebBeaconStateFromJSON

func ParseDenebBeaconStateFromJSON(data *BeaconStateJSONDeneb, s *deneb.BeaconState) (err error)

nolint:gocyclo

Types

type BalanceUpdateProofs

type BalanceUpdateProofs struct {
	ValidatorIndex                         uint64   `json:"validatorIndex"`
	BeaconStateRoot                        string   `json:"beaconStateRoot"`
	LatestBlockHeaderRoot                  string   `json:"latestBlockHeaderRoot"`
	StateRootAgainstLatestBlockHeaderProof []string `json:"StateRootAgainstLatestBlockHeaderProof"`
	ValidatorFieldsProof                   []string `json:"WithdrawalCredentialProof"`
	ValidatorFields                        []string `json:"ValidatorFields"`
}

type BeaconStateJSONDeneb

type BeaconStateJSONDeneb struct {
	GenesisTime                  string                        `json:"genesis_time"`
	GenesisValidatorsRoot        string                        `json:"genesis_validators_root"`
	Slot                         string                        `json:"slot"`
	Fork                         *phase0.Fork                  `json:"fork"`
	LatestBlockHeader            *phase0.BeaconBlockHeader     `json:"latest_block_header"`
	BlockRoots                   []string                      `json:"block_roots"`
	StateRoots                   []string                      `json:"state_roots"`
	HistoricalRoots              []string                      `json:"historical_roots"`
	ETH1Data                     *phase0.ETH1Data              `json:"eth1_data"`
	ETH1DataVotes                []*phase0.ETH1Data            `json:"eth1_data_votes"`
	ETH1DepositIndex             string                        `json:"eth1_deposit_index"`
	Validators                   []*phase0.Validator           `json:"validators"`
	Balances                     []string                      `json:"balances"`
	RANDAOMixes                  []string                      `json:"randao_mixes"`
	Slashings                    []string                      `json:"slashings"`
	PreviousEpochParticipation   []string                      `json:"previous_epoch_participation"`
	CurrentEpochParticipation    []string                      `json:"current_epoch_participation"`
	JustificationBits            string                        `json:"justification_bits"`
	PreviousJustifiedCheckpoint  *phase0.Checkpoint            `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint   *phase0.Checkpoint            `json:"current_justified_checkpoint"`
	FinalizedCheckpoint          *phase0.Checkpoint            `json:"finalized_checkpoint"`
	InactivityScores             []string                      `json:"inactivity_scores"`
	CurrentSyncCommittee         *altair.SyncCommittee         `json:"current_sync_committee"`
	NextSyncCommittee            *altair.SyncCommittee         `json:"next_sync_committee"`
	LatestExecutionPayloadHeader *deneb.ExecutionPayloadHeader `json:"latest_execution_payload_header"`
	NextWithdrawalIndex          string                        `json:"next_withdrawal_index"`
	NextWithdrawalValidatorIndex string                        `json:"next_withdrawal_validator_index"`
	HistoricalSummaries          []*capella.HistoricalSummary  `json:"historical_summaries"`
}

func ParseDenebStateJSONFile

func ParseDenebStateJSONFile(filePath string) (*BeaconStateJSONDeneb, error)

type InputDataBlock

type InputDataBlock struct {
	Version string `json:"version"`
	Data    struct {
		Message   deneb.BeaconBlock `json:"message"`
		Signature string            `json:"signature"`
	} `json:"data"`
	Execution_optimistic bool `json:"execution_optimistic"`
	Finalized            bool `json:"finalized"`
}

type InputDataBlockHeader

type InputDataBlockHeader struct {
	Data struct {
		Header struct {
			Message phase0.BeaconBlockHeader `json:"message"`
		} `json:"header"`
	} `json:"data"`
}

type WithdrawalCredentialProofs

type WithdrawalCredentialProofs struct {
	StateRootAgainstLatestBlockHeaderProof []string `json:"StateRootAgainstLatestBlockHeaderProof"`
	BeaconStateRoot                        string   `json:"beaconStateRoot"`
	ValidatorIndex                         uint64   `json:"validatorIndex"`
	WithdrawalCredentialProof              []string `json:"WithdrawalCredentialProof"`
	ValidatorFields                        []string `json:"ValidatorFields"`
}

type WithdrawalProofs

type WithdrawalProofs struct {
	StateRootAgainstLatestBlockHeaderProof []string `json:"StateRootAgainstLatestBlockHeaderProof"`
	SlotAgainstLatestBlockHeaderProof      []string `json:"SlotAgainstLatestBlockHeaderProof"`
	BeaconStateRoot                        string   `json:"beaconStateRoot"`
	WithdrawalProof                        []string `json:"WithdrawalProof"`
	SlotProof                              []string `json:"SlotProof"`
	ExecutionPayloadProof                  []string `json:"ExecutionPayloadProof"`
	TimestampProof                         []string `json:"TimestampProof"`
	HistoricalSummaryProof                 []string `json:"HistoricalSummaryProof"`
	BlockHeaderRootIndex                   uint64   `json:"blockHeaderRootIndex"`
	HistoricalSummaryIndex                 uint64   `json:"historicalSummaryIndex"`
	WithdrawalIndex                        uint64   `json:"withdrawalIndex"`
	BlockHeaderRoot                        string   `json:"blockHeaderRoot"`
	SlotRoot                               string   `json:"slotRoot"`
	TimestampRoot                          string   `json:"timestampRoot"`
	ExecutionPayloadRoot                   string   `json:"executionPayloadRoot"`
	ValidatorProof                         []string `json:"ValidatorProof"`
	ValidatorFields                        []string `json:"ValidatorFields"`
	WithdrawalFields                       []string `json:"WithdrawalFields"`
}

Jump to

Keyboard shortcuts

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