#[non_exhaustive]pub enum TDEFLFlush {
None = 0,
Partial = 1,
Sync = 2,
Full = 3,
Finish = 4,
PartialOpt = 5,
SyncOpt = 6,
NoSync = 7,
}Expand description
A list of deflate flush types.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
None = 0
Normal operation.
Compress as much as there is space for, and then return waiting for more input.
Partial = 1
Try to flush all the current data and output an empty fixed block (10 bits) to synchonize the stream.
Sync = 2
Try to flush all the current data and output an empty raw block (3-10 bits + 32 bits) to synchonize the stream.
Full = 3
Same as Sync, but reset the dictionary so that the following data does not
depend on previous data.
Finish = 4
Try to flush everything and end the deflate stream.
On success this will yield a TDEFLStatus::Done return status.
PartialOpt = 5
Try to flush all the current data and, if data is unaligned, output an empty fixed block (10 bits) to synchonize the stream.
SyncOpt = 6
Try to flush all the current data and, if data is unaligned, output an empty raw block (3-10 bits + 32 bits) to synchonize the stream.
NoSync = 7
Try to flush the current data but without any sync, which may
leave up to 7 bits of data not output. You can use
TDEFLFlush::PartialOpt or TDEFLFlush::SyncOpt to add a
sync sequence on a future call if you later decide that you
have space downstream to forward that final byte.