pub struct StorageApi;
Implementations§
source§impl StorageApi
impl StorageApi
sourcepub fn pending_validation_code(
&self
) -> StaticStorageAddress<DecodeStaticType<Vec<u8>>, Yes, Yes, ()>
pub fn pending_validation_code( &self ) -> StaticStorageAddress<DecodeStaticType<Vec<u8>>, Yes, Yes, ()>
In case of a scheduled upgrade, this storage field contains the validation code to be applied.
As soon as the relay chain gives us the go-ahead signal, we will overwrite the :code
which will result the next block process with the new validation code. This concludes the upgrade process.
sourcepub fn new_validation_code(
&self
) -> StaticStorageAddress<DecodeStaticType<Vec<u8>>, Yes, (), ()>
pub fn new_validation_code( &self ) -> StaticStorageAddress<DecodeStaticType<Vec<u8>>, Yes, (), ()>
Validation code that is set by the parachain and is to be communicated to collator and consequently the relay-chain.
This will be cleared in on_initialize
of each new block if no other pallet already set
the value.
sourcepub fn validation_data(
&self
) -> StaticStorageAddress<DecodeStaticType<PersistedValidationData<H256, u32>>, Yes, (), ()>
pub fn validation_data( &self ) -> StaticStorageAddress<DecodeStaticType<PersistedValidationData<H256, u32>>, Yes, (), ()>
The [PersistedValidationData
] set for this block.
This value is expected to be set only once per block and it’s never stored
in the trie.
sourcepub fn did_set_validation_code(
&self
) -> StaticStorageAddress<DecodeStaticType<bool>, Yes, Yes, ()>
pub fn did_set_validation_code( &self ) -> StaticStorageAddress<DecodeStaticType<bool>, Yes, Yes, ()>
Were the validation data set to notify the relay chain?
sourcepub fn last_relay_chain_block_number(
&self
) -> StaticStorageAddress<DecodeStaticType<u32>, Yes, Yes, ()>
pub fn last_relay_chain_block_number( &self ) -> StaticStorageAddress<DecodeStaticType<u32>, Yes, Yes, ()>
The relay chain block number associated with the last parachain block.
sourcepub fn upgrade_restriction_signal(
&self
) -> StaticStorageAddress<DecodeStaticType<Option<UpgradeRestriction>>, Yes, Yes, ()>
pub fn upgrade_restriction_signal( &self ) -> StaticStorageAddress<DecodeStaticType<Option<UpgradeRestriction>>, Yes, Yes, ()>
An option which indicates if the relay-chain restricts signalling a validation code upgrade.
In other words, if this is Some
and [NewValidationCode
] is Some
then the produced
candidate will be invalid.
This storage item is a mirror of the corresponding value for the current parachain from the relay-chain. This value is ephemeral which means it doesn’t hit the storage. This value is set after the inherent.
sourcepub fn relay_state_proof(
&self
) -> StaticStorageAddress<DecodeStaticType<StorageProof>, Yes, (), ()>
pub fn relay_state_proof( &self ) -> StaticStorageAddress<DecodeStaticType<StorageProof>, Yes, (), ()>
The state proof for the last relay parent block.
This field is meant to be updated each block with the validation data inherent. Therefore,
before processing of the inherent, e.g. in on_initialize
this data may be stale.
This data is also absent from the genesis.
sourcepub fn relevant_messaging_state(
&self
) -> StaticStorageAddress<DecodeStaticType<MessagingStateSnapshot>, Yes, (), ()>
pub fn relevant_messaging_state( &self ) -> StaticStorageAddress<DecodeStaticType<MessagingStateSnapshot>, Yes, (), ()>
The snapshot of some state related to messaging relevant to the current parachain as per the relay parent.
This field is meant to be updated each block with the validation data inherent. Therefore,
before processing of the inherent, e.g. in on_initialize
this data may be stale.
This data is also absent from the genesis.
sourcepub fn host_configuration(
&self
) -> StaticStorageAddress<DecodeStaticType<AbridgedHostConfiguration>, Yes, (), ()>
pub fn host_configuration( &self ) -> StaticStorageAddress<DecodeStaticType<AbridgedHostConfiguration>, Yes, (), ()>
The parachain host configuration that was obtained from the relay parent.
This field is meant to be updated each block with the validation data inherent. Therefore,
before processing of the inherent, e.g. in on_initialize
this data may be stale.
This data is also absent from the genesis.
sourcepub fn last_dmq_mqc_head(
&self
) -> StaticStorageAddress<DecodeStaticType<MessageQueueChain>, Yes, Yes, ()>
pub fn last_dmq_mqc_head( &self ) -> StaticStorageAddress<DecodeStaticType<MessageQueueChain>, Yes, Yes, ()>
The last downward message queue chain head we have observed.
This value is loaded before and saved after processing inbound downward messages carried by the system inherent.
sourcepub fn last_hrmp_mqc_heads(
&self
) -> StaticStorageAddress<DecodeStaticType<KeyedVec<Id, MessageQueueChain>>, Yes, Yes, ()>
pub fn last_hrmp_mqc_heads( &self ) -> StaticStorageAddress<DecodeStaticType<KeyedVec<Id, MessageQueueChain>>, Yes, Yes, ()>
The message queue chain heads we have observed per each channel incoming channel.
This value is loaded before and saved after processing inbound downward messages carried by the system inherent.
sourcepub fn processed_downward_messages(
&self
) -> StaticStorageAddress<DecodeStaticType<u32>, Yes, Yes, ()>
pub fn processed_downward_messages( &self ) -> StaticStorageAddress<DecodeStaticType<u32>, Yes, Yes, ()>
Number of downward messages processed in a block.
This will be cleared in on_initialize
of each new block.
sourcepub fn hrmp_watermark(
&self
) -> StaticStorageAddress<DecodeStaticType<u32>, Yes, Yes, ()>
pub fn hrmp_watermark( &self ) -> StaticStorageAddress<DecodeStaticType<u32>, Yes, Yes, ()>
HRMP watermark that was set in a block.
This will be cleared in on_initialize
of each new block.
sourcepub fn hrmp_outbound_messages(
&self
) -> StaticStorageAddress<DecodeStaticType<Vec<OutboundHrmpMessage<Id>>>, Yes, Yes, ()>
pub fn hrmp_outbound_messages( &self ) -> StaticStorageAddress<DecodeStaticType<Vec<OutboundHrmpMessage<Id>>>, Yes, Yes, ()>
HRMP messages that were sent in a block.
This will be cleared in on_initialize
of each new block.
sourcepub fn upward_messages(
&self
) -> StaticStorageAddress<DecodeStaticType<Vec<Vec<u8>>>, Yes, Yes, ()>
pub fn upward_messages( &self ) -> StaticStorageAddress<DecodeStaticType<Vec<Vec<u8>>>, Yes, Yes, ()>
Upward messages that were sent in a block.
This will be cleared in on_initialize
of each new block.
sourcepub fn pending_upward_messages(
&self
) -> StaticStorageAddress<DecodeStaticType<Vec<Vec<u8>>>, Yes, Yes, ()>
pub fn pending_upward_messages( &self ) -> StaticStorageAddress<DecodeStaticType<Vec<Vec<u8>>>, Yes, Yes, ()>
Upward messages that are still pending and not yet send to the relay chain.
sourcepub fn announced_hrmp_messages_per_candidate(
&self
) -> StaticStorageAddress<DecodeStaticType<u32>, Yes, Yes, ()>
pub fn announced_hrmp_messages_per_candidate( &self ) -> StaticStorageAddress<DecodeStaticType<u32>, Yes, Yes, ()>
The number of HRMP messages we observed in on_initialize
and thus used that number for
announcing the weight of on_initialize
and on_finalize
.
sourcepub fn reserved_xcmp_weight_override(
&self
) -> StaticStorageAddress<DecodeStaticType<Weight>, Yes, (), ()>
pub fn reserved_xcmp_weight_override( &self ) -> StaticStorageAddress<DecodeStaticType<Weight>, Yes, (), ()>
The weight we reserve at the beginning of the block for processing XCMP messages. This overrides the amount set in the Config trait.
sourcepub fn reserved_dmp_weight_override(
&self
) -> StaticStorageAddress<DecodeStaticType<Weight>, Yes, (), ()>
pub fn reserved_dmp_weight_override( &self ) -> StaticStorageAddress<DecodeStaticType<Weight>, Yes, (), ()>
The weight we reserve at the beginning of the block for processing DMP messages. This overrides the amount set in the Config trait.
The next authorized upgrade, if there is one.
Auto Trait Implementations§
impl RefUnwindSafe for StorageApi
impl Send for StorageApi
impl Sync for StorageApi
impl Unpin for StorageApi
impl UnwindSafe for StorageApi
Blanket Implementations§
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where Self: TryInto<T>,
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,
self
to use its Display
implementation when
Debug
-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where &'a Self: for<'a> IntoIterator,
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>
§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere Self: Borrow<B>, B: 'a + ?Sized, R: 'a,
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R ) -> Rwhere Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere Self: AsRef<U>, U: 'a + ?Sized, R: 'a,
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere Self: AsMut<U>, U: 'a + ?Sized, R: 'a,
self
, then passes self.as_mut()
into the pipe
function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
T
. Read more§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere Self: Deref<Target = T>, T: ?Sized,
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere Self: DerefMut<Target = T> + Deref, T: ?Sized,
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
impl<T> TryConv for T
§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.