on master help sign in
stop exporting ArrayStream APIs from Array module

This module is now only for convenience as all APIs can be expressed in terms of Stream APIs with the same performance.

commitb8b3e17eef076cb5d5c39542d4600fcbc8a633a2 authorHarendra Kumar <harendra.kumar@gmail.com> dateThu 26 Sep 2019, 01:21 (7 years ago) parent8fbb4d4
4 files changed+10−22
examples/HandleIO.hs+3−2 src/Streamly/Benchmark/FileIO/Array.hs+5−4 src/Streamly/Memory/Array.hs−15 test/String.hs+2−1
examples/HandleIO.hs+3−2
@@ -1,6 +1,7 @@
11import qualified Streamly.Prelude as S
22import qualified Streamly.Data.Fold as FL
3−import qualified Streamly.Memory.Array as A
3+-- import qualified Streamly.Memory.Array as A
4+import qualified Streamly.Internal.Memory.ArrayStream as AS
45import qualified Streamly.FileSystem.Handle as FH
56import qualified System.IO as FH
67-- import qualified Streamly.FileSystem.FD as FH
@@ -25,7 +26,7 @@ ord' = (fromIntegral . ord)
2526
2627wcl :: FH.Handle -> IO ()
2728wcl src = print =<< (S.length
28− $ A.splitOn 10
29+ $ AS.splitOn 10
2930 $ FH.readArrays src)
3031{-
3132-- Char stream version
src/Streamly/Benchmark/FileIO/Array.hs+5−4
@@ -44,6 +44,7 @@ import qualified Streamly.Memory.Array as A
4444import qualified Streamly.Prelude as S
4545import qualified Streamly.Data.String as SS
4646import qualified Streamly.Internal.Prelude as Internal
47+import qualified Streamly.Internal.Memory.ArrayStream as AS
4748
4849#ifdef INSPECTION
4950import Foreign.Storable (Storable)
@@ -81,7 +82,7 @@ inspect $ 'countBytes `hasNoType` ''Step
8182-- | Count the number of lines in a file.
8283{-# INLINE countLines #-}
8384countLines :: Handle -> IO Int
84−countLines = S.length . A.splitOnSuffix 10 . FH.readArrays
85+countLines = S.length . AS.splitOnSuffix 10 . FH.readArrays
8586
8687#ifdef INSPECTION
8788inspect $ hasNoTypeClasses 'countLines
@@ -92,7 +93,7 @@ inspect $ 'countLines `hasNoType` ''Step
9293-- | Count the number of lines in a file.
9394{-# INLINE countWords #-}
9495countWords :: Handle -> IO Int
95−countWords = S.length . A.splitOn 32 . FH.readArrays
96+countWords = S.length . AS.splitOn 32 . FH.readArrays
9697
9798#ifdef INSPECTION
9899inspect $ hasNoTypeClasses 'countWords
@@ -141,7 +142,7 @@ linesUnlinesCopy :: Handle -> Handle -> IO ()
141142linesUnlinesCopy inh outh =
142143 S.runFold (FH.writeArraysInChunksOf (1024*1024) outh)
143144 $ Internal.insertAfterEach (return $ A.fromList [10])
144− $ A.splitOnSuffix 10
145+ $ AS.splitOnSuffix 10
145146 $ FH.readArraysOf (1024*1024) inh
146147
147148#ifdef INSPECTION
@@ -156,7 +157,7 @@ wordsUnwordsCopy inh outh =
156157 S.runFold (FH.writeArraysInChunksOf (1024*1024) outh)
157158 $ S.intersperse (A.fromList [32])
158159 -- XXX use a word splitting combinator
159− $ A.splitOn 32
160+ $ AS.splitOn 32
160161 $ FH.readArraysOf (1024*1024) inh
161162
162163#ifdef INSPECTION
src/Streamly/Memory/Array.hs−15
@@ -120,20 +120,6 @@ module Streamly.Memory.Array
120120 -- , runStreamFold
121121 , runFold
122122 -}
123−
124− -- * Streams of Arrays
125− -- -- ** Creation
126− -- , AS.arraysOf
127−
128− -- -- ** Elimination
129− -- , AS.concat
130− -- , AS.concatRev
131− -- , AS.toArray
132−
133− -- ** Transformation
134− , AS.splitOn
135− , AS.splitOnSuffix
136− -- , AS.compact -- compact
137123 )
138124where
139125
@@ -149,7 +135,6 @@ import Streamly.Streams.StreamK.Type (IsStream)
149135import Streamly.Internal.Data.Fold.Types (Fold(..))
150136
151137import qualified Streamly.Internal.Memory.Array.Types as A
152−import qualified Streamly.Internal.Memory.ArrayStream as AS
153138import qualified Streamly.Streams.Prelude as P
154139import qualified Streamly.Streams.Serial as Serial
155140import qualified Streamly.Streams.StreamD as D
test/String.hs+2−1
@@ -13,6 +13,7 @@ import Test.QuickCheck.Monadic (run, monadicIO, assert)
1313import Test.Hspec as H
1414
1515import qualified Streamly.Memory.Array as A
16+import qualified Streamly.Internal.Memory.ArrayStream as AS
1617import qualified Streamly.Prelude as S
1718import qualified Streamly.Data.String as SS
1819
@@ -75,7 +76,7 @@ testLinesArray =
7576 monadicIO $ do
7677 xs <- S.toList
7778 $ S.map A.toList
78− $ A.splitOnSuffix 10
79+ $ AS.splitOnSuffix 10
7980 $ S.yield (A.fromList list)
8081 assert (xs == map (map (fromIntegral . ord))
8182 (lines (map (chr . fromIntegral) list)))