codex_percent/
types.rs

1//! Types
2
3#[cfg(feature = "fixed")]
4mod fixed {
5    /// Fixed size Encoder
6    #[derive(Debug)]
7    #[cfg(feature = "encode")]
8    pub struct FixedEncoder<'i, const S: usize> {
9        pub(crate) cur_block: [u8; S],
10        pub(crate) cur_raw: Option<&'i str>,
11    }
12
13    /// Fixed size Decoder
14    #[derive(Debug)]
15    #[cfg(feature = "decode")]
16    pub struct FixedDecoder<'o, const S: usize> {
17        #[allow(dead_code)]
18        pub(crate) cur_block: [u8; S],
19        #[allow(dead_code)]
20        pub(crate) cur_raw: Option<&'o str>,
21    }
22}
23
24#[cfg(feature = "fixed")]
25pub use fixed::*;
26
27#[cfg(all(feature = "vec", any(feature = "alloc", feature = "std")))]
28mod vec {
29
30    /// Vec Encoder
31    #[derive(Debug)]
32    #[cfg(feature = "encode")]
33    pub struct VecEncoder;
34
35    /// Vec Decoder
36    #[derive(Debug)]
37    #[cfg(feature = "decode")]
38    pub struct VecDecoder;
39}
40
41#[cfg(all(feature = "vec", any(feature = "alloc", feature = "std")))]
42pub use vec::*;