Enum Error

Source
pub enum Error<T> {
Show 76 variants AffidavitAuthorNotFound, BlockPointsNotFound, BlockPointsExhausted, AffidavitNotFound, AffidavitsNotAllowed, NotAffidavitPeriod, AffidavitPeriodEnded, NotElectionPeriod, InvalidAffidavitPeriod, ElectionPeriodEnded, AuthorNotAffidavitOwner, SessionIdQueryFailed, ValidatorCannotChill, CandidateCannotChill, ElectedCannotChill, AffidavitKeyExists, NextAffidavitKeyExists, CannotSignAffidavitTxPayload, CannotSignValidateTxPayload, ExpectedToHoldActiveAffidavitKey, ExpectedToNotHoldActiveAffidavitKey, ExpectedToHoldNextAffidavitKey, ExpectedToHoldFinalizedNextAffidavitKey, OCWStorageDecisionHalt, CannotSubmitAffidavitTx, FailedToDeclareAffidavit, YetToElectAuthors, CannotSignElectionTxPayload, CannotSubmitElectionTx, ExtrinsicFailedToElectAuthors, SetNewAffidavitKeyFailed, SetNextAffidavitKeyFailed, ExpectedActiveAffidavitKeyPairNotFound, ExpectedNextAffidavitKeyPairNotFound, ValidationStopped, ActivelyValidating, ActivelyContestingElection, ActivelyWarmingForValidation, CannotDetermineAuthorActiveDuty, ActiveAfdtKeyNotYetFinalized, ActiveAfdtKeyFinalizedValueDecodeFail, ActiveAfdtKeySpeculativeHashDecodeFail, ActiveAfdtKeyFinalizedValueConcurrentMutation, ActiveAfdtKeySpeculativeHashConcurrentMutation, ActiveAfdtKeyFinalizedHangingValue, ActiveAfdtKeySpeculativeHangingHash, NextAfdtKeyNotYetFinalized, NextAfdtKeyFinalizedValueDecodeFail, NextAfdtKeySpeculativeHashDecodeFail, NextAfdtKeyFinalizedValueConcurrentMutation, NextAfdtKeySpeculativeHashConcurrentMutation, NextAfdtKeyFinalizedHangingValue, NextAfdtKeySpeculativeHangingHash, AffidavitTxAwaitingStatus, ProceedingToAffidavitSubmission, DeclareDuringNextAffidavitSession, DeclaredBeforeAffidavitPeriod, InvalidRotatedAffidavitKey, BlockAuthorNotFound, TriedElectingByNonBlockAuthor, AffidavitKeyForDeclaration, ValueCannotBeZero, InitAffidavitKeyRoutineSuccess, TryElectionRoutineSuccess, DeclarAffidavitRoutineSuccess, RotateAffidavitKeyRoutineSuccess, AuthorAlreadyChilling, ElectedButCannotReveal, DeclaredAffidavitNotFound, NotABlockAuthor, AfdtPublicKeyNotFound, AffidavitKeyPairNotFound, UnableToRevealElected, MaxOCWForksAttained, OCWForksNotEnabled, OCWForksInconsistent, // some variants omitted
}
Expand description

The Error enum of this pallet.

Variants§

§

AffidavitAuthorNotFound

The requested affidavit-ready author was not found.

This may happen if:

  • The author has not declared readiness for validation via
    validate extrinsic
  • The author has not declared affidavit keys for the upcoming session
  • The provided affidavit key is invalid
§

BlockPointsNotFound

Block production points for the specified author were not found.

§

BlockPointsExhausted

The author has exhausted the maximum allowed block production points for the current session.

Consider scaling the points type or constraining accumulation according to block production frequency.

§

AffidavitNotFound

The specified author has not submitted an affidavit for the upcoming session.

§

AffidavitsNotAllowed

Affidavit submissions are not enabled by configuration.

§

NotAffidavitPeriod

The affidavit submission window for the upcoming session has not started yet in the current session.

§

AffidavitPeriodEnded

The affidavit submission window for the upcoming session has ended.

The author must wait for the next session’s affidavit period.

§

NotElectionPeriod

The election period for the upcoming session has not started yet in the current session.

§

InvalidAffidavitPeriod

Invalid affidavit configuration.

AffidavitBeginsAt must be less than or equal to AffidavitEndsAt.

§

ElectionPeriodEnded

The election period for the upcoming session has ended.

The author must wait for the next session’s election period.

§

AuthorNotAffidavitOwner

The author has not registered ownership of the given affidavit key.

The key itself may be valid, but it does not belong to the author.

§

SessionIdQueryFailed

Failed to query the session ID for the author.

This usually indicates that the author does not hold an active author role.

§

ValidatorCannotChill

The author cannot chill immediately because they are an elected validator in the current session.

§

CandidateCannotChill

The author cannot chill immediately because they have submitted an affidavit and are a candidate for election.

§

ElectedCannotChill

The author cannot chill immediately because they are elected for the upcoming session.

§

AffidavitKeyExists

An active affidavit key already exists in the node’s local keystore.

No new key generation is required. If the node has a valid author role, it may already be ready for validate extrinsic.

Or if the author is ready to declare affidavit he is eligible to do so.

§

NextAffidavitKeyExists

A next-session affidavit key already exists in the node’s local keystore.

An affidavit declaration is ready to be posted and the key is ready for rotation.

§

CannotSignAffidavitTxPayload

Failed to sign the affidavit submission extrinsic payload using the active affidavit key.

§

CannotSignValidateTxPayload

Failed to construct and sign validate payload using the active affidavit key.

§

ExpectedToHoldActiveAffidavitKey

The node is expected to hold an active affidavit key, but none was found.

This indicates an inconsistency between earlier logic and current storage. The OCW will retry, but persistent failure suggests storage corruption.

§

ExpectedToNotHoldActiveAffidavitKey

The node is expected to not hold a active affidavit key in offchain storage, but it is available.

This indicates an inconsistency between earlier logic and current storage. The OCW will retry, but persistent failure suggests storage corruption.

§

ExpectedToHoldNextAffidavitKey

The node is expected to hold the next affidavit key during the key-rotation lifecycle, but it is missing.

This indicates an inconsistency between earlier logic and current storage. The OCW will retry, but persistent failure suggests storage corruption.

§

ExpectedToHoldFinalizedNextAffidavitKey

The node is expected to hold a finalized next affidavit key in offchain storage, but it is missing.

This indicates an inconsistency between earlier logic and current storage. The OCW will retry, but persistent failure suggests storage corruption.

§

OCWStorageDecisionHalt

An offchain storage operation failed.

The OCW halts further decisions for safety. Thus, re-runs in next block execution.

§

CannotSubmitAffidavitTx

The offchain worker failed to submit the affidavit extrinsic for unknown reasons.

§

FailedToDeclareAffidavit

Extrinsic submission for declaring an affidavit failed.

§

YetToElectAuthors

The election period for the upcoming session has not started yet.

§

CannotSignElectionTxPayload

Failed to sign the election extrinsic payload using the very recently rotated affidavit key.

Subsequent OCW executions at next block shall attempt again.

§

CannotSubmitElectionTx

The offchain worker failed to submit the election extrinsic for unknown reasons.

Subsequent OCW executions at next block shall attempt again.

§

ExtrinsicFailedToElectAuthors

Extrinsic submission for electing authors failed.

Subsequent OCW executions at next block shall attempt again.

§

SetNewAffidavitKeyFailed

A new affidavit key was generated but failed to persist locally.

The OCW will attempt another affidavit submission with a new key.

Persistent failure indicates storage corruption.

§

SetNextAffidavitKeyFailed

A new affidavit key for rotation and promotion as active affidavit key was generated but failed to persist locally.

The OCW will attempt another affidavit key-rotation with a new key.

Persistent failure indicates storage corruption.

§

ExpectedActiveAffidavitKeyPairNotFound

The active affidavit key is expected in the local keystore but could not be found.

Recovery requires regenerating the key under the configured KeyTypeId or chilling and restarting validation.

§

ExpectedNextAffidavitKeyPairNotFound

The rotated next affidavit key is expected in the local keystore but could not be found.

Recovery requires regenerating the key under the configured KeyTypeId or chilling and restarting validation.

§

ValidationStopped

Validation has been stopped due to affidavit key rotation failure, storage corruption, or failed submissions.

Manual re-validation via validate extrinsic is required.

§

ActivelyValidating

The author is actively validating in the current session.

The chill extrinsic is blocked until validation completes or the session ends.

§

ActivelyContestingElection

The author has submitted an affidavit and is actively participating in the election.

The author may chill if allowed or wait until the election concludes to check assigned duty.

§

ActivelyWarmingForValidation

The author has been elected for the upcoming session and is preparing for validation duties.

The chill extrinsic is blocked until duties complete.

§

CannotDetermineAuthorActiveDuty

The author is detected as active, but the specific duty cannot be determined due to inconsistent state.

The chill extrinsic may be attempted to resolve the state.

§

ActiveAfdtKeyNotYetFinalized

Offchain storage Active Affidavit Key is not yet finalized.

The key exists optimistically in fork-aware storage, but the block containing the finalized value may still be subject to re-org. Until finalized, speculative forks may observe different values.

Until it is finalized subsequent OCWs may result in this state.

§

ActiveAfdtKeyFinalizedValueDecodeFail

Failed to decode the finalized Active Affidavit Key public key value from persistent offchain storage.

Persistent failure indicates either storage corruption or a type mismatch. Manual intervention may be required. Clearing both fork-aware and persistent offchain storage allows OCWs to reinitialize the key lifecycle.

§

ActiveAfdtKeySpeculativeHashDecodeFail

Failed to decode the speculative hash of the Active Affidavit Key public key from fork-aware offchain storage.

This hash is used to reference the actual value stored in persistent offchain storage. Persistent failure indicates corruption or decoding inconsistencies. Clearing both fork-aware and persistent storage may resolve it.

§

ActiveAfdtKeyFinalizedValueConcurrentMutation

Concurrent mutation detected while accessing the finalized Active Affidavit Key public key value.

The operation will be retried by the OCW. Persistent failure indicates a potential deadlock or storage corruption. Clearing both fork-aware and persistent offchain storage may be required.

§

ActiveAfdtKeySpeculativeHashConcurrentMutation

Concurrent mutation detected while accessing the speculative hash of the Active Affidavit Key public key.

The hash resides in fork-aware storage while the actual value exists in persistent storage. The operation will be retried by the OCW. Persistent failure indicates storage corruption or a deadlock condition.

§

ActiveAfdtKeyFinalizedHangingValue

A finalized Active Affidavit Key public key value exists in persistent offchain storage without a corresponding fork-aware hash.

This results in a hanging value with no canonical reference. The persistent value will be cleared automatically. Any remaining fork-aware entries may also become hanging and will be cleaned on access.

§

ActiveAfdtKeySpeculativeHangingHash

A speculative fork-aware hash for the Active Affidavit Key exists without a corresponding persistent public key value.

Since the actual value cannot be recovered, the hanging speculative hash will be cleared automatically.

§

NextAfdtKeyNotYetFinalized

Offchain storage Next Affidavit Key is not yet finalized.

The key exists optimistically in fork-aware storage, but the block containing the finalized value may still be subject to re-org. Until finalized, speculative forks may observe different values.

Until it is finalized subsequent OCWs may result in this state.

§

NextAfdtKeyFinalizedValueDecodeFail

Failed to decode the finalized Next Affidavit Key public key value from persistent offchain storage.

Persistent failure indicates either storage corruption or a type mismatch. Manual intervention may be required. Clearing both fork-aware and persistent offchain storage allows OCWs to reinitialize the key lifecycle.

§

NextAfdtKeySpeculativeHashDecodeFail

Failed to decode the speculative hash of the Next Affidavit Key public key from fork-aware offchain storage.

This hash is used to reference the actual value stored in persistent offchain storage. Persistent failure indicates corruption or decoding inconsistencies. Clearing both fork-aware and persistent storage may resolve it.

§

NextAfdtKeyFinalizedValueConcurrentMutation

Concurrent mutation detected while accessing the finalized Next Affidavit Key public key value.

The operation will be retried by the OCW. Persistent failure indicates a potential deadlock or storage corruption. Clearing both fork-aware and persistent offchain storage may be required.

§

NextAfdtKeySpeculativeHashConcurrentMutation

Concurrent mutation detected while accessing the speculative hash of the Next Affidavit Key public key.

The hash resides in fork-aware storage while the actual value exists in persistent storage. The operation will be retried by the OCW. Persistent failure indicates storage corruption or a deadlock condition.

§

NextAfdtKeyFinalizedHangingValue

A finalized Next Affidavit Key public key value exists in persistent offchain storage without a corresponding fork-aware hash.

This results in a hanging value with no canonical reference. The persistent value will be cleared automatically. Any remaining fork-aware entries may also become hanging and will be cleaned on access.

§

NextAfdtKeySpeculativeHangingHash

A speculative fork-aware hash for the Next Affidavit Key exists without a corresponding persistent public key value.

Since the actual value cannot be recovered, the hanging speculative hash will be cleared automatically.

§

AffidavitTxAwaitingStatus

The affidavit submission extrinsic has been sent by the OCW and is awaiting on-chain state confirmation and key rotation.

§

ProceedingToAffidavitSubmission

Not an error.

Indicates that a neccessary election attempt was made early, so the OCW will proceed with affidavit submission instead.

§

DeclareDuringNextAffidavitSession

Affidavit submission was declined because the author has already rotated keys for the next session.

The author must wait for the next affidavit window.

§

DeclaredBeforeAffidavitPeriod

An affidavit is declared and the key is rotated before the current affidavit submission period itself.

§

InvalidRotatedAffidavitKey

The given affidavit key is not the recently rotated affidavit key, from the recently declared affidavit.

This implies the author have declared their affidavit and have rotated a new key for the the election after the upcoming election.

§

BlockAuthorNotFound

The requested block author of this very current block is not available.

§

TriedElectingByNonBlockAuthor

An election is attempted by a non-block author. Elections can only be processed by block-authors only in their authored blocks only.

§

AffidavitKeyForDeclaration

The active affidavit key is utilized for affidavit-declaration and not for processing election.

Election can only be processed by recently rotated affidavit key, which poses for the next affidavit-declaration session also.

All these can be valid only if the author started validating, else its a dormant affidavit key

§

ValueCannotBeZero

The provided value must be non-zero.

Returned when a parameter or input is required to be strictly greater than zero.

§

InitAffidavitKeyRoutineSuccess

Internal success signal for the affidavit key initialization routine.

Used to indicate successful execution of the initialization flow.

§

TryElectionRoutineSuccess

Internal success signal for the election execution routine.

Indicates that the election process completed successfully.

§

DeclarAffidavitRoutineSuccess

Internal success signal for the affidavit declaration routine.

Indicates that the affidavit has been successfully declared.

§

RotateAffidavitKeyRoutineSuccess

Internal success signal for the affidavit key rotation routine.

Indicates that the key rotation process completed successfully.

§

AuthorAlreadyChilling

The author is already in a chilled (inactive) state.

Returned when attempting to chill an author that is already inactive.

§

ElectedButCannotReveal

Authors are successfully elected, but cannot be revealed for some reasons unknown.

§

DeclaredAffidavitNotFound

Author declared an affidavit, but it could not be retrieved for reasons unknown.

§

NotABlockAuthor

The caller is not the current block author.

Returned when an operation requires block authorship, but the caller does not match the current block author.

§

AfdtPublicKeyNotFound

No public key matching the given affidavit identifier was found in the node-local keystore.

The key may have been lost, never generated on this node, or the identifier does not correspond to any locally held key pair.

§

AffidavitKeyPairNotFound

No affidavit key is registered for the author in any relevant future session scope (next session or next affidavit session).

The author has not called Pallet::validate or has already chilled.

§

UnableToRevealElected

The election result could not be revealed.

No election has been executed for the current session, or the underlying election manager returned no result.

§

MaxOCWForksAttained

The fork graph has reached the maximum number of concurrent forks.

No new sibling branch can be created until an existing fork is resolved or pruned. This indicates an unusually high degree of chain instability relative to the configured MAX_FORKS constant.

§

OCWForksNotEnabled

Fork-aware offchain storage was accessed before the fork graph was initialized via ForksHandler::start.

§

OCWForksInconsistent

The fork graph is in an inconsistent state.

An internal invariant was violated, such as a branch entry that cannot be decoded or a divider that references a non-existent branch. Persistent failure indicates offchain storage corruption.

Trait Implementations§

Source§

impl<T: Config> Debug for Error<T>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<T> Decode for Error<T>

Source§

fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy, ) -> Result<Self, Error>

Attempt to deserialise the value from input.
§

fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self>, ) -> Result<DecodeFinished, Error>
where I: Input,

Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
§

fn skip<I>(input: &mut I) -> Result<(), Error>
where I: Input,

Attempt to skip the encoded value from input. Read more
§

fn encoded_fixed_size() -> Option<usize>

Returns the fixed encoded size of the type. Read more
Source§

impl<T> Encode for Error<T>

Source§

fn size_hint(&self) -> usize

If possible give a hint of expected size of the encoding. Read more
Source§

fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy, )

Convert self to a slice and append it to the destination.
§

fn encode(&self) -> Vec<u8>

Convert self to an owned vector.
§

fn using_encoded<R, F>(&self, f: F) -> R
where F: FnOnce(&[u8]) -> R,

Convert self to a slice and then invoke the given closure with it.
§

fn encoded_size(&self) -> usize

Calculates the encoded size. Read more
Source§

impl<T: Config> From<Error<T>> for &'static str

Source§

fn from(err: Error<T>) -> &'static str

Converts to this type from the input type.
Source§

impl<T: Config> From<Error<T>> for DispatchError

Source§

fn from(err: Error<T>) -> Self

Converts to this type from the input type.
Source§

impl<T> PalletError for Error<T>

Source§

const MAX_ENCODED_SIZE: usize = 1usize

The maximum encoded size for the implementing type. Read more
Source§

impl<T> TypeInfo for Error<T>
where PhantomData<T>: TypeInfo + 'static, T: 'static,

Source§

type Identity = Error<T>

The type identifying for which type info is provided. Read more
Source§

fn type_info() -> Type

Returns the static type identifier for Self.
Source§

impl<T> DecodeWithMemTracking for Error<T>

Source§

impl<T> EncodeLike for Error<T>

Auto Trait Implementations§

§

impl<T> Freeze for Error<T>

§

impl<T> RefUnwindSafe for Error<T>
where T: RefUnwindSafe,

§

impl<T> Send for Error<T>
where T: Send,

§

impl<T> Sync for Error<T>
where T: Sync,

§

impl<T> Unpin for Error<T>
where T: Unpin,

§

impl<T> UnwindSafe for Error<T>
where T: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CheckedConversion for T

§

fn checked_from<T>(t: T) -> Option<Self>
where Self: TryFrom<T>,

Convert from a value of T into an equivalent instance of Option<Self>. Read more
§

fn checked_into<T>(self) -> Option<T>
where Self: TryInto<T>,

Consume self to return Some equivalent value of Option<T>. Read more
§

impl<T> DecodeAll for T
where T: Decode,

§

fn decode_all(input: &mut &[u8]) -> Result<T, Error>

Decode Self and consume all of the given input data. Read more
§

impl<T> DecodeLimit for T
where T: Decode,

§

fn decode_all_with_depth_limit( limit: u32, input: &mut &[u8], ) -> Result<T, Error>

Decode Self and consume all of the given input data. Read more
§

fn decode_with_depth_limit<I>(limit: u32, input: &mut I) -> Result<T, Error>
where I: Input,

Decode Self with the given maximum recursion depth and advance input by the number of bytes consumed. Read more
§

impl<T> DecodeWithMemLimit for T
where T: DecodeWithMemTracking,

§

fn decode_with_mem_limit<I>(input: &mut I, mem_limit: usize) -> Result<T, Error>
where I: Input,

Decode Self with the given maximum memory limit and advance input by the number of bytes consumed. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Hashable for T
where T: Codec,

§

fn blake2_128(&self) -> [u8; 16]

§

fn blake2_256(&self) -> [u8; 32]

§

fn blake2_128_concat(&self) -> Vec<u8>

§

fn twox_128(&self) -> [u8; 16]

§

fn twox_256(&self) -> [u8; 32]

§

fn twox_64_concat(&self) -> Vec<u8>

§

fn identity(&self) -> Vec<u8>

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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 more
§

impl<T, U> IntoKey<U> for T
where U: FromKey<T>,

§

fn into_key(self) -> U

Source§

impl<T, U, Tag> IntoTag<U, Tag> for T
where U: FromTag<T, Tag>, Tag: DiscriminantTag,

Source§

fn into_tag(self) -> U

§

impl<Src, Dest> IntoTuple<Dest> for Src
where Dest: FromTuple<Src>,

§

fn into_tuple(self) -> Dest

§

impl<T> IsType<T> for T

§

fn from_ref(t: &T) -> &T

Cast reference.
§

fn into_ref(&self) -> &T

Cast reference.
§

fn from_mut(t: &mut T) -> &mut T

Cast mutable reference.
§

fn into_mut(&mut self) -> &mut T

Cast mutable reference.
§

impl<T, Outer> IsWrappedBy<Outer> for T
where Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,

§

fn from_ref(outer: &Outer) -> &T

Get a reference to the inner from the outer.

§

fn from_mut(outer: &mut Outer) -> &mut T

Get a mutable reference to the inner from the outer.

§

impl<T> KeyedVec for T
where T: Codec,

§

fn to_keyed_vec(&self, prepend_key: &[u8]) -> Vec<u8>

Return an encoding of Self prepended by given slice.
Source§

impl<T, Time> Logging<Time> for T
where Time: Time,

Source§

const FALLBACK_TARGET: &'static str = "routine"

Default logging target if none is provided.

Most routines, especially offchain workers or background tasks, use this target for simplicity.

It allows a consistent place to look for routine logs without requiring every call to specify a target.

Note: This target is only a conveninence and may be somewhat vague. To ensure errors can still be traced accurately, the logged messages should include additional metadata (e.g., module name, error index, or contextual info) so that the source of the error can be identified even if the target is generic.

Source§

type Logger = DispatchError

The type taken and returned for logging.

We simply return the same [DispatchError] that was logged, so logging does not change control flow or error propagation.

DispatchError is used because in Substrate it encompasses all runtime errors - including module errors, token errors, arithmetic issues, and transactional boundaries - making it the universal substrate-side error representation.

Source§

type Level = LogLevel

The log level type.

We use the LogLevel enum to standardize severity levels (Info, Warn, Error, Debug) across all routine logs.

Source§

fn log( level: <T as Logging<Time>>::Level, err: &<T as Logging<Time>>::Logger, timestamp: Time, target: Option<&str>, fmt: Option<fn(Time, &<T as Logging<Time>>::Level, &str, &str) -> String>, ) -> <T as Logging<Time>>::Logger

Core logging function that all helpers delegate to. Read more
Source§

fn info( err: &Self::Logger, timestamp: Timestamp, target: Option<&str>, fmt: Option<fn(Timestamp, &Self::Level, &str, &str) -> String>, ) -> Self::Logger
where Self: Sized,

Logs an info-level message. Read more
Source§

fn warn( err: &Self::Logger, timestamp: Timestamp, target: Option<&str>, fmt: Option<fn(Timestamp, &Self::Level, &str, &str) -> String>, ) -> Self::Logger
where Self: Sized,

Logs a warning-level message. Read more
Source§

fn error( err: &Self::Logger, timestamp: Timestamp, target: Option<&str>, fmt: Option<fn(Timestamp, &Self::Level, &str, &str) -> String>, ) -> Self::Logger
where Self: Sized,

Logs an error-level message. Read more
Source§

fn debug( err: &Self::Logger, timestamp: Timestamp, target: Option<&str>, fmt: Option<fn(Timestamp, &Self::Level, &str, &str) -> String>, ) -> Self::Logger
where Self: Sized,

Logs a debug-level message. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
§

impl<T> SaturatedConversion for T

§

fn saturated_from<T>(t: T) -> Self
where Self: UniqueSaturatedFrom<T>,

Convert from a value of T into an equivalent instance of Self. Read more
§

fn saturated_into<T>(self) -> T
where Self: UniqueSaturatedInto<T>,

Consume self to return an equivalent value of T. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T, U> TryIntoKey<U> for T
where U: TryFromKey<T>,

§

type Error = <U as TryFromKey<T>>::Error

§

fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>

§

impl<S, T> UncheckedInto<T> for S
where T: UncheckedFrom<S>,

§

fn unchecked_into(self) -> T

The counterpart to unchecked_from.
§

impl<T, S> UniqueSaturatedInto<T> for S
where T: Bounded, S: TryInto<T>,

§

fn unique_saturated_into(self) -> T

Consume self to return an equivalent value of T.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithPostDispatchInfo for T
where T: Into<DispatchError>,

§

fn with_weight( self, actual_weight: Weight, ) -> DispatchErrorWithPostInfo<PostDispatchInfo>

Call this on your modules custom errors type in order to return a custom weight on error. Read more
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<S> Codec for S
where S: Decode + Encode,

Source§

impl<Provider, Discriminant, T> DelegateVirtualDynBound<Provider, Discriminant> for T
where Provider: VirtualDynBound<Discriminant>, Discriminant: DiscriminantTag,

Source§

impl<Provider, Discriminant, T> DelegateVirtualStaticBound<Provider, Discriminant> for T
where Provider: VirtualStaticBound<Discriminant>, Discriminant: DiscriminantTag,

§

impl<T> EncodeLike<&&T> for T
where T: Encode,

§

impl<T> EncodeLike<&T> for T
where T: Encode,

§

impl<T> EncodeLike<&mut T> for T
where T: Encode,

§

impl<T> EncodeLike<Arc<T>> for T
where T: Encode,

§

impl<T> EncodeLike<Box<T>> for T
where T: Encode,

§

impl<T> EncodeLike<Rc<T>> for T
where T: Encode,

§

impl<S> FullCodec for S
where S: Decode + FullEncode,

§

impl<S> FullEncode for S
where S: Encode + EncodeLike,

§

impl<T> JsonSchemaMaybe for T

§

impl<T> MaybeDebug for T
where T: Debug,

§

impl<T> MaybeRefUnwindSafe for T
where T: RefUnwindSafe,

Source§

impl<T> MetaAware for T
where T: TypeInfo + Debug,

Source§

impl<T> Probe for T
where T: Encode + Debug + ?Sized,

Source§

impl<T> RuntimeEnum for T
where T: FullCodec + TypeInfo + Debug,

Source§

impl<T> RuntimeError for T
where T: RuntimeEnum + 'static + Into<DispatchError>,

§

impl<T> StaticTypeInfo for T
where T: TypeInfo + 'static,