Safe Haskell | None |
---|
The top-level type checker, which checks all declarations in a module.
- typeCheckAll :: Maybe ModuleName -> ModuleName -> [Declaration] -> Check [Declaration]
Documentation
typeCheckAll :: Maybe ModuleName -> ModuleName -> [Declaration] -> Check [Declaration]Source
Type check all declarations in a module
At this point, many declarations will have been desugared, but it is still necessary to
- Kind-check all types and add them to the
Environment
- Type-check all values and add them to the
Environment
- Bring type class instances into scope
- Process module imports