pub struct EncoderDictionary { /* private fields */ }Expand description
A dictionary prepared for the ENCODER side, analogous to zstd’s CDict
(vs the decoder’s Dictionary / DDict).
It carries the entropy tables, content, and repeat-offset history the
compressor needs, but is a distinct type with no decode path: there is
no way to turn it into a DictionaryHandle
or feed it to a FrameDecoder. That keeps
the compress-only state (which may have been parsed without building the
decode lookup tables, see
set_dictionary_from_bytes)
from ever reaching the decode side — the encoder/decoder dictionary split
mirrors C zstd’s CDict / DDict.
Implementations§
Source§impl EncoderDictionary
impl EncoderDictionary
Sourcepub fn from_dictionary(dictionary: Dictionary) -> Self
pub fn from_dictionary(dictionary: Dictionary) -> Self
Wrap an already-parsed Dictionary for
encoder use. A fully-decoded dictionary is valid here; only the encoder
entropy tables, content, and offset history are read.
Sourcepub fn from_bytes(raw_dictionary: &[u8]) -> Result<Self, DictionaryDecodeError>
pub fn from_bytes(raw_dictionary: &[u8]) -> Result<Self, DictionaryDecodeError>
Parse a serialized dictionary blob for encoder use, skipping the decode
lookup-table build the encoder never reads (see
Dictionary::decode_dict_for_encoding). The encoder entropy tables — and
thus the emitted frame — are identical to a full parse.
Sourcepub fn id(&self) -> u32
pub fn id(&self) -> u32
The dictionary id.
A dictionary attached for encoding always has a non-zero id (the
set_dictionary* / set_encoder_dictionary attach path rejects a
zero id). This getter, however, reflects the wrapped dictionary as-is:
an EncoderDictionary built via Self::from_dictionary from a raw
Dictionary with id == 0 reports 0 here until it is attached.
Trait Implementations§
Source§impl Clone for EncoderDictionary
impl Clone for EncoderDictionary
Source§fn clone(&self) -> EncoderDictionary
fn clone(&self) -> EncoderDictionary
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more