Enum borsh::schema::Definition [−][src]
pub enum Definition { Array { length: u32, elements: Declaration, }, Sequence { elements: Declaration, }, Tuple { elements: Vec<Declaration>, }, Enum { variants: Vec<(VariantName, Declaration)>, }, Struct { fields: Fields, }, }
Expand description
The type that we use to represent the definition of the Borsh type.
Variants
A fixed-size array with the length known at the compile time and the same-type elements.
Show fields
Fields of Array
length: u32
elements: Declaration
A sequence of elements of length known at the run time and the same-type elements.
Show fields
Fields of Sequence
elements: Declaration
A fixed-size tuple with the length known at the compile time and the elements of different types.
Show fields
Fields of Tuple
elements: Vec<Declaration>
A tagged union, a.k.a enum. Tagged-unions have variants with associated structures.
Show fields
Fields of Enum
variants: Vec<(VariantName, Declaration)>
A structure, structurally similar to a tuple.
Show fields
Fields of Struct
fields: Fields
Trait Implementations
Get the name of the type without brackets.
Recursively, using DFS, add type definitions required for this type. For primitive types this is an empty map. Type definition explains how to serialize/deserialize a type. Read more
fn add_definition(
declaration: Declaration,
definition: Definition,
definitions: &mut HashMap<Declaration, Definition>
)
[src]
fn add_definition(
declaration: Declaration,
definition: Definition,
definitions: &mut HashMap<Declaration, Definition>
)
[src]Helper method to add a single type definition to the map.
impl BorshSerialize for Definition where
u32: BorshSerialize,
Declaration: BorshSerialize,
Declaration: BorshSerialize,
Vec<Declaration>: BorshSerialize,
Vec<(VariantName, Declaration)>: BorshSerialize,
Fields: BorshSerialize,
[src]
impl BorshSerialize for Definition where
u32: BorshSerialize,
Declaration: BorshSerialize,
Declaration: BorshSerialize,
Vec<Declaration>: BorshSerialize,
Vec<(VariantName, Declaration)>: BorshSerialize,
Fields: BorshSerialize,
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.