pub trait TypeOf: TypeHash {
const STATIC_TYPE_INFO: AnyTypeInfo;
const PARAMETERS: Hash = Hash::EMPTY;
// Provided method
fn type_info() -> TypeInfo { ... }
}
Expand description
Trait used for Rust types for which we can determine the runtime type of.
Required Associated Constants§
Sourceconst STATIC_TYPE_INFO: AnyTypeInfo
const STATIC_TYPE_INFO: AnyTypeInfo
Access diagnostical type information for the current type.
This can be easily converted to a TypeInfo
struct which provides
human-readable diagnostics that has a reasonable Display
and
Debug
implementation for humans.
See Self::type_info()
.
Provided Associated Constants§
Sourceconst PARAMETERS: Hash = Hash::EMPTY
const PARAMETERS: Hash = Hash::EMPTY
Type parameters for the type.
See ParametersBuilder
for more information.
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl TypeOf for Error
impl TypeOf for Error
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for ParseCharError
impl TypeOf for ParseCharError
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Error
impl TypeOf for Error
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for ParseFloatError
impl TypeOf for ParseFloatError
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for ParseIntError
impl TypeOf for ParseIntError
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Utf8Error
impl TypeOf for Utf8Error
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Error
Available on crate feature std
only.
impl TypeOf for Error
Available on crate feature
std
only.const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl<A> TypeOf for (A,)where
A: MaybeTypeOf,
impl<A> TypeOf for (A,)where
A: MaybeTypeOf,
Source§impl<A, B> TypeOf for (A, B)where
A: MaybeTypeOf,
B: MaybeTypeOf,
impl<A, B> TypeOf for (A, B)where
A: MaybeTypeOf,
B: MaybeTypeOf,
Source§impl<A, B, C, D> TypeOf for (A, B, C, D)
impl<A, B, C, D> TypeOf for (A, B, C, D)
Source§impl<A, B, C, D, E> TypeOf for (A, B, C, D, E)
impl<A, B, C, D, E> TypeOf for (A, B, C, D, E)
Source§impl<A, B, C, D, E, F> TypeOf for (A, B, C, D, E, F)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
impl<A, B, C, D, E, F> TypeOf for (A, B, C, D, E, F)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G> TypeOf for (A, B, C, D, E, F, G)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
impl<A, B, C, D, E, F, G> TypeOf for (A, B, C, D, E, F, G)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H> TypeOf for (A, B, C, D, E, F, G, H)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H> TypeOf for (A, B, C, D, E, F, G, H)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H, I> TypeOf for (A, B, C, D, E, F, G, H, I)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H, I> TypeOf for (A, B, C, D, E, F, G, H, I)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H, I, J> TypeOf for (A, B, C, D, E, F, G, H, I, J)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H, I, J> TypeOf for (A, B, C, D, E, F, G, H, I, J)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H, I, J, K> TypeOf for (A, B, C, D, E, F, G, H, I, J, K)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H, I, J, K> TypeOf for (A, B, C, D, E, F, G, H, I, J, K)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H, I, J, K, L> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H, I, J, K, L> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L, M)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
M: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L, M)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
M: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
M: MaybeTypeOf,
N: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
M: MaybeTypeOf,
N: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
M: MaybeTypeOf,
N: MaybeTypeOf,
O: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
M: MaybeTypeOf,
N: MaybeTypeOf,
O: MaybeTypeOf,
Source§impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
M: MaybeTypeOf,
N: MaybeTypeOf,
O: MaybeTypeOf,
P: MaybeTypeOf,
impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> TypeOf for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)where
A: MaybeTypeOf,
B: MaybeTypeOf,
C: MaybeTypeOf,
D: MaybeTypeOf,
E: MaybeTypeOf,
F: MaybeTypeOf,
G: MaybeTypeOf,
H: MaybeTypeOf,
I: MaybeTypeOf,
J: MaybeTypeOf,
K: MaybeTypeOf,
L: MaybeTypeOf,
M: MaybeTypeOf,
N: MaybeTypeOf,
O: MaybeTypeOf,
P: MaybeTypeOf,
Source§impl<C, B> TypeOf for ControlFlow<C, B>where
C: MaybeTypeOf,
B: MaybeTypeOf,
impl<C, B> TypeOf for ControlFlow<C, B>where
C: MaybeTypeOf,
B: MaybeTypeOf,
Source§impl<T> TypeOf for Option<T>where
T: MaybeTypeOf,
impl<T> TypeOf for Option<T>where
T: MaybeTypeOf,
Source§impl<T> TypeOf for &T
Blanket implementation for references.
impl<T> TypeOf for &T
Blanket implementation for references.
const PARAMETERS: Hash = T::PARAMETERS
const STATIC_TYPE_INFO: AnyTypeInfo = T::STATIC_TYPE_INFO
Source§impl<T> TypeOf for &mut T
Blanket implementation for mutable references.
impl<T> TypeOf for &mut T
Blanket implementation for mutable references.
const PARAMETERS: Hash = T::PARAMETERS
const STATIC_TYPE_INFO: AnyTypeInfo = T::STATIC_TYPE_INFO
Source§impl<T> TypeOf for Vec<T>where
T: MaybeTypeOf,
Available on crate feature alloc
only.
impl<T> TypeOf for Vec<T>where
T: MaybeTypeOf,
Available on crate feature
alloc
only.Source§impl<T> TypeOf for HashMap<String, T>where
T: MaybeTypeOf,
Available on crate feature std
only.
impl<T> TypeOf for HashMap<String, T>where
T: MaybeTypeOf,
Available on crate feature
std
only.Source§impl<T> TypeOf for HashMap<String, T>where
T: MaybeTypeOf,
Available on crate feature std
only.
impl<T> TypeOf for HashMap<String, T>where
T: MaybeTypeOf,
Available on crate feature
std
only.Source§impl<T, E> TypeOf for Result<T, E>where
T: MaybeTypeOf,
E: MaybeTypeOf,
impl<T, E> TypeOf for Result<T, E>where
T: MaybeTypeOf,
E: MaybeTypeOf,
Implementors§
Source§impl TypeOf for rune::runtime::ControlFlow
impl TypeOf for rune::runtime::ControlFlow
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for GeneratorState
impl TypeOf for GeneratorState
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for FromUtf8Error
Available on crate feature alloc
only.
impl TypeOf for FromUtf8Error
Available on crate feature
alloc
only.const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for rune::alloc::String
impl TypeOf for rune::alloc::String
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Bencher
impl TypeOf for Bencher
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Format
impl TypeOf for Format
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Bytes
impl TypeOf for Bytes
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Formatter
impl TypeOf for Formatter
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Function
impl TypeOf for Function
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Future
impl TypeOf for Future
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Generator<Vm>
impl TypeOf for Generator<Vm>
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Hasher
impl TypeOf for Hasher
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Object
impl TypeOf for Object
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for OwnedTuple
impl TypeOf for OwnedTuple
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Range
impl TypeOf for Range
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for RangeFrom
impl TypeOf for RangeFrom
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for RangeFull
impl TypeOf for RangeFull
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for RangeInclusive
impl TypeOf for RangeInclusive
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for RangeTo
impl TypeOf for RangeTo
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as crate::Any>::ANY_TYPE_INFO
Source§impl TypeOf for RangeToInclusive
impl TypeOf for RangeToInclusive
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for Stream<Vm>
impl TypeOf for Stream<Vm>
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl TypeOf for rune::runtime::Vec
impl TypeOf for rune::runtime::Vec
const PARAMETERS: Hash
const STATIC_TYPE_INFO: AnyTypeInfo = <Self as rune::Any>::ANY_TYPE_INFO
Source§impl<T> TypeOf for rune::alloc::Vec<T>where
T: MaybeTypeOf,
impl<T> TypeOf for rune::alloc::Vec<T>where
T: MaybeTypeOf,
Source§impl<T> TypeOf for Mut<T>
Blanket implementation for owned mutable references.
impl<T> TypeOf for Mut<T>
Blanket implementation for owned mutable references.
const PARAMETERS: Hash = T::PARAMETERS
const STATIC_TYPE_INFO: AnyTypeInfo = T::STATIC_TYPE_INFO
Source§impl<T> TypeOf for Ref<T>
Blanket implementation for owned references.
impl<T> TypeOf for Ref<T>
Blanket implementation for owned references.