1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
//! Matter TLV (Tag-Length-Value) encoding and decoding.
//!
//! This is Milestone 1 of the `matter-rust` roadmap.
//!
//! # Scope
//!
//! Phases 1-4 (complete, shipping as `matter-codec` 0.1.0): all scalar
//! element types, UTF-8 and octet strings, every tag form (anonymous,
//! context, common profile, implicit profile, fully-qualified), and
//! containers (structure, array, list) with recursive tree-builder
//! decoding and a 32-level depth limit. Verified by spec test vectors,
//! a `proptest` round-trip property, and a `cargo-fuzz` target.
//!
//! # Usage
//!
//! ```
//! use matter_codec::{Tag, TlvWriter};
//! # fn main() -> Result<(), matter_codec::Error> {
//! let mut bytes = Vec::new();
//! let mut writer = TlvWriter::new(&mut bytes);
//! writer.put_bool(Tag::Anonymous, true)?;
//! assert_eq!(bytes, [0x09]);
//! # Ok(())
//! # }
//! ```
pub use ;
pub use ;
pub use Tag;
pub use Value;
pub use TlvWriter;