[−][src]Struct kiwi_schema::Def
Represents a single definition in a Schema. Kiwi enums, structs, and messages are all represented using this object.
Fields
name: String
The name of this field from the textual Kiwi schema.
index: i32
The index of this Def in the defs
field of the parent
Schema. This is used as the type
identifier for any fields with this type.
kind: DefKind
fields: Vec<Field>
All fields in this definition. The order matters for struct definitions.
field_value_to_index: HashMap<u32, usize>
Maps the value
and name
members of each Field in
the fields
array to its index in that array. This is helpful when
decoding and encoding a field to be able to quickly get to the field
metadata.
field_name_to_index: HashMap<String, usize>
Implementations
impl Def
[src]
pub fn new(name: String, kind: DefKind, fields: Vec<Field>) -> Def
[src]
pub fn field(&self, name: &str) -> Option<&Field>
[src]
Returns the Field with the provided name if one exists.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Def
impl Send for Def
impl Sync for Def
impl Unpin for Def
impl UnwindSafe for Def
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,