Enum savefile::Schema[][src]

pub enum Schema {
    Struct(SchemaStruct),
    Enum(SchemaEnum),
    Primitive(SchemaPrimitive),
    Vector(Box<Schema>),
    SchemaOption(Box<Schema>),
    Undefined,
    ZeroSize,
}

The schema represents the save file format of your data structure. It is an AST (Abstract Syntax Tree) for consisting of various types of nodes in the savefile format. Custom Serialize-implementations cannot add new types to this tree, but must reuse these existing ones. See the various enum variants for more information:

Variants

Represents a struct. Custom implementations of Serialize may use this format are encouraged to use this format.

Represents an enum

Represents a primitive: Any of the various integer types (u8, i8, u16, i16 etc...), or String

A Vector of arbitrary nodes, all of the given type

An Option variable instance of the given type.

Basically a dummy value, the Schema nodes themselves report this schema if queried.

A zero-sized type. I.e, there is no data to serialize or deserialize.

Methods

impl Schema
[src]

Trait Implementations

impl Debug for Schema
[src]

Formats the value using the given formatter. Read more

impl PartialEq for Schema
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl WithSchema for Schema
[src]

Returns a representation of the schema used by this Serialize implementation for the given version.

impl Serialize for Schema
[src]

Serialize self into the given serializer.

impl Deserialize for Schema
[src]

Deserialize and return an instance of Self from the given deserializer.

Auto Trait Implementations

impl Send for Schema

impl Sync for Schema