kona_protocol/compression/brotli/mod.rs
1//! Contains brotli compression and decompression utilities.
2
3#[cfg(feature = "std")]
4mod compress;
5#[cfg(feature = "std")]
6pub use compress::{BrotliCompressionError, BrotliCompressor};
7
8mod decompress;
9pub use decompress::{BrotliDecompressionError, decompress_brotli};
10
11/// The brotli encoding level used in Optimism.
12///
13/// See: <https://github.com/ethereum-optimism/optimism/blob/develop/op-node/rollup/derive/types.go#L50>
14#[derive(Debug, Clone, Copy, PartialEq, Eq)]
15pub enum BrotliLevel {
16 /// The fastest compression level.
17 Brotli9 = 9,
18 /// The default compression level.
19 Brotli10 = 10,
20 /// The highest compression level.
21 Brotli11 = 11,
22}
23
24impl From<BrotliLevel> for u32 {
25 fn from(level: BrotliLevel) -> Self {
26 level as Self
27 }
28}