haskell-tools-backend-ghc-0.3.0.1: Creating the Haskell-Tools AST from GHC's representations

Safe HaskellNone
LanguageHaskell2010

Language.Haskell.Tools.AST.FromGHC.Names

Description

Functions that convert the basic elements of the GHC AST to corresponding elements in the Haskell-tools AST representation

Synopsis

Documentation

trfOperator :: TransformName n r => Located n -> Trf (Ann UOperator (Dom r) RangeStage) Source #

trfOperator' :: TransformName n r => n -> Trf (UOperator (Dom r) RangeStage) Source #

trfName :: TransformName n r => Located n -> Trf (Ann UName (Dom r) RangeStage) Source #

trfName' :: TransformName n r => n -> Trf (UName (Dom r) RangeStage) Source #

class (TransformableName name, HsHasName name, TransformableName res, HsHasName res, GHCName res) => TransformName name res where Source #

This class allows us to use the same transformation code for multiple variants of the GHC AST. GHC UName annotated with name can be transformed to our representation with semantic annotations of res.

Minimal complete definition

transformName

Methods

transformName :: name -> res Source #

Demote a given name

Instances

((~) * n r, TransformableName n, HsHasName n) => TransformName n r Source # 

Methods

transformName :: n -> r Source #

(TransformableName res, GHCName res, HsHasName res) => TransformName Name res Source # 

Methods

transformName :: Name -> res Source #

trfQualifiedName :: TransformName n r => Located n -> Trf (Ann UQualifiedName (Dom r) RangeStage) Source #

trfQualifiedName' :: TransformName n r => n -> Trf (UQualifiedName (Dom r) RangeStage) Source #

trfNameStr :: String -> Trf (AnnListG UNamePart (Dom r) RangeStage) Source #

Creates a qualified name from a name string

trfNameStr' :: String -> SrcLoc -> [Ann UNamePart (Dom r) RangeStage] Source #