[][src]Struct brotli_decompressor::BrotliState

pub struct BrotliState<AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> {
    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: BrotliRunningStateloop_counter: i32br: BrotliBitReaderalloc_u8: AllocU8alloc_u32: AllocU32alloc_hc: AllocHCbuffer: [u8; 8]buffer_length: u32pos: i32max_backward_distance: i32max_backward_distance_minus_custom_dict_size: i32max_distance: i32ringbuffer_size: i32ringbuffer_mask: i32dist_rb_idx: i32dist_rb: [i32; 4]ringbuffer: AllocU8::AllocatedMemoryhtree_command_index: u16context_lookup: &'static [u8; 512]context_map_slice_index: usizedist_context_map_slice_index: usizesub_loop_counter: u32literal_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>insert_copy_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>distance_hgroup: HuffmanTreeGroup<AllocU32, AllocHC>trivial_literal_context: i32distance_context: i32meta_block_remaining_len: i32block_type_length_state: BlockTypeAndLengthState<AllocHC>distance_postfix_bits: u32num_direct_distance_codes: u32distance_postfix_mask: i32num_dist_htrees: u32dist_context_map: AllocU8::AllocatedMemoryliteral_htree_index: u8dist_htree_index: u8large_window: boolshould_wrap_ringbuffer: boolerror_code: BrotliDecoderErrorCoderepeat_code_len: u32prev_code_len: u32copy_length: i32distance_code: i32rb_roundtrips: usizepartial_pos_out: usizesymbol: u32repeat: u32space: u32table: [HuffmanCode; 32]symbol_lists_index: usizesymbols_lists_array: [u16; 720]next_symbol: [i32; 32]code_length_code_lengths: [u8; 18]code_length_histo: [u16; 16]htree_index: i32htree_next_offset: u32context_index: u32max_run_length_prefix: u32code: u32context_map_table: AllocHC::AllocatedMemorymtf_upper_bound: u32mtf_or_error_string: Result<[u8; 256], [u8; 256]>custom_dict: AllocU8::AllocatedMemorycustom_dict_size: i32substate_metablock_header: BrotliRunningMetablockHeaderStatesubstate_tree_group: BrotliRunningTreeGroupStatesubstate_context_map: BrotliRunningContextMapStatesubstate_uncompressed: BrotliRunningUncompressedStatesubstate_huffman: BrotliRunningHuffmanStatesubstate_decode_uint8: BrotliRunningDecodeUint8Stateis_last_metablock: u8is_uncompressed: u8is_metadata: u8size_nibbles: u8window_bits: u32num_literal_htrees: u32context_map: AllocU8::AllocatedMemorycontext_modes: AllocU8::AllocatedMemorytrivial_literal_contexts: [u32; 8]

Methods

impl<'brotli_state, AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> BrotliState<AllocU8, AllocU32, AllocHC>[src]

pub fn new(alloc_u8: AllocU8, alloc_u32: AllocU32, alloc_hc: AllocHC) -> Self[src]

pub fn new_with_custom_dictionary(
    alloc_u8: AllocU8,
    alloc_u32: AllocU32,
    alloc_hc: AllocHC,
    custom_dict: AllocU8::AllocatedMemory
) -> Self
[src]

pub fn new_strict(
    alloc_u8: AllocU8,
    alloc_u32: AllocU32,
    alloc_hc: AllocHC
) -> Self
[src]

pub fn BrotliStateMetablockBegin(&mut self)[src]

pub fn BrotliStateCleanupAfterMetablock(&mut self)[src]

pub fn BrotliStateIsStreamStart(&self) -> bool[src]

pub fn BrotliStateIsStreamEnd(&self) -> bool[src]

pub fn BrotliHuffmanTreeGroupInit(
    &mut self,
    group: WhichTreeGroup,
    alphabet_size: u16,
    max_symbol: u16,
    ntrees: u16
)
[src]

pub fn BrotliHuffmanTreeGroupRelease(&mut self, group: WhichTreeGroup)[src]

Trait Implementations

impl<'brotli_state, AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> Drop for BrotliState<AllocU8, AllocU32, AllocHC>[src]

Auto Trait Implementations

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

Blanket Implementations

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]