Skip to main content

oximedia_bitstream/write/
mod.rs

1// Copyright 2017 Brian Langenberger
2// Copyright 2024-2026 COOLJAPAN OU (Team Kitasan)
3//
4// Licensed under the Apache License, Version 2.0 or the MIT license,
5// at your option. See the LICENSE-APACHE / LICENSE-MIT files for details.
6
7//! Traits and implementations for writing bits to a stream.
8//!
9//! Split across multiple files during the 0.1.4 refactor so that no
10//! single source exceeds the COOLJAPAN 2 000-line guideline.
11
12#![warn(missing_docs)]
13
14use super::{
15    BitCount, Checkable, CheckedSigned, CheckedUnsigned, Endianness, Integer, Numeric, PhantomData,
16    Primitive, SignedBitCount, SignedInteger, UnsignedInteger, VBRInteger,
17};
18
19#[cfg(feature = "alloc")]
20pub use bit_recorder::BitRecorder;
21
22#[cfg(feature = "alloc")]
23mod bit_recorder;
24mod bit_write;
25mod bit_write2;
26mod bit_writer;
27mod byte_writer;
28mod counter;
29mod stream_traits;
30
31pub use bit_write::BitWrite;
32pub use bit_write2::BitWrite2;
33pub use bit_writer::BitWriter;
34pub use byte_writer::{ByteWrite, ByteWriter};
35#[allow(deprecated)]
36pub use counter::BitCounter;
37pub use counter::{BitsWritten, Counter, Overflowed};
38pub use stream_traits::{
39    ToBitStream, ToBitStreamUsing, ToBitStreamWith, ToByteStream, ToByteStreamUsing,
40    ToByteStreamWith,
41};