Trait sp_runtime_interface::RIType [−][src]
Something that can be used by the runtime interface as type to communicate between wasm and the host.
Every type that should be used in a runtime interface function signature needs to implement this trait.
Associated Types
type FFIType: IntoValue + TryFromValue
[src]
The ffi type that is used to represent Self
.
Implementations on Foreign Types
impl RIType for u8
[src]
The type is passed directly.
impl RIType for u16
[src]
The type is passed directly.
impl RIType for u32
[src]
The type is passed directly.
impl RIType for u64
[src]
The type is passed directly.
impl RIType for i8
[src]
The type is passed directly.
impl RIType for i16
[src]
The type is passed directly.
impl RIType for i32
[src]
The type is passed directly.
impl RIType for i64
[src]
The type is passed directly.
impl RIType for bool
[src]
bool
is passed as u8
.
1
: true0
: false
impl<T> RIType for Vec<T>
[src]
The type is passed as u64
.
The u64
value is build by length 32bit << 32 | pointer 32bit
If T == u8
the length and the pointer are taken directly from Self
.
Otherwise Self
is encoded and the length and the pointer are taken from the encoded vector.
impl<T> RIType for [T]
[src]
The type is passed as u64
.
The u64
value is build by length 32bit << 32 | pointer 32bit
If T == u8
the length and the pointer are taken directly from Self
.
Otherwise Self
is encoded and the length and the pointer are taken from the encoded vector.
impl RIType for [u8; 1]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 2]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 3]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 4]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 5]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 6]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 7]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 8]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 9]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 10]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 11]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 12]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 13]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 14]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 15]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 16]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 17]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 18]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 19]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 20]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 21]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 22]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 23]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 24]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 25]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 26]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 27]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 28]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 29]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 30]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 31]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 32]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 33]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 34]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 35]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 36]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 37]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 38]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 39]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 40]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 41]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 42]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 43]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 44]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 45]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 46]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 47]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 48]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 49]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 50]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 51]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 52]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 53]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 54]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 55]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 56]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 57]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 58]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 59]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 60]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 61]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 62]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 63]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 64]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 65]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 66]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 67]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 68]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 69]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 70]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 71]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 72]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 73]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 74]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 75]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 76]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 77]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 78]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 79]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 80]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 81]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 82]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 83]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 84]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 85]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 86]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 87]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 88]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 89]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 90]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 91]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 92]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 93]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 94]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 95]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for [u8; 96]
[src]
The type is passed as u32
.
The u32
is the pointer to the array.
impl RIType for str
[src]
The type is passed as u64
.
The u64
value is build by length 32bit << 32 | pointer 32bit
The length and the pointer are taken directly from Self
.
impl RIType for u128
[src]
u128
/i128
is passed as u32
.
The u32
is a pointer to an [u8; 16]
array.
impl RIType for i128
[src]
u128
/i128
is passed as u32
.
The u32
is a pointer to an [u8; 16]
array.
Implementors
impl<T: PassBy> RIType for T
[src]
impl<T: PassByInner<Inner = I>, I: RIType> RIType for Inner<T, I>
[src]
The type is passed as the inner type.
impl<T: Copy + Into<u8> + TryFrom<u8>> RIType for Enum<T>
[src]
The type is passed as u8
.
The value is corresponds to the discriminant of the variant.
impl<T: Codec> RIType for Codec<T>
[src]
The type is passed as u64
.
The u64
value is build by length 32bit << 32 | pointer 32bit
Self
is encoded and the length and the pointer are taken from the encoded vector.