pub type EthereumBeaconClient = Pallet<Runtime>;
Aliased Type§
struct EthereumBeaconClient(/* private fields */);
Implementations
Source§impl<T> Pallet<T>where
T: Config,
impl<T> Pallet<T>where
T: Config,
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> Pallet<T>where
T: Config,
impl<T> Pallet<T>where
T: Config,
Sourcepub fn initial_checkpoint_root() -> H256
pub fn initial_checkpoint_root() -> H256
An auto-generated getter for InitialCheckpointRoot
.
Source§impl<T> Pallet<T>where
T: Config,
impl<T> Pallet<T>where
T: Config,
Sourcepub fn latest_finalized_block_root() -> H256
pub fn latest_finalized_block_root() -> H256
An auto-generated getter for LatestFinalizedBlockRoot
.
Source§impl<T> Pallet<T>where
T: Config,
impl<T> Pallet<T>where
T: Config,
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> Pallet<T>where
T: Config,
impl<T> Pallet<T>where
T: Config,
Sourcepub fn validators_root() -> H256
pub fn validators_root() -> H256
An auto-generated getter for ValidatorsRoot
.
Source§impl<T> Pallet<T>where
T: Config,
impl<T> Pallet<T>where
T: Config,
Sourcepub fn operating_mode() -> BasicOperatingMode
pub fn operating_mode() -> BasicOperatingMode
An auto-generated getter for OperatingMode
.
Source§impl<T> Pallet<T>where
T: Config,
impl<T> Pallet<T>where
T: Config,
Sourcepub fn force_checkpoint(
origin: <T as Config>::RuntimeOrigin,
update: Box<CheckpointUpdate<snowbridge_pallet_ethereum_client::::types::CheckpointUpdate::{constant#0}>>,
) -> Result<(), DispatchError>
pub fn force_checkpoint( origin: <T as Config>::RuntimeOrigin, update: Box<CheckpointUpdate<snowbridge_pallet_ethereum_client::::types::CheckpointUpdate::{constant#0}>>, ) -> Result<(), DispatchError>
Used for pallet initialization and light client resetting. Needs to be called by the root origin.
Sourcepub fn submit(
origin: <T as Config>::RuntimeOrigin,
update: Box<Update<snowbridge_pallet_ethereum_client::::types::Update::{constant#0}, snowbridge_pallet_ethereum_client::::types::Update::{constant#1}>>,
) -> Result<PostDispatchInfo, DispatchErrorWithPostInfo<PostDispatchInfo>>
pub fn submit( origin: <T as Config>::RuntimeOrigin, update: Box<Update<snowbridge_pallet_ethereum_client::::types::Update::{constant#0}, snowbridge_pallet_ethereum_client::::types::Update::{constant#1}>>, ) -> Result<PostDispatchInfo, DispatchErrorWithPostInfo<PostDispatchInfo>>
Submits a new finalized beacon header update. The update may contain the next sync committee.
Sourcepub fn set_operating_mode(
origin: <T as Config>::RuntimeOrigin,
mode: BasicOperatingMode,
) -> Result<(), DispatchError>
pub fn set_operating_mode( origin: <T as Config>::RuntimeOrigin, mode: BasicOperatingMode, ) -> Result<(), DispatchError>
Halt or resume all pallet operations. May only be called by root.
Source§impl<T> Pallet<T>where
T: Config,
impl<T> Pallet<T>where
T: Config,
Sourcepub fn store_finalized_header(
header: BeaconHeader,
block_roots_root: H256,
) -> Result<(), DispatchError>
pub fn store_finalized_header( header: BeaconHeader, block_roots_root: H256, ) -> Result<(), DispatchError>
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: &[PublicKey],
participant: bool,
) -> Vec<PublicKey>
pub fn find_pubkeys( sync_committee_bits: &[u8], sync_committee_pubkeys: &[PublicKey], participant: bool, ) -> Vec<PublicKey>
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> BeforeAllRuntimeMigrations for Pallet<T>where
T: Config,
impl<T> BeforeAllRuntimeMigrations for Pallet<T>where
T: Config,
Source§fn before_all_runtime_migrations() -> Weight
fn before_all_runtime_migrations() -> Weight
Source§impl<T> Benchmarking for Pallet<T>
impl<T> Benchmarking for Pallet<T>
Source§fn benchmarks(extra: bool) -> Vec<BenchmarkMetadata>
fn benchmarks(extra: bool) -> Vec<BenchmarkMetadata>
Source§fn run_benchmark(
extrinsic: &[u8],
c: &[(BenchmarkParameter, u32)],
whitelist: &[TrackedStorageKey],
verify: bool,
internal_repeats: u32,
) -> Result<Vec<BenchmarkResult>, BenchmarkError>
fn run_benchmark( extrinsic: &[u8], c: &[(BenchmarkParameter, u32)], whitelist: &[TrackedStorageKey], verify: bool, internal_repeats: u32, ) -> Result<Vec<BenchmarkResult>, BenchmarkError>
Source§impl<T> DispatchViewFunction for Pallet<T>where
T: Config,
impl<T> DispatchViewFunction for Pallet<T>where
T: Config,
fn dispatch_view_function<O>(
id: &ViewFunctionId,
input: &mut &[u8],
output: &mut O,
) -> Result<(), ViewFunctionDispatchError>where
O: Output,
Source§impl<T> GetStorageVersion for Pallet<T>where
T: Config,
impl<T> GetStorageVersion for Pallet<T>where
T: Config,
Source§fn in_code_storage_version() -> <Pallet<T> as GetStorageVersion>::InCodeStorageVersion
fn in_code_storage_version() -> <Pallet<T> as GetStorageVersion>::InCodeStorageVersion
storage_version
attribute, or
NoStorageVersionSet
if the attribute is missing.Source§fn on_chain_storage_version() -> StorageVersion
fn on_chain_storage_version() -> StorageVersion
Source§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> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
impl<T> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
Source§fn on_initialize(_n: BlockNumber) -> Weight
fn on_initialize(_n: BlockNumber) -> Weight
Source§fn on_finalize(_n: BlockNumber)
fn on_finalize(_n: BlockNumber)
Source§fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
Hooks::on_finalize
). Read moreSource§fn on_poll(_n: BlockNumber, _weight: &mut WeightMeter)
fn on_poll(_n: BlockNumber, _weight: &mut WeightMeter)
Source§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
Executive
pallet. Read moreSource§fn try_state(_n: BlockNumber) -> Result<(), DispatchError>
fn try_state(_n: BlockNumber) -> Result<(), DispatchError>
Source§fn pre_upgrade() -> Result<Vec<u8>, DispatchError>
fn pre_upgrade() -> Result<Vec<u8>, DispatchError>
Source§fn post_upgrade(_state: Vec<u8>) -> Result<(), DispatchError>
fn post_upgrade(_state: Vec<u8>) -> Result<(), DispatchError>
Source§fn offchain_worker(_n: BlockNumber)
fn offchain_worker(_n: BlockNumber)
Source§fn integrity_test()
fn integrity_test()
Source§impl<T> IntegrityTest for Pallet<T>where
T: Config,
impl<T> IntegrityTest for Pallet<T>where
T: Config,
Source§impl<T> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
impl<T> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
Source§impl<T> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
impl<T> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
Source§fn on_finalize(
n: <<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number,
)
fn on_finalize( n: <<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number, )
Hooks::on_finalize
.Source§impl<T> OnGenesis for Pallet<T>where
T: Config,
impl<T> OnGenesis for Pallet<T>where
T: Config,
Source§fn on_genesis()
fn on_genesis()
Source§impl<T> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
impl<T> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
Source§impl<T> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
impl<T> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
Source§fn on_initialize(
n: <<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number,
) -> Weight
fn on_initialize( n: <<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number, ) -> Weight
Hooks::on_initialize
.Source§impl<T> OnPoll<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
impl<T> OnPoll<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
Source§impl<T> OnRuntimeUpgrade for Pallet<T>where
T: Config,
impl<T> OnRuntimeUpgrade for Pallet<T>where
T: Config,
Source§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
Source§fn pre_upgrade() -> Result<Vec<u8>, DispatchError>
fn pre_upgrade() -> Result<Vec<u8>, DispatchError>
Hooks::pre_upgrade
.Source§fn post_upgrade(state: Vec<u8>) -> Result<(), DispatchError>
fn post_upgrade(state: Vec<u8>) -> Result<(), DispatchError>
Hooks::post_upgrade
.Source§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> PalletInfoAccess for Pallet<T>where
T: Config,
impl<T> PalletInfoAccess for Pallet<T>where
T: Config,
Source§fn module_name() -> &'static str
fn module_name() -> &'static str
Source§fn crate_version() -> CrateVersion
fn crate_version() -> CrateVersion
Source§impl<T> PalletsInfoAccess for Pallet<T>where
T: Config,
impl<T> PalletsInfoAccess for Pallet<T>where
T: Config,
Source§impl<T> StorageInfoTrait for Pallet<T>where
T: Config,
impl<T> StorageInfoTrait for Pallet<T>where
T: Config,
fn storage_info() -> Vec<StorageInfo>
Source§impl<T> TryDecodeEntireStorage for Pallet<T>where
T: Config,
impl<T> TryDecodeEntireStorage for Pallet<T>where
T: Config,
Source§fn try_decode_entire_state() -> Result<usize, Vec<TryDecodeEntireStorageError>>
fn try_decode_entire_state() -> Result<usize, Vec<TryDecodeEntireStorageError>>
Ok(bytes_decoded)
if success.Source§impl<T> TryState<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
impl<T> TryState<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T>where
T: Config,
Source§impl<T> Verifier for Pallet<T>where
T: Config,
impl<T> Verifier for Pallet<T>where
T: Config,
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> WhitelistedStorageKeys for Pallet<T>where
T: Config,
impl<T> WhitelistedStorageKeys for Pallet<T>where
T: Config,
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.