Module sp_runtime::traits[][src]

Expand description

Primitives for the runtime modules.

Structs

A lookup implementation returning the AccountId from a MultiAddress.

Input that adds infinite number of zero after wrapped input.

An error type that indicates that the origin is invalid.

Blake2-256 Hash implementation.

A structure that performs standard conversion using the standard Rust conversion traits.

A structure that performs identity conversion.

A lookup implementation returning the input value.

Keccak-256 Hash implementation.

An error that indicates that a lookup failed.

Input that adds infinite number of zero after wrapped input.

Traits

This type can be converted into and possibly from an AccountId (which itself is generic).

Means of signature verification of an application key.

An “executable” piece of information, used by the standard Substrate Executive in order to enact a piece of extrinsic information by marshalling and dispatching to a named function call.

A meta trait for arithmetic.

A meta trait for arithmetic. Same as AtLeast32Bit, but also bounded to be unsigned.

A “checkable” piece of information, used by the standard Substrate Executive in order to check the validity of a piece of extrinsic information, usually by verifying the signature. Implement for pieces of information that don’t require additional context in order to be checked.

Something which fulfills the abstract idea of a Substrate block. It has types for Extrinsic pieces of information as well as a Header.

Something that can convert a BlockId to a number or a hash.

Get current block number

Numbers which have upper and lower bounds

Something that can be checked for equality and printed out to a debug channel if bad.

A “checkable” piece of information, used by the standard Substrate Executive in order to check the validity of a piece of extrinsic information, usually by verifying the signature. Implement for pieces of information that require some additional context Context in order to be checked.

Performs addition that returns None instead of wrapping around on overflow.

Convenience type to work around the highly unergonomic syntax needed to invoke the functions of overloaded generic traits, in this case TryFrom and TryInto.

Performs division that returns None instead of panicking on division by zero and instead of wrapping around on underflow and overflow.

Performs multiplication that returns None instead of wrapping around on underflow or overflow.

Performs a left shift that returns None on shifts larger than the type width.

Performs a right shift that returns None on shifts larger than the type width.

Performs subtraction that returns None instead of wrapping around on underflow.

Trait for things that can be clear (have no bits set). For numeric types, essentially the same as Zero.

Extensible conversion trait. Generic over both source and destination types.

A lazy call (module function and argument values) that can be executed via its dispatch method.

Something that acts like an Extrinsic.

Implementor is an Extrinsic and provides metadata about this extrinsic.

A marker trait for something that knows the type of the node block.

A marker trait for something that knows the type of the runtime block.

Abstraction around hashing

Something which fulfills the abstract idea of a Substrate header. It has types for a Number, a Hash and a Hashing. It provides access to an extrinsics_root, state_root and parent_hash, as well as a digest and a block number.

Some type that is able to be collapsed into an account ID. It is not possible to recreate the original value from the account ID.

A trait implementing integer square root.

Determine if a MemberId is a valid member.

A lazy value.

Means of changing one type into another in a manner dependent on the source type.

A type that implements Display when in std environment.

A type that implements FromStr when in std environment.

A type that implements Hash when in std environment.

A type that implements MallocSizeOf.

A type that implements Serialize when in std environment.

A type that implements Serialize, DeserializeOwned and Debug when in std environment.

A type that can be used in runtime structures.

Defines a multiplicative identity element for Self.

Opaque data type that may be destructured into a series of raw byte slices (which represent individual keys).

Trait for things which can be printed from the runtime.

Convenience type to work around the highly unergonomic syntax needed to invoke the functions of overloaded generic traits, in this case SaturatedFrom and SaturatedInto.

Saturating arithmetic operations, returning maximum or minimum values instead of overflowing.

Multiply and divide by a number that isn’t necessarily the same type. Basically just the same as Mul and Div except it can be used for all basic numeric types.

Means by which a transaction may be extended. This type embodies both the data and the logic that should be additionally associated with the transaction. It should be plain old data.

A meta trait for all bit ops.

Means of changing one type into another in a manner dependent on the source type. This variant is different to Lookup in that it doesn’t (can cannot) require any context.

Just like From except that if the source value is too big to fit into the destination type then it’ll saturate the destination.

Just like Into except that if the source value is too big to fit into the destination type then it’ll saturate the destination.

Something that can validate unsigned extrinsics for the transaction pool.

Means of signature verification.

Defines an additive identity element for Self.

Type Definitions

Extract the digest type for a block.

Extract the digest item type for a block.

Shortcut to reference the Info type of a Dispatchable.

Extract the hashing type for a block.

Extract the number type for a block.

Shortcut to reference the PostInfo type of a Dispatchable.