Expand description
Support for (de-)serialising CBOR with serde.
In contrast to minicbor-derive, this serde-based implementation makes no attempt to be particularly clever with regards to forward and backward compatibility, nor does it use integers instead of strings for struct field names or enum constructors. If those features are important, consider using minicbor-derive instead.
§Example
use serde::{Deserialize, Serialize};
#[derive(Debug, Default, Serialize, Deserialize, PartialEq, Eq)]
struct S {
field: bool
}
let s1 = S::default();
let cbor = minicbor_serde::to_vec(&s1)?;
let s2: S = minicbor_serde::from_slice(&cbor)?;
assert_eq!(s1, s2);
let mut buf = Vec::new();
let mut ser = minicbor_serde::Serializer::new(&mut buf);
s1.serialize(&mut ser)?;
let mut de = minicbor_serde::Deserializer::new(&buf);
let s3 = S::deserialize(&mut de)?;
assert_eq!(s1, s3);
Modules§
Structs§
- Deserializer
- An implementation of
serde::Deserializerusing aminicbor::Decoder. - Serializer
- An implementation of
serde::Serializerusing aminicbor::Encoder.
Functions§
- from_
slice - Deserialise a type implementing
serde::Deserializefrom the given byte slice. - to_vec
- Serialise a type implementing
serde::Serializeand return the encoded byte vector.