Safe Haskell | None |
---|---|
Language | Haskell98 |
This module implements the desugaring pass which creates binding groups from sets of mutually-recursive value declarations and mutually-recursive type declarations.
- createBindingGroups :: ModuleName -> [Declaration] -> Either ErrorStack [Declaration]
- createBindingGroupsModule :: [Module] -> Either ErrorStack [Module]
- collapseBindingGroups :: [Declaration] -> [Declaration]
- collapseBindingGroupsModule :: [Module] -> [Module]
Documentation
createBindingGroups :: ModuleName -> [Declaration] -> Either ErrorStack [Declaration] Source
createBindingGroupsModule :: [Module] -> Either ErrorStack [Module] Source
Replace all sets of mutually-recursive declarations in a module with binding groups
collapseBindingGroups :: [Declaration] -> [Declaration] Source
Collapse all binding groups to individual declarations
collapseBindingGroupsModule :: [Module] -> [Module] Source
Collapse all binding groups in a module to individual declarations