Safe Haskell | None |
---|
Language.Nano.SSA.SSAMonad
Description
SSA Monad ----------------------------------------------------------------------
- newtype SsaInfo = SI (Id SourcePos)
- type SSAM = ErrorT String (State SsaState)
- ssaError :: SourcePos -> String -> SSAM a
- execute :: SSAM a -> Either (SourcePos, String) a
- type SsaEnv = Env SsaInfo
- setSsaEnv :: SsaEnv -> SSAM ()
- getSsaEnv :: SSAM SsaEnv
- updSsaEnv :: SourcePos -> Id SourcePos -> SSAM (Id SourcePos)
- extSsaEnv :: [Id SourcePos] -> SsaEnv -> SsaEnv
- findSsaEnv :: Id SourcePos -> SSAM (Maybe (Id SourcePos))
- addAnn :: SourcePos -> Fact -> SSAM ()
- getAnns :: SSAM AnnInfo
- isImmutable :: Id SourcePos -> SSAM Bool
- getImmutables :: SSAM (Env ())
- setImmutables :: Env () -> SSAM ()
- addImmutables :: Env () -> SSAM ()
SSA Information
SSA Monad
SSA Environment
findSsaEnv :: Id SourcePos -> SSAM (Maybe (Id SourcePos))Source
Access Annotations
Immutable Variables
isImmutable :: Id SourcePos -> SSAM BoolSource
getImmutables :: SSAM (Env ())Source
setImmutables :: Env () -> SSAM ()Source
addImmutables :: Env () -> SSAM ()Source