scuffle_amf0/lib.rs
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
//! A pure-rust implementation of AMF0 encoder and decoder.
//!
//! This crate provides a simple interface for encoding and decoding AMF0 data.
//!
//! # Examples
//!
//! ```rust
//! # fn test() -> Result<(), Box<dyn std::error::Error>> {
//! use scuffle_amf0::Amf0Decoder;
//! use scuffle_amf0::Amf0Encoder;
//! # let bytes = &[0x01, 0x01];
//! # let mut writer = Vec::new();
//!
//! // Create a new decoder
//! let mut reader = Amf0Decoder::new(bytes);
//! let value = reader.decode()?;
//!
//! // .. do something with the value
//!
//! // Encode a value into a writer
//! Amf0Encoder::encode(&mut writer, &value)?;
//!
//! # assert_eq!(writer, bytes);
//! # Ok(())
//! # }
//! # test().expect("test failed");
//! ```
#![cfg_attr(all(coverage_nightly, test), feature(coverage_attribute))]
mod decode;
mod define;
mod encode;
mod errors;
pub use crate::decode::Amf0Decoder;
pub use crate::define::{Amf0Marker, Amf0Value};
pub use crate::encode::Amf0Encoder;
pub use crate::errors::{Amf0ReadError, Amf0WriteError};