//! Private Zstandard decoder implementation.
//!
//! The layers, from the bitstream up:
//!
//! - [`bits`]: backward bit reader for Huffman and FSE streams, forward
//! reader for table descriptions;
//! - [`fse`]: FSE table descriptions, decoding tables and the Huffman
//! weight decoder;
//! - [`huffman`]: Huffman tree descriptions and one- or four-stream literal
//! decoding;
//! - [`literals`] and [`sequences`]: the two sections of a compressed block,
//! including sequence execution against the history;
//! - [`block`]: block headers and the per-frame entropy state;
//! - [`frame`]: frame headers, limits, content size and checksum checks;
//! - [`history`]: the streaming output buffer that doubles as the window;
//! - [`stream`]: the resumable frame-sequencing state machine and the
//! one-shot driver.
//!
//! Entropy-level modules report [`crate::decompressor::InvalidDataKind`];
//! the frame and stream layers turn those into
//! [`crate::decompressor::DecodeError`] alongside limit, checksum and
//! lifecycle errors.
pub use Stream;