futhark-0.9.1: An optimising compiler for a functional, array-oriented language.
Futhark.Optimise.Fusion.TryFusion
data TryFusion a Source #
Defined in Futhark.Optimise.Fusion.TryFusion
Methods
(>>=) :: TryFusion a -> (a -> TryFusion b) -> TryFusion b #
(>>) :: TryFusion a -> TryFusion b -> TryFusion b #
return :: a -> TryFusion a #
fail :: String -> TryFusion a #
fmap :: (a -> b) -> TryFusion a -> TryFusion b #
(<$) :: a -> TryFusion b -> TryFusion a #
pure :: a -> TryFusion a #
(<*>) :: TryFusion (a -> b) -> TryFusion a -> TryFusion b #
liftA2 :: (a -> b -> c) -> TryFusion a -> TryFusion b -> TryFusion c #
(*>) :: TryFusion a -> TryFusion b -> TryFusion b #
(<*) :: TryFusion a -> TryFusion b -> TryFusion a #
empty :: TryFusion a #
(<|>) :: TryFusion a -> TryFusion a -> TryFusion a #
some :: TryFusion a -> TryFusion [a] #
many :: TryFusion a -> TryFusion [a] #
getNameSource :: TryFusion VNameSource Source #
putNameSource :: VNameSource -> TryFusion () Source #
localScope :: Scope SOACS -> TryFusion a -> TryFusion a Source #
lookupType :: VName -> TryFusion Type Source #
lookupInfo :: VName -> TryFusion (NameInfo SOACS) Source #
askScope :: TryFusion (Scope SOACS) Source #
asksScope :: (Scope SOACS -> a) -> TryFusion a Source #
tryFusion :: MonadFreshNames m => TryFusion a -> Scope SOACS -> m (Maybe a) Source #
liftMaybe :: Maybe a -> TryFusion a Source #