Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
De.Lz77
SourceThe type for input sources. With a `Manual
source the client must provide input with src
. With `String
or `Channel
source the client can safely discard `Await
case (with assert false
).
The type for states.
literals s
is frequencies of lengths and literals emitted by s
since it was created.
distances s
is frequencies of distances emitted by s
since it was created.
src s i j l
provides s
with l
bytes to read, starting at j
in i
. This byte range is read by calls to compress
with s
until `Await
is returned. To signal the end of input call the function with l = 0
.
compress s
is:
`Await
if s
has a `Manual
input source and awits for more input. The client must use src
to provide it.`Flush
if s
filled completely the shared-queue q
(given in state
). Queue.junk_exn
or Queue.pop_exn
can be used to give some free cells to compress
.`End
if s
compressed all input. Given shared-queue q
is possibly not empty.