pub trait TypeInfo {
    type Identity: 'static + ?Sized;

    fn type_info() -> Type<MetaForm>;
}
Expand description

Implementors return their meta type information.

Required Associated Types§

The type identifying for which type info is provided.

Note

This is used to uniquely identify a type via core::any::TypeId::of. In most cases it will just be Self, but can be used to unify different types which have the same encoded representation e.g. reference types Box<T>, &T and &mut T.

Required Methods§

Returns the static type identifier for Self.

Implementations on Foreign Types§

Manual TypeInfo implementation because of custom encoding. The data is a valid encoded Vec<u8>, but requires some logic to extract the signature and payload.

See [UncheckedExtrinsic::encode] and [UncheckedExtrinsic::decode].

Implementors§

impl TypeInfo for SessionKeys

impl TypeInfo for Runtime

impl TypeInfo for Event

impl TypeInfo for OriginCaller

impl TypeInfo for Call

impl<T> TypeInfo for ProposalRecord<T>where
    T::AccountId: TypeInfo + 'static,
    T::NftCollectionId: TypeInfo + 'static,
    T::NftItemId: TypeInfo + 'static,
    BlockNumberOf<T>: TypeInfo + 'static,
    T: Config + 'static,

impl<T> TypeInfo for BalanceType<T>where
    BalanceOf<T>: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    DemoBalanceOf<T>: TypeInfo + 'static,
    AssetsBalanceOf<T>: TypeInfo + 'static,
    IdentBalanceOf<T>: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    T: Config + 'static,

impl<T> TypeInfo for Event<T>where
    T::AccountId: TypeInfo + 'static,
    BlockNumberOf<T>: TypeInfo + 'static,
    T::NftCollectionId: TypeInfo + 'static,
    T::NftItemId: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    Vec<T::AccountId>: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    PhantomData<T>: TypeInfo + 'static,
    T: Config + 'static,

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

impl<T> TypeInfo for Call<T>where
    PhantomData<(T,)>: TypeInfo + 'static,
    AccountIdOf<T>: TypeInfo + 'static,
    Box<<T as Config>::Call>: TypeInfo + 'static,
    T::NftItemId: TypeInfo + 'static,
    T::AccountId: TypeInfo + 'static,
    T::NftCollectionId: TypeInfo + 'static,
    Judgement<IdentBalanceOf<T>>: TypeInfo + 'static,
    T: Config + 'static,

impl<T> TypeInfo for Event<T>where
    T::NftCollectionId: TypeInfo + 'static,
    T::NftItemId: TypeInfo + 'static,
    HousingFundBalance<T>: TypeInfo + 'static,
    BlockNumberOf<T>: TypeInfo + 'static,
    Vec<UserBalance<T>>: TypeInfo + 'static,
    PhantomData<T>: TypeInfo + 'static,
    T: Config + 'static,

impl<T> TypeInfo for Call<T>where
    PhantomData<(T,)>: TypeInfo + 'static,
    T: Config + 'static,

impl<T> TypeInfo for Event<T>where
    AccountIdOf<T>: TypeInfo + 'static,
    T::NftCollectionId: TypeInfo + 'static,
    T::NftItemId: TypeInfo + 'static,
    PhantomData<T>: TypeInfo + 'static,
    T: Config + 'static,

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

impl<T> TypeInfo for Call<T>where
    PhantomData<(T,)>: TypeInfo + 'static,
    T::NftCollectionId: TypeInfo + 'static,
    T::NftItemId: TypeInfo + 'static,
    T: Config + 'static,

impl<T> TypeInfo for RegisteredTenant<T>where
    T::AccountId: TypeInfo + 'static,
    Box<IdentityInfo<T::MaxAdditionalFields>>: TypeInfo + 'static,
    BlockNumberOf<T>: TypeInfo + 'static,
    Option<T::AccountId>: TypeInfo + 'static,
    T: Config + 'static,

impl<T> TypeInfo for Event<T>where
    T::AccountId: TypeInfo + 'static,
    BlockNumberOf<T>: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    BalanceOf<T>: TypeInfo + 'static,
    PhantomData<T>: TypeInfo + 'static,
    T: Config + 'static,

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

impl<T> TypeInfo for Call<T>where
    PhantomData<(T,)>: TypeInfo + 'static,
    Box<IdentityInfo<T::MaxAdditionalFields>>: TypeInfo + 'static,
    T::NftItemId: TypeInfo + 'static,
    T: Config + 'static,