haskell-names-0.1.2: Name resolution library for Haskell

Safe HaskellNone

Language.Haskell.Names.Annotated

Synopsis

Documentation

data Scoped l Source

A pair of the name information and original annotation. Used as an annotation type for AST.

Constructors

Scoped (NameInfo l) l 

data NameInfo l Source

Constructors

GlobalValue (SymValueInfo OrigName)

global value

GlobalType (SymTypeInfo OrigName)

global type

LocalValue SrcLoc

local value, and location where it is bound

TypeVar SrcLoc

type variable, and location where it is bound

Binder

here the name is bound

Import Table

import declaration, and the table of symbols that it introduces

ImportPart Symbols

part of an import declaration

Export Symbols

export declaration, and the symbols it exports

None

no annotation

ScopeError (Error l)

scope error

annotate :: forall a l. (Resolvable (a (Scoped l)), Functor a, Typeable l) => Scope -> a l -> a (Scoped l)Source