Crate frame_support
source · [−]Expand description
Support code for the runtime.
Re-exports
pub use serde;
pub use self::dispatch::Callable;
pub use self::dispatch::Parameter;
pub use self::storage::bounded_vec::BoundedSlice;
pub use self::storage::bounded_vec::BoundedVec;
pub use self::storage::migration;
pub use self::storage::weak_bounded_vec::WeakBoundedVec;
pub use self::storage::IterableStorageDoubleMap;
pub use self::storage::IterableStorageMap;
pub use self::storage::IterableStorageNMap;
pub use self::storage::StorageDoubleMap;
pub use self::storage::StorageMap;
pub use self::storage::StorageNMap;
pub use self::storage::StoragePrefixedMap;
pub use self::storage::StorageValue;
pub use sp_runtime;
Modules
Dispatch system. Contains a macro for defining runtime modules and generating values representing lazy module function calls.
Macro for declaring a module error.
Macros that define an Event types. Events can be used to easily report changes or conditions in your runtime to external entities like users, chain explorers, or dApps.
Some instance placeholder to be used in frame_support::pallet
attribute macro.
Prelude to be used alongside pallet macro, for ease of use.
Stuff to do with the runtime’s storage.
Traits and associated utilities for use in the FRAME environment.
Primitives for transaction weighting.
Macros
Assert an expression returns an error specified.
Assert an expression returns an error specified.
Assert an expression returns error with the given weight.
Evaluate an expression, assert it returns an expected Err
value and that
runtime storage has not been mutated (i.e. expression is a no-operation).
Panic if an expression doesn’t evaluate to Ok
.
Evaluate any expression and assert that runtime storage has not been mutated (i.e. expression is a storage no-operation).
Construct a runtime, with the given name and the given pallets.
Convert the current crate version into a CrateVersion
.
Declare an error type for a runtime module.
Implement the Event
for a module.
Declares a Module
struct and a Call
enum, which implements the dispatch logic.
Declares strongly-typed wrappers around codec-compatible types in storage.
Evaluate $x:expr
and if not true return Err($y:expr)
.
Return Err of the expression: return Err($expression);
.
Generate a new type alias for storage::types::StorageValue
,
storage::types::StorageMap
, storage::types::StorageDoubleMap
and storage::types::StorageNMap
.
Macro that inserts some tokens after the first match of some pattern.
Create a type which implements the Contains
trait for a particular type with syntax similar
to matches!
.
Macro for easily creating a new implementation of both the Get
and Contains
traits. Use
exactly as with parameter_types
, only the type must be Ord
.
Create new implementations of the Get
trait.
Print out a formatted message.
Structs
Hash storage keys with blake2 128
Hash storage keys with concat(blake2_128(key), key)
Hash storage keys with blake2 256
Store the key directly.
A pallet identifier. These are per pallet and should be stored in a registry somewhere.
Hash storage keys with concat(twox64(key), key)
Hash storage keys with twox 128
Hash storage keys with twox 256
Enums
Constants
A unified log target for support operations.
Traits
Trait for things which can be printed from the runtime.
Hasher to use to hash keys to insert to storage.
Hasher to use to hash keys to insert to storage.
Functions
Print out the debuggable type.
Print something that implements Printable
from the runtime.
Type Definitions
Consensus engine unique ID.
Attribute Macros
pallet
attribute macro allows to define a pallet to be used in construct_runtime!
.
Assert the annotated function is executed within a storage transaction.
Execute the annotated function in a new storage transaction.
Derive Macros
Derive Clone
but do not bound any generic.
Derive Debug
but do not bound any generic.
Derive Default
but do not bound any generic.
Derive PartialEq
but do not bound any generic.
Derive Debug
, if std
is enabled it uses frame_support::DebugNoBound
, if std
is not
enabled it just returns "<stripped>"
.
This behaviour is useful to prevent bloating the runtime WASM blob from unneeded code.