Class InflaterBackend

extends Object
A pure Toit decompressing backend for the DEFLATE format.
You would normally use BufferingInflater, CopyingInflater or Inflater which wrap this class in a more convenient API.
This class needs an InflateHistory object to help it look back in up to 32k of previously decompressed data (or whatever size the compressor was set to).

Class summary


constructor history_/InflateHistory --zlib-header-footer/bool= --gzip/bool=

Constructors

constructor history_/InflateHistory --zlib-header-footer/bool=true --gzip/bool=false

Methods

close -> none

operator == other/any -> bool
Whether this object is equal to the other.
By default, identical is used for equality.
Inheritance
Classes overwrite this operator to get an equality specific to their needs. Equality operators often compare the type and field contents. For example:

class Pin:
  number/int

  constructor .number:

  operator == other:
    if other is not Pin: return false
    return number == other.number
A class doesn't have to follow the above format, but it must keep the operator in sync with any hash-code method. That is, if a class has a hash-code member, then the equality and hash-code must agree. If two instances are equal (a == b), then their hash codes must also be equal (a.hash-code == b.hash-code).

Returns the input data that was not used, only whole bytes.

Stringifies this object.
Inheritance
Objects that need a human-friendly string representation should overwrite this method. The default string is based on the internal class-ID.

write buffer/ByteArray from/int=0 to/int=buffer.size -> int
Writes a new byte array to the decompressor.