Documentation
¶
Index ¶
- Constants
- Variables
- func NewNativeParser(params internal.ParserParams, opts ...internal.ParserFactoryOption) (internal.NativeParser, error)
- type Blob
- type BlobSidecar
- type Blobs
- type BlockAltair
- type BlockBellatrix
- type BlockBodyAltair
- type BlockBodyBellatrix
- type BlockBodyCapella
- type BlockBodyDeneb
- type BlockBodyPhase0
- type BlockCapella
- type BlockDeneb
- type BlockHeader
- type BlockHeaderMessage
- type BlockPhase0
- type BlockResponseLit
- type Eth1Data
- type ExecutionPayloadBellatrix
- type ExecutionPayloadCapella
- type ExecutionPayloadDeneb
- type ExecutionTransaction
- type Quantity
- type SignedBlockAltair
- type SignedBlockBellatrix
- type SignedBlockCapella
- type SignedBlockDeneb
- type SignedBlockHeader
- type SignedBlockHeaderContainer
- type SignedBlockPhase0
- type Withdrawal
Constants ¶
View Source
const (
SlotsPerEpoch = 32
)
Variables ¶
View Source
var Module = fx.Options( internal.NewParserBuilder("ethereum/beacon", NewNativeParser).Build(), )
Functions ¶
func NewNativeParser ¶
func NewNativeParser(params internal.ParserParams, opts ...internal.ParserFactoryOption) (internal.NativeParser, error)
Types ¶
type BlobSidecar ¶
type BlobSidecar struct { Index Quantity `json:"index"` Blob Blob `json:"blob" validate:"required"` SignedBeaconBlockHeader *SignedBlockHeader `json:"signed_block_header" validate:"required"` KzgCommitment string `json:"kzg_commitment" validate:"required"` KzgProof string `json:"kzg_proof" validate:"required"` CommitmentInclusionProof []string `json:"kzg_commitment_inclusion_proof" validate:"required,dive"` }
BlobSidecar https://github.com/prysmaticlabs/prysm/blob/develop/beacon-chain/rpc/eth/blob/structs.go#L9
type Blobs ¶
type Blobs struct {
Data []*BlobSidecar `json:"data" validate:"required"`
}
type BlockAltair ¶
type BlockAltair struct { Slot Quantity `json:"slot"` ProposerIndex Quantity `json:"proposer_index"` ParentRoot string `json:"parent_root" validate:"required"` StateRoot string `json:"state_root" validate:"required"` Body *BlockBodyAltair `json:"body" validate:"required"` }
type BlockBellatrix ¶
type BlockBellatrix struct { Slot Quantity `json:"slot"` ProposerIndex Quantity `json:"proposer_index"` ParentRoot string `json:"parent_root" validate:"required"` StateRoot string `json:"state_root" validate:"required"` Body *BlockBodyBellatrix `json:"body" validate:"required"` }
type BlockBodyAltair ¶
type BlockBodyBellatrix ¶
type BlockBodyBellatrix struct { RandaoReveal string `json:"randao_reveal" validate:"required"` Eth1Data *Eth1Data `json:"eth1_data" validate:"required"` Graffiti string `json:"graffiti" validate:"required"` ExecutionPayload *ExecutionPayloadBellatrix `json:"execution_payload" validate:"required"` }
type BlockBodyCapella ¶
type BlockBodyCapella struct { RandaoReveal string `json:"randao_reveal" validate:"required"` Eth1Data *Eth1Data `json:"eth1_data" validate:"required"` Graffiti string `json:"graffiti" validate:"required"` ExecutionPayload *ExecutionPayloadCapella `json:"execution_payload" validate:"required"` }
type BlockBodyDeneb ¶
type BlockBodyDeneb struct { RandaoReveal string `json:"randao_reveal" validate:"required"` Eth1Data *Eth1Data `json:"eth1_data" validate:"required"` Graffiti string `json:"graffiti" validate:"required"` ExecutionPayload *ExecutionPayloadDeneb `json:"execution_payload" validate:"required"` BlobKzgCommitments []string `json:"blob_kzg_commitments" validate:"required,dive"` }
type BlockBodyPhase0 ¶
type BlockCapella ¶
type BlockCapella struct { Slot Quantity `json:"slot"` ProposerIndex Quantity `json:"proposer_index"` ParentRoot string `json:"parent_root" validate:"required"` StateRoot string `json:"state_root" validate:"required"` Body *BlockBodyCapella `json:"body" validate:"required"` }
type BlockDeneb ¶
type BlockDeneb struct { Slot Quantity `json:"slot"` ProposerIndex Quantity `json:"proposer_index"` ParentRoot string `json:"parent_root" validate:"required"` StateRoot string `json:"state_root" validate:"required"` Body *BlockBodyDeneb `json:"body" validate:"required"` }
type BlockHeader ¶
type BlockHeader struct {
Data *SignedBlockHeaderContainer `json:"data" validate:"required"`
}
type BlockHeaderMessage ¶
type BlockPhase0 ¶
type BlockPhase0 struct { Slot Quantity `json:"slot"` ProposerIndex Quantity `json:"proposer_index"` ParentRoot string `json:"parent_root" validate:"required"` StateRoot string `json:"state_root" validate:"required"` Body *BlockBodyPhase0 `json:"body" validate:"required"` }
type BlockResponseLit ¶
type BlockResponseLit struct { Version string `json:"version" validate:"required"` Data json.RawMessage `json:"data" validate:"required"` }
type Eth1Data ¶
type Eth1Data struct { DepositRoot string `json:"deposit_root" validate:"required"` DepositCount string `json:"deposit_count" validate:"required"` BlockHash string `json:"block_hash" validate:"required"` }
TODO: Migrate to the struct types defined in prysmaticlabs/prysm repo
type ExecutionPayloadBellatrix ¶
type ExecutionPayloadBellatrix struct { ParentHash string `json:"parent_hash" validate:"required"` FeeRecipient string `json:"fee_recipient" validate:"required"` StateRoot string `json:"state_root" validate:"required"` ReceiptsRoot string `json:"receipts_root" validate:"required"` LogsBloom string `json:"logs_bloom" validate:"required"` PrevRandao string `json:"prev_randao" validate:"required"` BlockNumber Quantity `json:"block_number"` GasLimit Quantity `json:"gas_limit"` GasUsed Quantity `json:"gas_used"` Timestamp Quantity `json:"timestamp" validate:"required_with=BlockNumber"` ExtraData string `json:"extra_data" validate:"required"` BaseFeePerGas string `json:"base_fee_per_gas" validate:"required"` BlockHash string `json:"block_hash" validate:"required"` Transactions []ExecutionTransaction `json:"transactions" validate:"required"` }
type ExecutionPayloadCapella ¶
type ExecutionPayloadCapella struct { ParentHash string `json:"parent_hash" validate:"required"` FeeRecipient string `json:"fee_recipient" validate:"required"` StateRoot string `json:"state_root" validate:"required"` ReceiptsRoot string `json:"receipts_root" validate:"required"` LogsBloom string `json:"logs_bloom" validate:"required"` PrevRandao string `json:"prev_randao" validate:"required"` BlockNumber Quantity `json:"block_number"` GasLimit Quantity `json:"gas_limit"` GasUsed Quantity `json:"gas_used"` Timestamp Quantity `json:"timestamp" validate:"required_with=BlockNumber"` ExtraData string `json:"extra_data" validate:"required"` BaseFeePerGas string `json:"base_fee_per_gas" validate:"required"` BlockHash string `json:"block_hash" validate:"required"` Transactions []ExecutionTransaction `json:"transactions" validate:"required"` Withdrawals []*Withdrawal `json:"withdrawals" validate:"required,dive"` }
type ExecutionPayloadDeneb ¶
type ExecutionPayloadDeneb struct { ParentHash string `json:"parent_hash" validate:"required"` FeeRecipient string `json:"fee_recipient" validate:"required"` StateRoot string `json:"state_root" validate:"required"` ReceiptsRoot string `json:"receipts_root" validate:"required"` LogsBloom string `json:"logs_bloom" validate:"required"` PrevRandao string `json:"prev_randao" validate:"required"` BlockNumber Quantity `json:"block_number"` GasLimit Quantity `json:"gas_limit"` GasUsed Quantity `json:"gas_used"` Timestamp Quantity `json:"timestamp" validate:"required_with=BlockNumber"` ExtraData string `json:"extra_data" validate:"required"` BaseFeePerGas string `json:"base_fee_per_gas" validate:"required"` BlobGasUsed Quantity `json:"blob_gas_used"` ExcessBlobGas Quantity `json:"excess_blob_gas"` BlockHash string `json:"block_hash" validate:"required"` Transactions []ExecutionTransaction `json:"transactions" validate:"required"` Withdrawals []*Withdrawal `json:"withdrawals" validate:"required,dive"` }
type ExecutionTransaction ¶
type ExecutionTransaction []byte
func (ExecutionTransaction) MarshalJSON ¶
func (t ExecutionTransaction) MarshalJSON() ([]byte, error)
func (*ExecutionTransaction) UnmarshalJSON ¶
func (t *ExecutionTransaction) UnmarshalJSON(input []byte) error
type SignedBlockAltair ¶
type SignedBlockAltair struct { Message *BlockAltair `json:"message" validate:"required"` Signature string `json:"signature" validate:"required"` }
SignedBlockAltair https://github.com/prysmaticlabs/prysm/blob/76fec1799e4a8d16dbd453f1ffb595262994221d/beacon-chain/rpc/eth/shared/structs_blocks.go#L27
type SignedBlockBellatrix ¶
type SignedBlockBellatrix struct { Message *BlockBellatrix `json:"message" validate:"required"` Signature string `json:"signature" validate:"required"` }
SignedBlockBellatrix https://github.com/prysmaticlabs/prysm/blob/76fec1799e4a8d16dbd453f1ffb595262994221d/beacon-chain/rpc/eth/shared/structs_blocks.go#L52
type SignedBlockCapella ¶
type SignedBlockCapella struct { Message *BlockCapella `json:"message" validate:"required"` Signature string `json:"signature" validate:"required"` }
type SignedBlockDeneb ¶
type SignedBlockDeneb struct { Message *BlockDeneb `json:"message" validate:"required"` Signature string `json:"signature" validate:"required"` }
type SignedBlockHeader ¶
type SignedBlockHeader struct { Message *BlockHeaderMessage `json:"message" validate:"required"` Signature string `json:"signature" validate:"required"` }
type SignedBlockHeaderContainer ¶
type SignedBlockHeaderContainer struct { Header *SignedBlockHeader `json:"header" validate:"required"` Root string `json:"root" validate:"required"` }
type SignedBlockPhase0 ¶
type SignedBlockPhase0 struct { Message *BlockPhase0 `json:"message" validate:"required"` Signature string `json:"signature" validate:"required"` }
Click to show internal directories.
Click to hide internal directories.