[][src]Trait frame_system::Trait

pub trait Trait: 'static + Eq + Clone {
    type Origin: Into<Result<RawOrigin<Self::AccountId>, Self::Origin>> + From<RawOrigin<Self::AccountId>> + Clone;
    type Call: Debug;
    type Index: Parameter + Member + MaybeSerialize + Debug + Default + MaybeDisplay + AtLeast32Bit + Copy;
    type BlockNumber: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + AtLeast32Bit + Default + Bounded + Copy + Hash + FromStr + MaybeMallocSizeOf;
    type Hash: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + SimpleBitOps + Ord + Default + Copy + CheckEqual + Hash + AsRef<[u8]> + AsMut<[u8]> + MaybeMallocSizeOf;
    type Hashing: Hash<Output = Self::Hash>;
    type AccountId: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + Ord + Default;
    type Lookup: StaticLookup<Target = Self::AccountId>;
    type Header: Parameter + Header<Number = Self::BlockNumber, Hash = Self::Hash>;
    type Event: Parameter + Member + From<Event<Self>> + Debug;
    type BlockHashCount: Get<Self::BlockNumber>;
    type MaximumBlockWeight: Get<Weight>;
    type MaximumBlockLength: Get<u32>;
    type AvailableBlockRatio: Get<Perbill>;
    type Version: Get<RuntimeVersion>;
    type ModuleToIndex: ModuleToIndex;
    type AccountData: Member + FullCodec + Clone + Default;
    type OnNewAccount: OnNewAccount<Self::AccountId>;
    type OnKilledAccount: OnKilledAccount<Self::AccountId>;
}

Associated Types

type Origin: Into<Result<RawOrigin<Self::AccountId>, Self::Origin>> + From<RawOrigin<Self::AccountId>> + Clone

The aggregated Origin type used by dispatchable calls.

type Call: Debug

The aggregated Call type.

type Index: Parameter + Member + MaybeSerialize + Debug + Default + MaybeDisplay + AtLeast32Bit + Copy

Account index (aka nonce) type. This stores the number of previous transactions associated with a sender account.

type BlockNumber: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + AtLeast32Bit + Default + Bounded + Copy + Hash + FromStr + MaybeMallocSizeOf

The block number type used by the runtime.

type Hash: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + SimpleBitOps + Ord + Default + Copy + CheckEqual + Hash + AsRef<[u8]> + AsMut<[u8]> + MaybeMallocSizeOf

The output of the Hashing function.

type Hashing: Hash<Output = Self::Hash>

The hashing system (algorithm) being used in the runtime (e.g. Blake2).

type AccountId: Parameter + Member + MaybeSerializeDeserialize + Debug + MaybeDisplay + Ord + Default

The user account identifier type for the runtime.

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 modules (e.g. Indices module) may provide more functional/efficient alternatives.

type Header: Parameter + Header<Number = Self::BlockNumber, Hash = Self::Hash>

The block header.

type Event: Parameter + Member + From<Event<Self>> + Debug

The aggregated event type of the runtime.

type BlockHashCount: Get<Self::BlockNumber>

Maximum number of block number to block hash mappings to keep (oldest pruned first).

type MaximumBlockWeight: Get<Weight>

The maximum weight of a block.

type MaximumBlockLength: Get<u32>

The maximum length of a block (in bytes).

type AvailableBlockRatio: Get<Perbill>

The portion of the block that is available to normal transaction. The rest can only be used by operational transactions. This can be applied to any resource limit managed by the system module, including weight and length.

type Version: Get<RuntimeVersion>

Get the chain's current version.

type ModuleToIndex: ModuleToIndex

Convert a module to its index in the runtime.

Expects the ModuleToIndex type that is being generated by construct_runtime! in the runtime. For tests it is okay to use () as type (returns 0 for each input).

type AccountData: Member + FullCodec + Clone + Default

Data to be associated with an account (other than nonce/transaction counter, which this module does regardless).

type OnNewAccount: OnNewAccount<Self::AccountId>

Handler for when a new account has just been created.

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.

Loading content...

Implementors

Loading content...