sslang-0.1.0.0
Safe HaskellNone
LanguageHaskell2010

IR.Pattern.Anomaly

Synopsis

Documentation

data AnomalyCtx Source #

Instances

Instances details
MonadReader AnomalyCtx AnomalyFn Source # 
Instance details

Defined in IR.Pattern.Anomaly

newtype AnomalyFn a Source #

Constructors

AnomalyFn (ReaderT AnomalyCtx Pass a) 

Instances

Instances details
Monad AnomalyFn Source # 
Instance details

Defined in IR.Pattern.Anomaly

Methods

(>>=) :: AnomalyFn a -> (a -> AnomalyFn b) -> AnomalyFn b #

(>>) :: AnomalyFn a -> AnomalyFn b -> AnomalyFn b #

return :: a -> AnomalyFn a #

Functor AnomalyFn Source # 
Instance details

Defined in IR.Pattern.Anomaly

Methods

fmap :: (a -> b) -> AnomalyFn a -> AnomalyFn b #

(<$) :: a -> AnomalyFn b -> AnomalyFn a #

MonadFail AnomalyFn Source # 
Instance details

Defined in IR.Pattern.Anomaly

Methods

fail :: String -> AnomalyFn a #

Applicative AnomalyFn Source # 
Instance details

Defined in IR.Pattern.Anomaly

Methods

pure :: a -> AnomalyFn a #

(<*>) :: AnomalyFn (a -> b) -> AnomalyFn a -> AnomalyFn b #

liftA2 :: (a -> b -> c) -> AnomalyFn a -> AnomalyFn b -> AnomalyFn c #

(*>) :: AnomalyFn a -> AnomalyFn b -> AnomalyFn b #

(<*) :: AnomalyFn a -> AnomalyFn b -> AnomalyFn a #

MonadReader AnomalyCtx AnomalyFn Source # 
Instance details

Defined in IR.Pattern.Anomaly

MonadError Error AnomalyFn Source # 
Instance details

Defined in IR.Pattern.Anomaly

MonadWriter [Warning] AnomalyFn Source # 
Instance details

Defined in IR.Pattern.Anomaly

Methods

writer :: (a, [Warning]) -> AnomalyFn a #

tell :: [Warning] -> AnomalyFn () #

listen :: AnomalyFn a -> AnomalyFn (a, [Warning]) #

pass :: AnomalyFn (a, [Warning] -> [Warning]) -> AnomalyFn a #

runAnomalyFn :: AnomalyFn a -> AnomalyCtx -> Pass a Source #

Run a AnomalyFn computation.

checkDefs :: Show t => [(VarId, Expr t)] -> AnomalyFn () Source #

checkExprs :: Show t => [Expr t] -> AnomalyFn () Source #

checkPats :: Show t => [Alt t] -> AnomalyFn () Source #

showId :: Identifier -> ErrorMsg Source #

Report Identifier for error reporting.