Trait pallet_revive::chain_extension::SysConfig
pub trait SysConfig: 'static + Eq + Clone {
Show 30 associated items
type RuntimeEvent: Parameter + Member + From<Event<Self>> + Debug + IsType<Self::RuntimeEvent>;
type BaseCallFilter: Contains<Self::RuntimeCall>;
type BlockWeights: Get<BlockWeights>;
type BlockLength: Get<BlockLength>;
type RuntimeOrigin: Into<Result<RawOrigin<Self::AccountId>, Self::RuntimeOrigin>> + From<RawOrigin<Self::AccountId>> + Clone + OriginTrait<Call = Self::RuntimeCall, AccountId = Self::AccountId>;
type RuntimeCall: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin> + Debug + GetDispatchInfo + From<Call<Self>>;
type RuntimeTask: Task;
type Nonce: Parameter + Member + MaybeSerializeDeserialize + Debug + Default + MaybeDisplay + AtLeast32Bit + Copy + MaxEncodedLen;
type Hash: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + SimpleBitOps + Ord + Default + Copy + CheckEqual + Hash + AsRef<[u8]> + AsMut<[u8]> + MaxEncodedLen;
type Hashing: Hash<Output = Self::Hash> + TypeInfo;
type AccountId: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + Ord + MaxEncodedLen;
type Lookup: StaticLookup<Target = Self::AccountId>;
type Block: Parameter + Member + Block<Hash = Self::Hash>;
type BlockHashCount: Get<<<Self::Block as HeaderProvider>::HeaderT as Header>::Number>;
type DbWeight: Get<RuntimeDbWeight>;
type Version: Get<RuntimeVersion>;
type PalletInfo: PalletInfo;
type AccountData: Member + FullCodec + Clone + Default + TypeInfo + MaxEncodedLen;
type OnNewAccount: OnNewAccount<Self::AccountId>;
type OnKilledAccount: OnKilledAccount<Self::AccountId>;
type SystemWeightInfo: WeightInfo;
type ExtensionsWeightInfo: WeightInfo;
type SS58Prefix: Get<u16>;
type OnSetCode: SetCode<Self>;
type MaxConsumers: ConsumerLimits;
type SingleBlockMigrations: OnRuntimeUpgrade;
type MultiBlockMigrator: MultiStepMigrator;
type PreInherents: PreInherents;
type PostInherents: PostInherents;
type PostTransactions: PostTransactions;
}
Expand description
Configuration trait of this pallet.
The main purpose of this trait is to act as an interface between this pallet and the runtime in which it is embedded in. A type, function, or constant in this trait is essentially left to be configured by the runtime that includes this pallet.
Consequently, a runtime that wants to include this pallet must implement this trait. System configuration trait. Implemented by runtime.
Required Associated Types§
type RuntimeEvent: Parameter + Member + From<Event<Self>> + Debug + IsType<Self::RuntimeEvent>
type RuntimeEvent: Parameter + Member + From<Event<Self>> + Debug + IsType<Self::RuntimeEvent>
The aggregated event type of the runtime.
type BaseCallFilter: Contains<Self::RuntimeCall>
type BaseCallFilter: Contains<Self::RuntimeCall>
The basic call filter to use in Origin. All origins are built with this filter as base, except Root.
This works as a filter for each incoming call. The call needs to pass this filter in
order to dispatch. Otherwise it will be rejected with CallFiltered
. This can be
bypassed via dispatch_bypass_filter
which should only be accessible by root. The
filter can be composed of sub-filters by nesting for example
[frame_support::traits::InsideBoth
], [frame_support::traits::TheseExcept
] or
[frame_support::traits::EverythingBut
] et al. The default would be
[frame_support::traits::Everything
].
type BlockWeights: Get<BlockWeights>
type BlockWeights: Get<BlockWeights>
Block & extrinsics weights: base values and limits.
type BlockLength: Get<BlockLength>
type BlockLength: Get<BlockLength>
The maximum length of a block (in bytes).
type RuntimeOrigin: Into<Result<RawOrigin<Self::AccountId>, Self::RuntimeOrigin>> + From<RawOrigin<Self::AccountId>> + Clone + OriginTrait<Call = Self::RuntimeCall, AccountId = Self::AccountId>
type RuntimeOrigin: Into<Result<RawOrigin<Self::AccountId>, Self::RuntimeOrigin>> + From<RawOrigin<Self::AccountId>> + Clone + OriginTrait<Call = Self::RuntimeCall, AccountId = Self::AccountId>
The RuntimeOrigin
type used by dispatchable calls.
type RuntimeCall: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin> + Debug + GetDispatchInfo + From<Call<Self>>
type RuntimeCall: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin> + Debug + GetDispatchInfo + From<Call<Self>>
The aggregated RuntimeCall
type.
type RuntimeTask: Task
type RuntimeTask: Task
The aggregated RuntimeTask
type.
type Nonce: Parameter + Member + MaybeSerializeDeserialize + Debug + Default + MaybeDisplay + AtLeast32Bit + Copy + MaxEncodedLen
type Nonce: Parameter + Member + MaybeSerializeDeserialize + Debug + Default + MaybeDisplay + AtLeast32Bit + Copy + MaxEncodedLen
This stores the number of previous transactions associated with a sender account.
type Hash: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + SimpleBitOps + Ord + Default + Copy + CheckEqual + Hash + AsRef<[u8]> + AsMut<[u8]> + MaxEncodedLen
type Hash: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + SimpleBitOps + Ord + Default + Copy + CheckEqual + Hash + AsRef<[u8]> + AsMut<[u8]> + MaxEncodedLen
The output of the Hashing
function.
type Hashing: Hash<Output = Self::Hash> + TypeInfo
type Hashing: Hash<Output = Self::Hash> + TypeInfo
The hashing system (algorithm) being used in the runtime (e.g. Blake2).
type AccountId: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + Ord + MaxEncodedLen
type AccountId: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + Ord + MaxEncodedLen
The user account identifier type for the runtime.
type Lookup: StaticLookup<Target = Self::AccountId>
type Lookup: StaticLookup<Target = Self::AccountId>
Converting trait to take a source type and convert to AccountId
.
Used to define the type and conversion mechanism for referencing accounts in
transactions. It’s perfectly reasonable for this to be an identity conversion (with the
source type being AccountId
), but other pallets (e.g. Indices pallet) may provide more
functional/efficient alternatives.
type Block: Parameter + Member + Block<Hash = Self::Hash>
type Block: Parameter + Member + Block<Hash = Self::Hash>
The Block type used by the runtime. This is used by construct_runtime
to retrieve the
extrinsics or other block specific data as needed.
type BlockHashCount: Get<<<Self::Block as HeaderProvider>::HeaderT as Header>::Number>
type BlockHashCount: Get<<<Self::Block as HeaderProvider>::HeaderT as Header>::Number>
Maximum number of block number to block hash mappings to keep (oldest pruned first).
type DbWeight: Get<RuntimeDbWeight>
type DbWeight: Get<RuntimeDbWeight>
The weight of runtime database operations the runtime can invoke.
type Version: Get<RuntimeVersion>
type Version: Get<RuntimeVersion>
Get the chain’s in-code version.
type PalletInfo: PalletInfo
type PalletInfo: PalletInfo
Provides information about the pallet setup in the runtime.
Expects the PalletInfo
type that is being generated by construct_runtime!
in the
runtime.
For tests it is okay to use ()
as type, however it will provide “useless” data.
type AccountData: Member + FullCodec + Clone + Default + TypeInfo + MaxEncodedLen
type AccountData: Member + FullCodec + Clone + Default + TypeInfo + MaxEncodedLen
Data to be associated with an account (other than nonce/transaction counter, which this pallet does regardless).
type OnNewAccount: OnNewAccount<Self::AccountId>
type OnNewAccount: OnNewAccount<Self::AccountId>
Handler for when a new account has just been created.
type OnKilledAccount: OnKilledAccount<Self::AccountId>
type OnKilledAccount: OnKilledAccount<Self::AccountId>
A function that is invoked when an account has been determined to be dead.
All resources should be cleaned up associated with the given account.
type SystemWeightInfo: WeightInfo
type SystemWeightInfo: WeightInfo
Weight information for the extrinsics of this pallet.
type ExtensionsWeightInfo: WeightInfo
type ExtensionsWeightInfo: WeightInfo
Weight information for the transaction extensions of this pallet.
type SS58Prefix: Get<u16>
type SS58Prefix: Get<u16>
The designated SS58 prefix of this chain.
This replaces the “ss58Format” property declared in the chain spec. Reason is that the runtime should know about the prefix in order to make use of it as an identifier of the chain.
type OnSetCode: SetCode<Self>
type OnSetCode: SetCode<Self>
What to do if the runtime wants to change the code to something new.
The default (()
) implementation is responsible for setting the correct storage
entry and emitting corresponding event and log item. (see
[Pallet::update_code_in_storage
]).
It’s unlikely that this needs to be customized, unless you are writing a parachain using
Cumulus
, where the actual code change is deferred.
type MaxConsumers: ConsumerLimits
type MaxConsumers: ConsumerLimits
The maximum number of consumers allowed on a single account.
type SingleBlockMigrations: OnRuntimeUpgrade
type SingleBlockMigrations: OnRuntimeUpgrade
All migrations that should run in the next runtime upgrade.
These used to be formerly configured in Executive
. Parachains need to ensure that
running all these migrations in one block will not overflow the weight limit of a block.
The migrations are run before the pallet on_runtime_upgrade
hooks, just like the
OnRuntimeUpgrade
migrations.
type MultiBlockMigrator: MultiStepMigrator
type MultiBlockMigrator: MultiStepMigrator
The migrator that is used to run Multi-Block-Migrations.
Can be set to [pallet-migrations
] or an alternative implementation of the interface.
The diagram in frame_executive::block_flowchart
explains when it runs.
type PreInherents: PreInherents
type PreInherents: PreInherents
A callback that executes in every block directly before all inherents were applied.
See frame_executive::block_flowchart
for a in-depth explanation when it runs.
type PostInherents: PostInherents
type PostInherents: PostInherents
A callback that executes in every block directly after all inherents were applied.
See frame_executive::block_flowchart
for a in-depth explanation when it runs.
type PostTransactions: PostTransactions
type PostTransactions: PostTransactions
A callback that executes in every block directly after all transactions were applied.
See frame_executive::block_flowchart
for a in-depth explanation when it runs.