Safe Haskell | None |
---|---|
Language | Haskell2010 |
This module is kind of half-assed. I don't have any references and it fails under various corner cases.
Synopsis
- closedModule :: Module () (StackType ()) (StackType ()) -> MonoM (Module () (StackType ()) (StackType ()))
- type MonoM = StateT RenameEnv (Either (Error ()))
- runMonoM :: Int -> MonoM a -> Either (Error ()) (a, Int)
- flattenModule :: Module () (StackType ()) (StackType ()) -> MonoM (Module () (ConsAnn (StackType ())) (StackType ()))
- tryMono :: MonadError (Error ()) m => StackType () -> m MonoStackType
- tryMonoConsAnn :: MonadError (Error ()) m => ConsAnn (StackType ()) -> m (ConsAnn MonoStackType)
- data ConsAnn a = ConsAnn {}
- closure :: Ord b => (Module a b b, ModuleMap a b b) -> Set (Name b, b)
- mkModuleMap :: Module a c b -> ModuleMap a c b
Documentation
closedModule :: Module () (StackType ()) (StackType ()) -> MonoM (Module () (StackType ()) (StackType ())) Source #
flattenModule :: Module () (StackType ()) (StackType ()) -> MonoM (Module () (ConsAnn (StackType ())) (StackType ())) Source #
Call closedModule
and perform any necessary renamings
tryMono :: MonadError (Error ()) m => StackType () -> m MonoStackType Source #
tryMonoConsAnn :: MonadError (Error ()) m => ConsAnn (StackType ()) -> m (ConsAnn MonoStackType) Source #
Annotation carried on constructors to keep size information through the IR generation phase.
Instances
Benchmark
mkModuleMap :: Module a c b -> ModuleMap a c b Source #