pub struct Structure<'a> { /* private fields */ }
Expand description
A helper type to wrap structs in Value
.
API is provided to convert from, and to tuples.
Implementations§
source§impl<'a> Structure<'a>
impl<'a> Structure<'a>
sourcepub fn into_fields(self) -> Vec<Value<'a>> ⓘ
pub fn into_fields(self) -> Vec<Value<'a>> ⓘ
Converts self
to a Vec
containing all its fields.
sourcepub fn signature(&self) -> Signature<'static>
pub fn signature(&self) -> Signature<'static>
Get the signature of this Structure
.
NB: This method potentially allocates and copies. Use full_signature
if you’d like to
avoid that.
sourcepub fn full_signature(&self) -> &Signature<'_>
pub fn full_signature(&self) -> &Signature<'_>
Get the signature of this Structure
.
Trait Implementations§
source§impl<'a> DynamicDeserialize<'a> for Structure<'a>
impl<'a> DynamicDeserialize<'a> for Structure<'a>
§type Deserializer = StructureSeed<'a>
type Deserializer = StructureSeed<'a>
A DeserializeSeed implementation for this type.
source§fn deserializer_for_signature<S>(signature: S) -> Result<Self::Deserializer>where
S: TryInto<Signature<'a>>,
S::Error: Into<Error>,
fn deserializer_for_signature<S>(signature: S) -> Result<Self::Deserializer>where S: TryInto<Signature<'a>>, S::Error: Into<Error>,
Get a deserializer compatible with this signature.
source§impl<'a> DynamicType for Structure<'a>
impl<'a> DynamicType for Structure<'a>
source§fn dynamic_signature(&self) -> Signature<'_>
fn dynamic_signature(&self) -> Signature<'_>
Get the signature for the implementing type. Read more
source§impl<'a, T0, T1> From<(T0, T1)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1> From<(T0, T1)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>,
source§impl<'a, T0, T1, T2> From<(T0, T1, T2)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2> From<(T0, T1, T2)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2)) -> Self
fn from(value: (T0, T1, T2)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3> From<(T0, T1, T2, T3)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3> From<(T0, T1, T2, T3)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3)) -> Self
fn from(value: (T0, T1, T2, T3)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4> From<(T0, T1, T2, T3, T4)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4> From<(T0, T1, T2, T3, T4)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4)) -> Self
fn from(value: (T0, T1, T2, T3, T4)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5> From<(T0, T1, T2, T3, T4, T5)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5> From<(T0, T1, T2, T3, T4, T5)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4, T5)) -> Self
fn from(value: (T0, T1, T2, T3, T4, T5)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6> From<(T0, T1, T2, T3, T4, T5, T6)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6> From<(T0, T1, T2, T3, T4, T5, T6)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4, T5, T6)) -> Self
fn from(value: (T0, T1, T2, T3, T4, T5, T6)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7> From<(T0, T1, T2, T3, T4, T5, T6, T7)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7> From<(T0, T1, T2, T3, T4, T5, T6, T7)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7)) -> Self
fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
T8: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>, T8: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8)) -> Self
fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
T8: DynamicType + Into<Value<'a>>,
T9: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>, T8: DynamicType + Into<Value<'a>>, T9: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)) -> Self
fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
T8: DynamicType + Into<Value<'a>>,
T9: DynamicType + Into<Value<'a>>,
T10: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>, T8: DynamicType + Into<Value<'a>>, T9: DynamicType + Into<Value<'a>>, T10: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)) -> Self
fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
T8: DynamicType + Into<Value<'a>>,
T9: DynamicType + Into<Value<'a>>,
T10: DynamicType + Into<Value<'a>>,
T11: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>, T8: DynamicType + Into<Value<'a>>, T9: DynamicType + Into<Value<'a>>, T10: DynamicType + Into<Value<'a>>, T11: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)) -> Self
fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
T8: DynamicType + Into<Value<'a>>,
T9: DynamicType + Into<Value<'a>>,
T10: DynamicType + Into<Value<'a>>,
T11: DynamicType + Into<Value<'a>>,
T12: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>, T8: DynamicType + Into<Value<'a>>, T9: DynamicType + Into<Value<'a>>, T10: DynamicType + Into<Value<'a>>, T11: DynamicType + Into<Value<'a>>, T12: DynamicType + Into<Value<'a>>,
source§fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)) -> Self
fn from(value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
T8: DynamicType + Into<Value<'a>>,
T9: DynamicType + Into<Value<'a>>,
T10: DynamicType + Into<Value<'a>>,
T11: DynamicType + Into<Value<'a>>,
T12: DynamicType + Into<Value<'a>>,
T13: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>, T8: DynamicType + Into<Value<'a>>, T9: DynamicType + Into<Value<'a>>, T10: DynamicType + Into<Value<'a>>, T11: DynamicType + Into<Value<'a>>, T12: DynamicType + Into<Value<'a>>, T13: DynamicType + Into<Value<'a>>,
source§fn from(
value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)
) -> Self
fn from( value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) ) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
T8: DynamicType + Into<Value<'a>>,
T9: DynamicType + Into<Value<'a>>,
T10: DynamicType + Into<Value<'a>>,
T11: DynamicType + Into<Value<'a>>,
T12: DynamicType + Into<Value<'a>>,
T13: DynamicType + Into<Value<'a>>,
T14: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>, T8: DynamicType + Into<Value<'a>>, T9: DynamicType + Into<Value<'a>>, T10: DynamicType + Into<Value<'a>>, T11: DynamicType + Into<Value<'a>>, T12: DynamicType + Into<Value<'a>>, T13: DynamicType + Into<Value<'a>>, T14: DynamicType + Into<Value<'a>>,
source§fn from(
value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)
) -> Self
fn from( value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) ) -> Self
Converts to this type from the input type.
source§impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)> for Structure<'a>where
T0: DynamicType + Into<Value<'a>>,
T1: DynamicType + Into<Value<'a>>,
T2: DynamicType + Into<Value<'a>>,
T3: DynamicType + Into<Value<'a>>,
T4: DynamicType + Into<Value<'a>>,
T5: DynamicType + Into<Value<'a>>,
T6: DynamicType + Into<Value<'a>>,
T7: DynamicType + Into<Value<'a>>,
T8: DynamicType + Into<Value<'a>>,
T9: DynamicType + Into<Value<'a>>,
T10: DynamicType + Into<Value<'a>>,
T11: DynamicType + Into<Value<'a>>,
T12: DynamicType + Into<Value<'a>>,
T13: DynamicType + Into<Value<'a>>,
T14: DynamicType + Into<Value<'a>>,
T15: DynamicType + Into<Value<'a>>,
impl<'a, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> From<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)> for Structure<'a>where T0: DynamicType + Into<Value<'a>>, T1: DynamicType + Into<Value<'a>>, T2: DynamicType + Into<Value<'a>>, T3: DynamicType + Into<Value<'a>>, T4: DynamicType + Into<Value<'a>>, T5: DynamicType + Into<Value<'a>>, T6: DynamicType + Into<Value<'a>>, T7: DynamicType + Into<Value<'a>>, T8: DynamicType + Into<Value<'a>>, T9: DynamicType + Into<Value<'a>>, T10: DynamicType + Into<Value<'a>>, T11: DynamicType + Into<Value<'a>>, T12: DynamicType + Into<Value<'a>>, T13: DynamicType + Into<Value<'a>>, T14: DynamicType + Into<Value<'a>>, T15: DynamicType + Into<Value<'a>>,
source§fn from(
value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
) -> Self
fn from( value: (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) ) -> Self
Converts to this type from the input type.