packages feed

hw-streams 0.0.0.5 → 0.0.0.6

raw patch · 3 files changed

+45/−2 lines, 3 filesPVP: minor bump suggested

API additions: PVP suggests at least a minor version bump

API changes (from Hackage documentation)

+ HaskellWorks.Data.Streams.ByteString: stream :: ByteString -> Stream Word8
+ HaskellWorks.Data.Streams.ByteString: streamChunks :: [ByteString] -> Stream Word8
+ HaskellWorks.Data.Streams.ByteString.Lazy: stream :: ByteString -> Stream Word8

Files

hw-streams.cabal view
@@ -3,7 +3,7 @@ -- see: https://github.com/sol/hpack  name:           hw-streams-version:        0.0.0.5+version:        0.0.0.6 synopsis:       Primitive functions and data types description:    Primitive functions and data types. category:       Data@@ -15,7 +15,7 @@ copyright:      2016-2018 John Ky license:        BSD3 license-file:   LICENSE-tested-with:    GHC == 8.4.2, GHC == 8.2.2, GHC == 8.0.2, GHC == 7.10.3+tested-with:    GHC == 8.6.1, GHC == 8.4.4, GHC == 8.2.2, GHC == 8.0.2, GHC == 7.10.3 build-type:     Simple cabal-version:  >= 1.10 @@ -50,6 +50,8 @@   if flag(bounds-checking-enabled)     cpp-options: -DBOUNDS_CHECKING_ENABLED   exposed-modules:+      HaskellWorks.Data.Streams.ByteString+      HaskellWorks.Data.Streams.ByteString.Lazy       HaskellWorks.Data.Streams.Internal       HaskellWorks.Data.Streams.Internal.Bundle       HaskellWorks.Data.Streams.Internal.Chunk
+ src/HaskellWorks/Data/Streams/ByteString.hs view
@@ -0,0 +1,29 @@+{-# LANGUAGE ScopedTypeVariables #-}++module HaskellWorks.Data.Streams.ByteString+  ( streamChunks+  , stream+  ) where++import Data.Word+import HaskellWorks.Data.Streams.Size+import HaskellWorks.Data.Streams.Stream (Step (..), Stream (..))+import Prelude                          hiding (foldl, map, sum, zipWith)++import qualified Data.ByteString as BS++streamChunks :: [BS.ByteString] -> Stream Word8+streamChunks ass = Stream step (ass, 0) Unknown+  where step (bss, i) = case bss of+          cs:css -> if i < BS.length cs+            then Yield (BS.index cs i) (bss, i + 1)+            else Skip (css, 0)+          [] -> Done+{-# INLINE [1] streamChunks #-}++stream :: BS.ByteString -> Stream Word8+stream bs = Stream step (bs, 0) Unknown+  where step (cs, i) = if i < BS.length cs+          then Yield (BS.index cs i) (cs, i + 1)+          else Done+{-# INLINE [1] stream #-}
+ src/HaskellWorks/Data/Streams/ByteString/Lazy.hs view
@@ -0,0 +1,12 @@+module HaskellWorks.Data.Streams.ByteString.Lazy+  ( stream+  ) where++import Data.Word+import HaskellWorks.Data.Streams.Stream (Stream (..))++import qualified Data.ByteString.Lazy                 as LBS+import qualified HaskellWorks.Data.Streams.ByteString as BS++stream :: LBS.ByteString -> Stream Word8+stream = BS.streamChunks . LBS.toChunks