NoSlow-0.2: NoSlow/Util/Base.hs
module NoSlow.Util.Base (
Ty(..), ofType, named, Unsupported(..), Sort(..),
noinline
) where
data Ty a = Ty
ofType :: a -> Ty a -> a
{-# INLINE ofType #-}
x `ofType` _ = x
named :: String -> a -> a
{-# INLINE named #-}
named s x = x
data Unsupported = Unsupported
data Sort = Generic | Specialised deriving (Eq, Ord, Show)
noinline :: a -> a
{-# NOINLINE noinline #-}
noinline x = x