on master help sign in
Start using fusion-plugin annotations.
bd33fc7Pranay Sashank
src/Streamly/Internal/Data/Stream/StreamD/Type.hs+2
@@ -74,6 +74,7 @@ import Data.Functor.Identity (Identity(..))
74import GHC.Base (build)
74import GHC.Base (build)
75import GHC.Types (SPEC(..))
75import GHC.Types (SPEC(..))
76import Prelude hiding (map, mapM, foldr, take, concatMap)
76import Prelude hiding (map, mapM, foldr, take, concatMap)
77+import Fusion.Plugin.Types (Fuse(..))
77
78
78import Streamly.Internal.Data.SVar (State(..), adaptState, defState)
79import Streamly.Internal.Data.SVar (State(..), adaptState, defState)
79import Streamly.Internal.Data.Fold.Types (Fold(..), Fold2(..))
80import Streamly.Internal.Data.Fold.Types (Fold(..), Fold2(..))
@@ -87,6 +88,7 @@ import qualified Streamly.Internal.Data.Stream.StreamK as K
87-- | A stream is a succession of 'Step's. A 'Yield' produces a single value and
88-- | A stream is a succession of 'Step's. A 'Yield' produces a single value and
88-- the next state of the stream. 'Stop' indicates there are no more values in
89-- the next state of the stream. 'Stop' indicates there are no more values in
89-- the stream.
90-- the stream.
91+{-# ANN type Step Fuse #-}
90data Step s a = Yield a s | Skip s | Stop
92data Step s a = Yield a s | Skip s | Stop
91
93
92instance Functor (Step s) where
94instance Functor (Step s) where
streamly.cabal+2
@@ -385,6 +385,8 @@ library
385 , monad-control >= 1.0 && < 2
385 , monad-control >= 1.0 && < 2
386 , transformers-base >= 0.4 && < 0.5
386 , transformers-base >= 0.4 && < 0.5
387
387
388+ , fusion-plugin >= 0.1 && < 0.2
389+
388 if !impl(ghcjs)
390 if !impl(ghcjs)
389 build-depends:
391 build-depends:
390 network >= 2.6 && < 4
392 network >= 2.6 && < 4