org.apache.lucene.util.compress

## Class LZ4

- java.lang.Object
- - org.apache.lucene.util.compress.LZ4

    public final class LZ4
    extends Object

LZ4 compression and decompression routines. https://github.com/lz4/lz4/tree/dev/lib http://fastcompression.blogspot.fr/p/lz4.html The high-compression option is a simpler version of the one of the original algorithm, and only retains a better hash table that remembers about more occurrences of a previous 4-bytes sequence, and removes all the logic about handling of the case when overlapping matches are found.

### Nested Class Summary

Nested Classes
`static class` `LZ4.FastCompressionHashTable` Simple lossy `HashTable` that only stores the last ocurrence for each hash on `2^14` bytes of memory.
`static class` `LZ4.HighCompressionHashTable` A higher-precision `HashTable`.

### Method Summary

All Methods Static Methods Concrete Methods
`static void` `compress(byte[] bytes, int off, int len, DataOutput out, org.apache.lucene.util.compress.LZ4.HashTable ht)` Compress `bytes[off:off+len]` into `out` using at most 16KB of memory.
`static int` `decompress(DataInput compressed, int decompressedLen, byte[] dest)` Decompress at least `decompressedLen` bytes into `dest[dOff:]`.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### decompress

    public static int decompress(DataInput compressed,
                                 int decompressedLen,
                                 byte[] dest)
                          throws IOException

Decompress at least `decompressedLen` bytes into `dest[dOff:]`. Please note that `dest` must be large enough to be able to hold all decompressed data (meaning that you need to know the total decompressed length).

Throws:
  `IOException`

#### compress

    public static void compress(byte[] bytes,
                                int off,
                                int len,
                                DataOutput out,
                                org.apache.lucene.util.compress.LZ4.HashTable ht)
                         throws IOException

Compress `bytes[off:off+len]` into `out` using at most 16KB of memory. `ht` shouldn't be shared across threads but can safely be reused.

Throws:
  `IOException`