Trait frame_support::pallet_prelude::TypeInfo
source · pub trait TypeInfo {
type Identity: 'static + ?Sized;
// Required method
fn type_info() -> Type;
}
Expand description
Implementors return their meta type information.
Required Associated Types§
sourcetype Identity: 'static + ?Sized
type Identity: 'static + ?Sized
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§
Object Safety§
This trait is not object safe.
Implementations on Foreign Types§
source§impl TypeInfo for ArithmeticError
impl TypeInfo for ArithmeticError
source§impl TypeInfo for ExtrinsicInclusionMode
impl TypeInfo for ExtrinsicInclusionMode
source§impl TypeInfo for TransactionalError
impl TypeInfo for TransactionalError
source§impl TypeInfo for StorageProofError
impl TypeInfo for StorageProofError
source§impl TypeInfo for OpaqueMultiaddr
impl TypeInfo for OpaqueMultiaddr
source§impl TypeInfo for OpaqueNetworkState
impl TypeInfo for OpaqueNetworkState
source§impl TypeInfo for OpaqueExtrinsic
impl TypeInfo for OpaqueExtrinsic
source§impl TypeInfo for UintAuthorityId
impl TypeInfo for UintAuthorityId
source§impl<'a> TypeInfo for PiecewiseLinear<'a>where
'a: 'static,
impl<'a> TypeInfo for PiecewiseLinear<'a>where
'a: 'static,
source§impl<A, B, C, D> TypeInfo for (A, B, C, D)
impl<A, B, C, D> TypeInfo for (A, B, C, D)
source§impl<A, B, C, D, E> TypeInfo for (A, B, C, D, E)
impl<A, B, C, D, E> TypeInfo for (A, B, C, D, E)
source§impl<A, B, C, D, E, F> TypeInfo for (A, B, C, D, E, F)
impl<A, B, C, D, E, F> TypeInfo for (A, B, C, D, E, F)
source§impl<A, B, C, D, E, F, G> TypeInfo for (A, B, C, D, E, F, G)
impl<A, B, C, D, E, F, G> TypeInfo for (A, B, C, D, E, F, G)
source§impl<A, B, C, D, E, F, G, H> TypeInfo for (A, B, C, D, E, F, G, H)
impl<A, B, C, D, E, F, G, H> TypeInfo for (A, B, C, D, E, F, G, H)
source§impl<A, B, C, D, E, F, G, H, I> TypeInfo for (A, B, C, D, E, F, G, H, I)
impl<A, B, C, D, E, F, G, H, I> TypeInfo for (A, B, C, D, E, F, G, H, I)
source§impl<A, B, C, D, E, F, G, H, I, J> TypeInfo for (A, B, C, D, E, F, G, H, I, J)
impl<A, B, C, D, E, F, G, H, I, J> TypeInfo for (A, B, C, D, E, F, G, H, I, J)
source§impl<A, B, C, D, E, F, G, H, I, J, K> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K)
impl<A, B, C, D, E, F, G, H, I, J, K> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K)
source§impl<A, B, C, D, E, F, G, H, I, J, K, L> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L)
impl<A, B, C, D, E, F, G, H, I, J, K, L> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L)
source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
Q: TypeInfo + 'static,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
Q: TypeInfo + 'static,
source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
Q: TypeInfo + 'static,
R: TypeInfo + 'static,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
Q: TypeInfo + 'static,
R: TypeInfo + 'static,
source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
Q: TypeInfo + 'static,
R: TypeInfo + 'static,
S: TypeInfo + 'static,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
Q: TypeInfo + 'static,
R: TypeInfo + 'static,
S: TypeInfo + 'static,
source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
Q: TypeInfo + 'static,
R: TypeInfo + 'static,
S: TypeInfo + 'static,
T: TypeInfo + 'static,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T> TypeInfo for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T)where
A: TypeInfo + 'static,
B: TypeInfo + 'static,
C: TypeInfo + 'static,
D: TypeInfo + 'static,
E: TypeInfo + 'static,
F: TypeInfo + 'static,
G: TypeInfo + 'static,
H: TypeInfo + 'static,
I: TypeInfo + 'static,
J: TypeInfo + 'static,
K: TypeInfo + 'static,
L: TypeInfo + 'static,
M: TypeInfo + 'static,
N: TypeInfo + 'static,
O: TypeInfo + 'static,
P: TypeInfo + 'static,
Q: TypeInfo + 'static,
R: TypeInfo + 'static,
S: TypeInfo + 'static,
T: TypeInfo + 'static,
source§impl<AccountId> TypeInfo for StakerStatus<AccountId>
impl<AccountId> TypeInfo for StakerStatus<AccountId>
source§impl<AccountId, AccountIndex> TypeInfo for MultiAddress<AccountId, AccountIndex>
impl<AccountId, AccountIndex> TypeInfo for MultiAddress<AccountId, AccountIndex>
source§impl<AccountId, Balance> TypeInfo for Exposure<AccountId, Balance>where
Balance: HasCompact + TypeInfo + 'static,
Vec<IndividualExposure<AccountId, Balance>>: TypeInfo + 'static,
AccountId: TypeInfo + 'static,
impl<AccountId, Balance> TypeInfo for Exposure<AccountId, Balance>where
Balance: HasCompact + TypeInfo + 'static,
Vec<IndividualExposure<AccountId, Balance>>: TypeInfo + 'static,
AccountId: TypeInfo + 'static,
source§impl<AccountId, Balance> TypeInfo for ExposurePage<AccountId, Balance>where
Balance: HasCompact + TypeInfo + 'static,
Vec<IndividualExposure<AccountId, Balance>>: TypeInfo + 'static,
AccountId: TypeInfo + 'static,
impl<AccountId, Balance> TypeInfo for ExposurePage<AccountId, Balance>where
Balance: HasCompact + TypeInfo + 'static,
Vec<IndividualExposure<AccountId, Balance>>: TypeInfo + 'static,
AccountId: TypeInfo + 'static,
source§impl<AccountId, Balance> TypeInfo for IndividualExposure<AccountId, Balance>
impl<AccountId, Balance> TypeInfo for IndividualExposure<AccountId, Balance>
source§impl<Address, Call, Signature, Extra> TypeInfo for UncheckedExtrinsic<Address, Call, Signature, Extra>where
Address: StaticTypeInfo,
Call: StaticTypeInfo,
Signature: StaticTypeInfo,
Extra: SignedExtension + StaticTypeInfo,
impl<Address, Call, Signature, Extra> TypeInfo for UncheckedExtrinsic<Address, Call, Signature, Extra>where
Address: StaticTypeInfo,
Call: StaticTypeInfo,
Signature: StaticTypeInfo,
Extra: SignedExtension + StaticTypeInfo,
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
.