This package provides types needed to run the fusion-plugin
plugin. This package is separated from the
fusion-plugin package
so that library authors can annotate the types that fusion-plugin
should try to fuse but avoid the ghc dependency in the library
itself.
To enable support for using the fusion-plugin plugin, add this
package to your build-depends and annotate your types with Fuse
type from Fusion.Plugin.Types module.
import Fusion.Plugin.Types (Fuse (..))
{-# ANN type Step Fuse #-}
data Step s a = Yield a s | Skip s | Stop