@@ -23,7 +23,9 @@
2323-- arrays.
2424
2525module Streamly.Internal.Data.Array.Foreign.Mut
26− ( Array
26+ (
27+ -- * Type
28+ Array
2729 -- , writeIndex
2830 -- , writeFrom -- start writing at the given position
2931 -- , writeFromRev
@@ -35,7 +37,10 @@ module Streamly.Internal.Data.Array.Foreign.Mut
3537 -- , writeChunksOfFrom
3638 -- , ...
3739
40+ -- * Mutation
3841 , writeIndex
42+ , snoc
43+
3944 --, writeIndices
4045 --, writeRanges
4146
@@ -44,6 +49,29 @@ module Streamly.Internal.Data.Array.Foreign.Mut
4449 -- , shuffleBy
4550 -- , foldtWith
4651 -- , foldbWith
52+
53+ -- * Folding
54+ , foldl'
55+ , foldr
56+
57+ -- * Composable Folds
58+ , writeN
59+ , write
60+
61+ -- * Unfolds
62+ , read
63+
64+ -- * To containers
65+ , toList
66+
67+ -- * Combining
68+ , spliceWith
69+ , spliceWithDoubling
70+ , spliceTwo
71+
72+ -- * Splitting
73+ , breakOn
74+ , splitAt
4775 )
4876where
4977
@@ -51,7 +79,8 @@ import Control.Monad.IO.Class (MonadIO(..))
5179import Foreign.Storable (Storable(..))
5280import Streamly.Internal.BaseCompat (unsafeWithForeignPtr)
5381
54−import Prelude hiding (length)
82+import Prelude hiding (foldr, length, read, splitAt)
83+
5584import Streamly.Internal.Data.Array.Foreign.Mut.Type
5685
5786-- | /O(1)/ Write the given element at the given index in the array.