Struct brotli_decompressor::ffi::BrotliState
source · [−]pub struct BrotliState<AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> {Show 79 fields
pub state: BrotliRunningState,
pub loop_counter: i32,
pub br: BrotliBitReader,
pub alloc_u8: AllocU8,
pub alloc_u32: AllocU32,
pub alloc_hc: AllocHC,
pub buffer: [u8; 8],
pub buffer_length: u32,
pub pos: i32,
pub max_backward_distance: i32,
pub max_backward_distance_minus_custom_dict_size: i32,
pub max_distance: i32,
pub ringbuffer_size: i32,
pub ringbuffer_mask: i32,
pub dist_rb_idx: i32,
pub dist_rb: [i32; 4],
pub ringbuffer: AllocU8::AllocatedMemory,
pub htree_command_index: u16,
pub context_lookup: &'static [u8; 512],
pub context_map_slice_index: usize,
pub dist_context_map_slice_index: usize,
pub sub_loop_counter: u32,
pub literal_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>,
pub insert_copy_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>,
pub distance_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>,
pub trivial_literal_context: i32,
pub distance_context: i32,
pub meta_block_remaining_len: i32,
pub block_type_length_state: BlockTypeAndLengthState<AllocHC>,
pub distance_postfix_bits: u32,
pub num_direct_distance_codes: u32,
pub distance_postfix_mask: i32,
pub num_dist_htrees: u32,
pub dist_context_map: AllocU8::AllocatedMemory,
pub literal_htree_index: u8,
pub dist_htree_index: u8,
pub large_window: bool,
pub should_wrap_ringbuffer: bool,
pub error_code: BrotliDecoderErrorCode,
pub repeat_code_len: u32,
pub prev_code_len: u32,
pub copy_length: i32,
pub distance_code: i32,
pub rb_roundtrips: usize,
pub partial_pos_out: usize,
pub symbol: u32,
pub repeat: u32,
pub space: u32,
pub table: [HuffmanCode; 32],
pub symbol_lists_index: usize,
pub symbols_lists_array: [u16; 720],
pub next_symbol: [i32; 32],
pub code_length_code_lengths: [u8; 18],
pub code_length_histo: [u16; 16],
pub htree_index: i32,
pub htree_next_offset: u32,
pub context_index: u32,
pub max_run_length_prefix: u32,
pub code: u32,
pub context_map_table: AllocHC::AllocatedMemory,
pub mtf_upper_bound: u32,
pub mtf_or_error_string: Result<[u8; 256], [u8; 256]>,
pub custom_dict: AllocU8::AllocatedMemory,
pub custom_dict_size: i32,
pub substate_metablock_header: BrotliRunningMetablockHeaderState,
pub substate_tree_group: BrotliRunningTreeGroupState,
pub substate_context_map: BrotliRunningContextMapState,
pub substate_uncompressed: BrotliRunningUncompressedState,
pub substate_huffman: BrotliRunningHuffmanState,
pub substate_decode_uint8: BrotliRunningDecodeUint8State,
pub is_last_metablock: u8,
pub is_uncompressed: u8,
pub is_metadata: u8,
pub size_nibbles: u8,
pub window_bits: u32,
pub num_literal_htrees: u32,
pub context_map: AllocU8::AllocatedMemory,
pub context_modes: AllocU8::AllocatedMemory,
pub trivial_literal_contexts: [u32; 8],
}
Fields
state: BrotliRunningState
loop_counter: i32
br: BrotliBitReader
alloc_u8: AllocU8
alloc_u32: AllocU32
alloc_hc: AllocHC
buffer: [u8; 8]
buffer_length: u32
pos: i32
max_backward_distance: i32
max_backward_distance_minus_custom_dict_size: i32
max_distance: i32
ringbuffer_size: i32
ringbuffer_mask: i32
dist_rb_idx: i32
dist_rb: [i32; 4]
ringbuffer: AllocU8::AllocatedMemory
htree_command_index: u16
context_lookup: &'static [u8; 512]
context_map_slice_index: usize
dist_context_map_slice_index: usize
sub_loop_counter: u32
literal_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>
insert_copy_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>
distance_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>
trivial_literal_context: i32
distance_context: i32
meta_block_remaining_len: i32
block_type_length_state: BlockTypeAndLengthState<AllocHC>
distance_postfix_bits: u32
num_direct_distance_codes: u32
distance_postfix_mask: i32
num_dist_htrees: u32
dist_context_map: AllocU8::AllocatedMemory
literal_htree_index: u8
dist_htree_index: u8
large_window: bool
should_wrap_ringbuffer: bool
error_code: BrotliDecoderErrorCode
repeat_code_len: u32
prev_code_len: u32
copy_length: i32
distance_code: i32
rb_roundtrips: usize
partial_pos_out: usize
symbol: u32
repeat: u32
space: u32
table: [HuffmanCode; 32]
symbol_lists_index: usize
symbols_lists_array: [u16; 720]
next_symbol: [i32; 32]
code_length_code_lengths: [u8; 18]
code_length_histo: [u16; 16]
htree_index: i32
htree_next_offset: u32
context_index: u32
max_run_length_prefix: u32
code: u32
context_map_table: AllocHC::AllocatedMemory
mtf_upper_bound: u32
mtf_or_error_string: Result<[u8; 256], [u8; 256]>
custom_dict: AllocU8::AllocatedMemory
custom_dict_size: i32
substate_metablock_header: BrotliRunningMetablockHeaderState
substate_tree_group: BrotliRunningTreeGroupState
substate_context_map: BrotliRunningContextMapState
substate_uncompressed: BrotliRunningUncompressedState
substate_huffman: BrotliRunningHuffmanState
substate_decode_uint8: BrotliRunningDecodeUint8State
is_last_metablock: u8
is_uncompressed: u8
is_metadata: u8
size_nibbles: u8
window_bits: u32
num_literal_htrees: u32
context_map: AllocU8::AllocatedMemory
context_modes: AllocU8::AllocatedMemory
trivial_literal_contexts: [u32; 8]
Implementations
sourceimpl<'brotli_state, AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> BrotliState<AllocU8, AllocU32, AllocHC>
impl<'brotli_state, AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> BrotliState<AllocU8, AllocU32, AllocHC>
pub fn new(alloc_u8: AllocU8, alloc_u32: AllocU32, alloc_hc: AllocHC) -> Self
pub fn new_with_custom_dictionary(
alloc_u8: AllocU8,
alloc_u32: AllocU32,
alloc_hc: AllocHC,
custom_dict: AllocU8::AllocatedMemory
) -> Self
pub fn new_strict(
alloc_u8: AllocU8,
alloc_u32: AllocU32,
alloc_hc: AllocHC
) -> Self
pub fn BrotliStateMetablockBegin(&mut self)
pub fn BrotliStateCleanupAfterMetablock(&mut self)
pub fn BrotliStateIsStreamStart(&self) -> bool
pub fn BrotliStateIsStreamEnd(&self) -> bool
pub fn BrotliHuffmanTreeGroupInit(
&mut self,
group: WhichTreeGroup,
alphabet_size: u16,
max_symbol: u16,
ntrees: u16
)
pub fn BrotliHuffmanTreeGroupRelease(&mut self, group: WhichTreeGroup)
Trait Implementations
Auto Trait Implementations
impl<AllocU8, AllocU32, AllocHC> RefUnwindSafe for BrotliState<AllocU8, AllocU32, AllocHC> where
AllocHC: RefUnwindSafe,
AllocU32: RefUnwindSafe,
AllocU8: RefUnwindSafe,
<AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: RefUnwindSafe,
<AllocU32 as Allocator<u32>>::AllocatedMemory: RefUnwindSafe,
<AllocU8 as Allocator<u8>>::AllocatedMemory: RefUnwindSafe,
impl<AllocU8, AllocU32, AllocHC> Send for BrotliState<AllocU8, AllocU32, AllocHC> where
AllocHC: Send,
AllocU32: Send,
AllocU8: Send,
<AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Send,
<AllocU32 as Allocator<u32>>::AllocatedMemory: Send,
<AllocU8 as Allocator<u8>>::AllocatedMemory: Send,
impl<AllocU8, AllocU32, AllocHC> Sync for BrotliState<AllocU8, AllocU32, AllocHC> where
AllocHC: Sync,
AllocU32: Sync,
AllocU8: Sync,
<AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Sync,
<AllocU32 as Allocator<u32>>::AllocatedMemory: Sync,
<AllocU8 as Allocator<u8>>::AllocatedMemory: Sync,
impl<AllocU8, AllocU32, AllocHC> Unpin for BrotliState<AllocU8, AllocU32, AllocHC> where
AllocHC: Unpin,
AllocU32: Unpin,
AllocU8: Unpin,
<AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Unpin,
<AllocU32 as Allocator<u32>>::AllocatedMemory: Unpin,
<AllocU8 as Allocator<u8>>::AllocatedMemory: Unpin,
impl<AllocU8, AllocU32, AllocHC> UnwindSafe for BrotliState<AllocU8, AllocU32, AllocHC> where
AllocHC: UnwindSafe,
AllocU32: UnwindSafe,
AllocU8: UnwindSafe,
<AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: UnwindSafe,
<AllocU32 as Allocator<u32>>::AllocatedMemory: UnwindSafe,
<AllocU8 as Allocator<u8>>::AllocatedMemory: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more