Safe Haskell | None |
---|---|

Language | Haskell2010 |

## Synopsis

- ppHies :: Outputable a => HieASTs a -> SDoc
- ppHie :: Outputable a => HieAST a -> SDoc
- ppInfo :: Outputable a => NodeInfo a -> SDoc
- type Diff a = a -> a -> [SDoc]
- diffFile :: Diff HieFile
- diffAsts :: (Outputable a, Eq a) => Diff a -> Diff (Map FastString (HieAST a))
- diffAst :: (Outputable a, Eq a) => Diff a -> Diff (HieAST a)
- type DiffIdent = Either ModuleName HieName
- normalizeIdents :: NodeIdentifiers a -> [(DiffIdent, IdentifierDetails a)]
- diffList :: Diff a -> Diff [a]
- eqDiff :: (Outputable a, Eq a) => Diff a
- validAst :: HieAST a -> Either SDoc ()
- validateScopes :: Map FastString (HieAST a) -> [SDoc]

# Documentation

diffAsts :: (Outputable a, Eq a) => Diff a -> Diff (Map FastString (HieAST a)) Source #

normalizeIdents :: NodeIdentifiers a -> [(DiffIdent, IdentifierDetails a)] Source #

validateScopes :: Map FastString (HieAST a) -> [SDoc] Source #

Look for any identifiers which occur outside of their supposed scopes. Returns a list of error messages.