mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 04:07:45 +00:00
LibCompress: Move CanonicalCode
's initializers inside CanonicalCode
These routines: - read_prefix_code - read_simple_prefix_code - read_complex_prefix_code were methods of `BrotliDecompressionStream` taking a `CanonicalCode` as an out parameter. This patch puts them in `CanonicalCode` as static methods.
This commit is contained in:
parent
d2dd4142d1
commit
9248fd7f33
2 changed files with 38 additions and 46 deletions
|
@ -27,10 +27,13 @@ public:
|
|||
};
|
||||
|
||||
class CanonicalCode {
|
||||
friend class BrotliDecompressionStream;
|
||||
|
||||
public:
|
||||
CanonicalCode() = default;
|
||||
|
||||
static ErrorOr<CanonicalCode> read_prefix_code(LittleEndianInputBitStream&, size_t alphabet_size);
|
||||
static ErrorOr<CanonicalCode> read_simple_prefix_code(LittleEndianInputBitStream&, size_t alphabet_size);
|
||||
static ErrorOr<CanonicalCode> read_complex_prefix_code(LittleEndianInputBitStream&, size_t alphabet_size, size_t hskip);
|
||||
|
||||
ErrorOr<size_t> read_symbol(LittleEndianInputBitStream&) const;
|
||||
void clear()
|
||||
{
|
||||
|
@ -39,6 +42,8 @@ public:
|
|||
}
|
||||
|
||||
private:
|
||||
static ErrorOr<size_t> read_complex_prefix_code_length(LittleEndianInputBitStream&);
|
||||
|
||||
Vector<size_t> m_symbol_codes;
|
||||
Vector<size_t> m_symbol_values;
|
||||
};
|
||||
|
@ -114,11 +119,7 @@ private:
|
|||
ErrorOr<size_t> read_window_length();
|
||||
ErrorOr<size_t> read_size_number_of_nibbles();
|
||||
ErrorOr<size_t> read_variable_length();
|
||||
ErrorOr<size_t> read_complex_prefix_code_length();
|
||||
|
||||
ErrorOr<void> read_prefix_code(CanonicalCode&, size_t alphabet_size);
|
||||
ErrorOr<void> read_simple_prefix_code(CanonicalCode&, size_t alphabet_size);
|
||||
ErrorOr<void> read_complex_prefix_code(CanonicalCode&, size_t alphabet_size, size_t hskip);
|
||||
ErrorOr<void> read_context_map(size_t number_of_codes, Vector<u8>& context_map, size_t context_map_size);
|
||||
ErrorOr<void> read_block_configuration(Block&);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue