| Safe Haskell | None |
|---|---|
| Language | Haskell98 |
Agda.Interaction.Highlighting.Dot
Description
Generate an import dependency graph for a given module.
- type ModuleId = String
- data DotState = DotState {
- dsModules :: Map ModuleName ModuleId
- dsNameSupply :: [ModuleId]
- dsConnection :: Set (ModuleId, ModuleId)
- initialDotState :: DotState
- type DotM = StateT DotState TCM
- addModule :: ModuleName -> DotM (ModuleId, Bool)
- addConnection :: ModuleId -> ModuleId -> DotM ()
- dottify :: Interface -> DotM ModuleId
- generateDot :: Interface -> TCM ()
Documentation
Constructors
| DotState | |
Fields
| |
addModule :: ModuleName -> DotM (ModuleId, Bool) Source
Translate a ModuleName to an internal ModuleId.
Returns True if the ModuleName is new, i.e., has not been
encountered before and is thus added to the map of processed modules.
addConnection :: ModuleId -> ModuleId -> DotM () Source
Add an arc from importer to imported.
generateDot :: Interface -> TCM () Source
Generate a .dot file for the import graph starting with the
given Interface and write it to the file specified by the
command line option.