pub struct ReviveQueryApi<'api> { /* private fields */ }Implementations§
Source§impl<'api> ReviveQueryApi<'api>
impl<'api> ReviveQueryApi<'api>
Sourcepub async fn pristine_code(&self, key_0: H256) -> Result<Option<Vec<u8>>>
pub async fn pristine_code(&self, key_0: H256) -> Result<Option<Vec<u8>>>
A mapping from a contract’s code hash to its code.
The code’s size is bounded by [crate::limits::BLOB_BYTES] for PVM and
[revm::primitives::eip170::MAX_CODE_SIZE] for EVM bytecode.
Sourcepub async fn code_info_of(&self, key_0: H256) -> Result<Option<CodeInfo>>
pub async fn code_info_of(&self, key_0: H256) -> Result<Option<CodeInfo>>
A mapping from a contract’s code hash to its code info.
Sourcepub async fn account_info_of(&self, key_0: H160) -> Result<Option<AccountInfo>>
pub async fn account_info_of(&self, key_0: H160) -> Result<Option<AccountInfo>>
The data associated to a contract or externally owned account.
Sourcepub async fn immutable_data_of(&self, key_0: H160) -> Result<Option<Vec<u8>>>
pub async fn immutable_data_of(&self, key_0: H160) -> Result<Option<Vec<u8>>>
The immutable data associated with a given account.
Sourcepub async fn deletion_queue(&self, key_0: u32) -> Result<Option<Vec<u8>>>
pub async fn deletion_queue(&self, key_0: u32) -> Result<Option<Vec<u8>>>
Evicted contracts that await child trie deletion.
Child trie deletion is a heavy operation depending on the amount of storage items
stored in said trie. Therefore this operation is performed lazily in on_idle.
Sourcepub async fn deletion_queue_counter(&self) -> Result<DeletionQueueManager>
pub async fn deletion_queue_counter(&self) -> Result<DeletionQueueManager>
A pair of monotonic counters used to track the latest contract marked for deletion and the latest deleted contract in queue.
Sourcepub async fn original_account(&self, key_0: H160) -> Result<Option<AccountId>>
pub async fn original_account(&self, key_0: H160) -> Result<Option<AccountId>>
Map a Ethereum address to its original AccountId32.
When deriving a H160 from an AccountId32 we use a hash function. In order to
reconstruct the original account we need to store the reverse mapping here.
Register your AccountId32 using [Pallet::map_account] in order to
use it with this pallet.
Sourcepub async fn ethereum_block(&self) -> Result<Block>
pub async fn ethereum_block(&self) -> Result<Block>
The current Ethereum block that is stored in the on_finalize method.
§Note
This could be further optimized into the future to store only the minimum information needed to reconstruct the Ethereum block at the RPC level.
Since the block is convenient to have around, and the extra details are capped by a few hashes and the vector of transaction hashes, we store the block here.
Sourcepub async fn block_hash(&self, key_0: u32) -> Result<H256>
pub async fn block_hash(&self, key_0: u32) -> Result<H256>
Mapping for block number and hashes.
The maximum number of elements stored is capped by the block hash count BLOCK_HASH_COUNT.
Sourcepub async fn receipt_info_data(&self) -> Result<Vec<ReceiptGasInfo>>
pub async fn receipt_info_data(&self) -> Result<Vec<ReceiptGasInfo>>
The details needed to reconstruct the receipt info offchain.
This contains valuable information about the gas used by the transaction.
NOTE: The item is unbound and should therefore never be read on chain. It could otherwise inflate the PoV size of a block.
Sourcepub async fn eth_block_builder_ir(&self) -> Result<EthereumBlockBuilderIR>
pub async fn eth_block_builder_ir(&self) -> Result<EthereumBlockBuilderIR>
Incremental ethereum block builder.
Sourcepub async fn eth_block_builder_first_values(
&self,
) -> Result<Option<(Vec<u8>, Vec<u8>)>>
pub async fn eth_block_builder_first_values( &self, ) -> Result<Option<(Vec<u8>, Vec<u8>)>>
The first transaction and receipt of the ethereum block.
These values are moved out of the EthBlockBuilderIR to avoid serializing and
deserializing them on every transaction. Instead, they are loaded when needed.
Sourcepub async fn debug_settings_of(&self) -> Result<DebugSettings>
pub async fn debug_settings_of(&self) -> Result<DebugSettings>
Debugging settings that can be configured when DebugEnabled config is true.
Trait Implementations§
Source§impl<'api> Clone for ReviveQueryApi<'api>
impl<'api> Clone for ReviveQueryApi<'api>
Source§fn clone(&self) -> ReviveQueryApi<'api>
fn clone(&self) -> ReviveQueryApi<'api>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl<'api> Freeze for ReviveQueryApi<'api>
impl<'api> !RefUnwindSafe for ReviveQueryApi<'api>
impl<'api> Send for ReviveQueryApi<'api>
impl<'api> Sync for ReviveQueryApi<'api>
impl<'api> Unpin for ReviveQueryApi<'api>
impl<'api> UnsafeUnpin for ReviveQueryApi<'api>
impl<'api> !UnwindSafe for ReviveQueryApi<'api>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
fn into_tuple(self) -> Dest
Source§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
Source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
Source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
Source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T. Read moreSource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
Source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from.Source§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
Source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T.