Safe Haskell | Safe-Inferred |
---|
Compilation Monad and combinators for quickly assembling simple compilers.
Control/Compilation/Module.hs
State extension class and combinators for implementations of a state that support module name specification.
- type ModuleName = String
- type StateExtensionModule = ModuleName
- class StateExtension a => HasModule a where
- project :: a -> StateExtensionModule
- inject :: StateExtensionModule -> a -> a
- setModule :: String -> Compilation a ()
- getModule :: Compilation a String
Documentation
type ModuleName = StringSource
Type synonyms and class memberships.
class StateExtension a => HasModule a whereSource
State extension class definition, including combinators.
project :: a -> StateExtensionModuleSource
inject :: StateExtensionModule -> a -> aSource
setModule :: String -> Compilation a ()Source