streaming-commons 0.1.4.2 → 0.1.5
raw patch · 4 files changed
+25/−1 lines, 4 files
Files
- Data/Streaming/Zlib.hs +15/−0
- Data/Streaming/Zlib/Lowlevel.hs +4/−0
- cbits/zlib-helper.c +5/−0
- streaming-commons.cabal +1/−1
Data/Streaming/Zlib.hs view
@@ -33,6 +33,7 @@ , feedDeflate , finishDeflate , flushDeflate+ , fullFlushDeflate -- * Data types , WindowBits (..) , defaultWindowBits@@ -281,3 +282,17 @@ flushDeflate :: Deflate -> Popper flushDeflate (Deflate (fzstr, fbuff)) = drain fbuff fzstr Nothing c_call_deflate_flush True++-- | Full flush the deflation buffer. Useful for interactive+-- applications where previously streamed data may not be+-- available. Using `fullFlushDeflate` too often can seriously degrade+-- compression. Internally this passes Z_FULL_FLUSH to the zlib+-- library.+--+-- Like 'flushDeflate', 'fullFlushDeflate' does not signal end of input,+-- meaning you can feed more uncompressed data afterward.+--+-- Since 0.1.5+fullFlushDeflate :: Deflate -> Popper+fullFlushDeflate (Deflate (fzstr, fbuff)) =+ drain fbuff fzstr Nothing c_call_deflate_full_flush True
Data/Streaming/Zlib/Lowlevel.hs view
@@ -18,6 +18,7 @@ , c_call_deflate_noflush , c_call_deflate_finish , c_call_deflate_flush+ , c_call_deflate_full_flush , c_call_deflate_set_dictionary , c_call_inflate_set_dictionary ) where@@ -88,6 +89,9 @@ foreign import ccall unsafe "streaming_commons_call_deflate_flush" c_call_deflate_flush :: ZStream' -> IO CInt++foreign import ccall unsafe "streaming_commons_call_deflate_full_flush"+ c_call_deflate_full_flush :: ZStream' -> IO CInt foreign import ccall unsafe "streaming_commons_deflate_set_dictionary" c_call_deflate_set_dictionary :: ZStream' -> Ptr CChar -> CUInt -> IO ()
cbits/zlib-helper.c view
@@ -91,6 +91,11 @@ return deflate(stream, Z_SYNC_FLUSH); } +int streaming_commons_call_deflate_full_flush (z_stream *stream)+{+ return deflate(stream, Z_FULL_FLUSH);+}+ int streaming_commons_call_deflate_finish (z_stream *stream) { return deflate(stream, Z_FINISH);
streaming-commons.cabal view
@@ -1,5 +1,5 @@ name: streaming-commons-version: 0.1.4.2+version: 0.1.5 synopsis: Common lower-level functions needed by various streaming data libraries description: Provides low-dependency functionality commonly needed by various streaming data libraries, such as conduit and pipes. homepage: https://github.com/fpco/streaming-commons