pub type EthereumBeaconClient = Pallet<Test>;
Aliased Type§
struct EthereumBeaconClient(/* private fields */);
Implementations
Source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
Sourcepub fn verify_receipt_inclusion(
receipts_root: H256,
receipt_proof: &[Vec<u8>],
) -> Result<Receipt, VerificationError>
pub fn verify_receipt_inclusion( receipts_root: H256, receipt_proof: &[Vec<u8>], ) -> Result<Receipt, VerificationError>
Verifies that the receipt encoded in proof.data
is included in the block given by
proof.block_hash
.
Source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
Sourcepub fn initial_checkpoint_root() -> H256
pub fn initial_checkpoint_root() -> H256
An auto-generated getter for InitialCheckpointRoot
.
Source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
Sourcepub fn latest_finalized_block_root() -> H256
pub fn latest_finalized_block_root() -> H256
An auto-generated getter for LatestFinalizedBlockRoot
.
Source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
Sourcepub fn finalized_beacon_state<KArg>(k: KArg) -> Option<CompactBeaconState>where
KArg: EncodeLike<H256>,
pub fn finalized_beacon_state<KArg>(k: KArg) -> Option<CompactBeaconState>where
KArg: EncodeLike<H256>,
An auto-generated getter for FinalizedBeaconState
.
Source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
Sourcepub fn validators_root() -> H256
pub fn validators_root() -> H256
An auto-generated getter for ValidatorsRoot
.
Source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
Sourcepub fn operating_mode() -> BasicOperatingMode
pub fn operating_mode() -> BasicOperatingMode
An auto-generated getter for OperatingMode
.
Source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
Sourcepub fn force_checkpoint(
origin: OriginFor<T>,
update: Box<CheckpointUpdate>,
) -> DispatchResult
pub fn force_checkpoint( origin: OriginFor<T>, update: Box<CheckpointUpdate>, ) -> DispatchResult
Used for pallet initialization and light client resetting. Needs to be called by the root origin.
Sourcepub fn submit(
origin: OriginFor<T>,
update: Box<Update>,
) -> DispatchResultWithPostInfo
pub fn submit( origin: OriginFor<T>, update: Box<Update>, ) -> DispatchResultWithPostInfo
Submits a new finalized beacon header update. The update may contain the next sync committee.
Sourcepub fn set_operating_mode(
origin: OriginFor<T>,
mode: BasicOperatingMode,
) -> DispatchResult
pub fn set_operating_mode( origin: OriginFor<T>, mode: BasicOperatingMode, ) -> DispatchResult
Halt or resume all pallet operations. May only be called by root.
Source§impl<T: Config> Pallet<T>
impl<T: Config> Pallet<T>
Sourcepub fn store_finalized_header(
header: BeaconHeader,
block_roots_root: H256,
) -> DispatchResult
pub fn store_finalized_header( header: BeaconHeader, block_roots_root: H256, ) -> DispatchResult
Stores a compacted (slot and block roots root (hash of the block_roots
beacon state
field, used for ancestry proof)) beacon state in a ring buffer map, with the header root
as map key.
Sourcepub fn find_pubkeys(
sync_committee_bits: &[u8],
sync_committee_pubkeys: &[PublicKeyPrepared],
participant: bool,
) -> Vec<PublicKeyPrepared>
pub fn find_pubkeys( sync_committee_bits: &[u8], sync_committee_pubkeys: &[PublicKeyPrepared], participant: bool, ) -> Vec<PublicKeyPrepared>
Returns a vector of public keys that participated in the sync committee block signage. Sync committee bits is an array of 0s and 1s, 0 meaning the corresponding sync committee member did not participate in the vote, 1 meaning they participated. This method can find the absent or participating members, based on the participant parameter. participant = false will return absent participants, participant = true will return participating members.
Sourcepub fn signing_root(
header: &BeaconHeader,
validators_root: H256,
signature_slot: u64,
) -> Result<H256, DispatchError>
pub fn signing_root( header: &BeaconHeader, validators_root: H256, signature_slot: u64, ) -> Result<H256, DispatchError>
Calculates signing root for BeaconHeader. The signing root is used for the message value in BLS signature verification.
pub fn finalized_root_gindex_at_slot( slot: u64, fork_versions: ForkVersions, ) -> usize
pub fn current_sync_committee_gindex_at_slot( slot: u64, fork_versions: ForkVersions, ) -> usize
pub fn next_sync_committee_gindex_at_slot( slot: u64, fork_versions: ForkVersions, ) -> usize
pub fn block_roots_gindex_at_slot( slot: u64, fork_versions: ForkVersions, ) -> usize
pub fn execution_header_gindex() -> usize
Trait Implementations
Source§impl<T: Config> BeforeAllRuntimeMigrations for Pallet<T>
impl<T: Config> BeforeAllRuntimeMigrations for Pallet<T>
Source§fn before_all_runtime_migrations() -> Weight
fn before_all_runtime_migrations() -> Weight
Source§impl<T> Benchmarking for Pallet<T>where
T: Config + Config,
impl<T> Benchmarking for Pallet<T>where
T: Config + Config,
Source§impl<T: Config> GetStorageVersion for Pallet<T>
impl<T: Config> GetStorageVersion for Pallet<T>
Source§type InCodeStorageVersion = NoStorageVersionSet
type InCodeStorageVersion = NoStorageVersionSet
Source§fn in_code_storage_version() -> Self::InCodeStorageVersion
fn in_code_storage_version() -> Self::InCodeStorageVersion
storage_version
attribute, or
[NoStorageVersionSet
] if the attribute is missing.Source§fn on_chain_storage_version() -> StorageVersion
fn on_chain_storage_version() -> StorageVersion
§fn current_storage_version() -> Self::InCodeStorageVersion
fn current_storage_version() -> Self::InCodeStorageVersion
in_code_storage_version
and will be removed after March 2024.Self::current_storage_version
] instead. Read moreSource§impl<T: Config> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
§fn on_initialize(_n: BlockNumber) -> Weight
fn on_initialize(_n: BlockNumber) -> Weight
§fn on_finalize(_n: BlockNumber)
fn on_finalize(_n: BlockNumber)
§fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
Hooks::on_finalize
]). Read more§fn on_poll(_n: BlockNumber, _weight: &mut WeightMeter)
fn on_poll(_n: BlockNumber, _weight: &mut WeightMeter)
§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
Executive
pallet. Read more§fn try_state(_n: BlockNumber) -> Result<(), DispatchError>
fn try_state(_n: BlockNumber) -> Result<(), DispatchError>
§fn pre_upgrade() -> Result<Vec<u8>, DispatchError>
fn pre_upgrade() -> Result<Vec<u8>, DispatchError>
§fn post_upgrade(_state: Vec<u8>) -> Result<(), DispatchError>
fn post_upgrade(_state: Vec<u8>) -> Result<(), DispatchError>
§fn offchain_worker(_n: BlockNumber)
fn offchain_worker(_n: BlockNumber)
§fn integrity_test()
fn integrity_test()
Source§impl<T: Config> IntegrityTest for Pallet<T>
impl<T: Config> IntegrityTest for Pallet<T>
Source§fn integrity_test()
fn integrity_test()
Hooks::integrity_test
].Source§impl<T: Config> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
Source§fn offchain_worker(n: BlockNumberFor<T>)
fn offchain_worker(n: BlockNumberFor<T>)
Source§impl<T: Config> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
Source§fn on_finalize(n: BlockNumberFor<T>)
fn on_finalize(n: BlockNumberFor<T>)
Hooks::on_finalize
].Source§impl<T: Config> OnGenesis for Pallet<T>
impl<T: Config> OnGenesis for Pallet<T>
Source§fn on_genesis()
fn on_genesis()
Source§impl<T: Config> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
Source§impl<T: Config> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
Source§fn on_initialize(n: BlockNumberFor<T>) -> Weight
fn on_initialize(n: BlockNumberFor<T>) -> Weight
Hooks::on_initialize
].Source§impl<T: Config> OnPoll<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> OnPoll<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
Source§impl<T: Config> OnRuntimeUpgrade for Pallet<T>
impl<T: Config> OnRuntimeUpgrade for Pallet<T>
Source§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
Hooks::on_runtime_upgrade
].§fn try_on_runtime_upgrade(checks: bool) -> Result<Weight, DispatchError>
fn try_on_runtime_upgrade(checks: bool) -> Result<Weight, DispatchError>
pre_upgrade
->
on_runtime_upgrade
-> post_upgrade
hooks for a migration. Read moreSource§impl<T: Config> PalletInfoAccess for Pallet<T>
impl<T: Config> PalletInfoAccess for Pallet<T>
Source§fn module_name() -> &'static str
fn module_name() -> &'static str
Source§fn crate_version() -> CrateVersion
fn crate_version() -> CrateVersion
Source§impl<T: Config> TryState<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
impl<T: Config> TryState<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>
Source§impl<T: Config> Verifier for Pallet<T>
impl<T: Config> Verifier for Pallet<T>
Source§fn verify(event_log: &Log, proof: &Proof) -> Result<(), VerificationError>
fn verify(event_log: &Log, proof: &Proof) -> Result<(), VerificationError>
Verify a message by verifying the existence of the corresponding Ethereum log in a block. Returns the log if successful. The execution header containing the log is sent with the message. The beacon header containing the execution header is also sent with the message, to check if the header is an ancestor of a finalized header.
Source§impl<T: Config> WhitelistedStorageKeys for Pallet<T>
impl<T: Config> WhitelistedStorageKeys for Pallet<T>
Source§fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>
fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>
Vec<TrackedStorageKey>
indicating the storage keys that
should be whitelisted during benchmarking. This means that those keys
will be excluded from the benchmarking performance calculation.