pub enum Schema {
Show 14 variants
Null,
Boolean,
Int(Option<IntLogical>),
Long(Option<LongLogical>),
Float,
Double,
Bytes(Option<BytesLogical>),
String(Option<StringLogical>),
Record(Record),
Enum(Enum),
Array(Box<Schema>),
Map(Box<Schema>),
Union(Vec<Schema>),
Fixed(Fixed),
}
Expand description
An Avro Schema. It describes all physical and logical types. See the spec for details.
Variants§
Null
A null type
Boolean
Boolean (physically represented as a single byte)
Int(Option<IntLogical>)
32 bit signed integer (physically represented as a zigzag encoded variable number of bytes)
Long(Option<LongLogical>)
64 bit signed integer (physically represented as a zigzag encoded variable number of bytes)
Float
32 bit float (physically represented as 4 bytes in little endian)
Double
64 bit float (physically represented as 8 bytes in little endian)
Bytes(Option<BytesLogical>)
variable length bytes (physically represented by a zigzag encoded positive integer followed by its number of bytes)
String(Option<StringLogical>)
variable length utf8 (physically represented by a zigzag encoded positive integer followed by its number of bytes)
Record(Record)
Record
Enum(Enum)
Enum with a known number of variants
Array(Box<Schema>)
Array of a uniform type with N entries
Map(Box<Schema>)
A map String -> type
Union(Vec<Schema>)
A union of a heterogeneous number of types
Fixed(Fixed)
todo