Module fixed_opt

Module fixed_opt 

Source
Expand description

Efficient (de)serialization of optional Avro fixed values.

This module is intended to be used through the Serde with attribute. Use apache_avro::serde::fixed for non-optional fixed values.

When used with different serialization formats, this is equivalent to serde_bytes.

See usage with below example:

#[derive(AvroSchema, Serialize, Deserialize)]
struct StructWithBytes {
    #[avro(with)]
    #[serde(with = "apache_avro::serde::bytes_opt")]
    vec_field: Option<Vec<u8>>,

    #[avro(with = apache_avro::serde::fixed_opt::get_schema_in_ctxt::<6>)]
    #[serde(with = "apache_avro::serde::fixed_opt")]
    fixed_field: Option<[u8; 6]>,
}

Functionsยง

deserialize
get_record_fields_in_ctxt
Returns None
get_schema_in_ctxt
Returns Schema::Union(Schema::Null, Schema::Fixed(N)) where the fixed schema is named serde_avro_fixed_{N}
serialize