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

Safe HaskellNone
LanguageHaskell2010

Language.Haskell.Tools.BackendGHC.GHCUtils

Description

Utility functions defined on the GHC AST representation.

Synopsis

Documentation

occName :: forall n. GHCName n => IdP n -> OccName Source #

getFieldOccName :: forall n. GHCName n => Located (FieldOcc n) -> Located (IdP n) Source #

getFieldOccName' :: forall n. GHCName n => FieldOcc n -> IdP n Source #

getTopLevelId :: Name -> Ghc (Maybe Id) Source #

Loading ids for top-level ghc names

class HsHasName a where Source #

Get names from the GHC AST

Methods

hsGetNames :: Maybe Name -> a -> [(Name, Maybe Name)] Source #

Instances
HsHasName Id Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> Id -> [(Name, Maybe Name)] Source #

HsHasName RdrName Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

HsHasName Name Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> Name -> [(Name, Maybe Name)] Source #

HsHasName e => HsHasName [e] Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> [e] -> [(Name, Maybe Name)] Source #

(GHCName n, HsHasName (IdP n)) => HsHasName (HsDecl n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> HsDecl n -> [(Name, Maybe Name)] Source #

(GHCName (GhcPass n), HsHasName (IdP (GhcPass n))) => HsHasName (HsGroup (GhcPass n)) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (TyClDecl n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (TyClGroup n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (FamilyDecl n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (HsDataDefn n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (ConDecl n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> ConDecl n -> [(Name, Maybe Name)] Source #

(GHCName n, HsHasName (IdP n)) => HsHasName (HsConDeclDetails n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (DataFamInstDecl n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (InstDecl n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

HsHasName (IdP n) => HsHasName (ForeignDecl n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

HsHasName (IdP (GhcPass n)) => HsHasName (HsLocalBinds (GhcPass n)) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

HsHasName (IdP (GhcPass n)) => HsHasName (HsValBinds (GhcPass n)) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

HsHasName (IdP n) => HsHasName (HsBind n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> HsBind n -> [(Name, Maybe Name)] Source #

(GHCName n, HsHasName (IdP n)) => HsHasName (Sig n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> Sig n -> [(Name, Maybe Name)] Source #

HsHasName (IdP n) => HsHasName (HsTyVarBndr n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (ConDeclField n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

(GHCName n, HsHasName (IdP n)) => HsHasName (FieldOcc n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

HsHasName (IdP n) => HsHasName (Pat n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> Pat n -> [(Name, Maybe Name)] Source #

HsHasName n => HsHasName (Bag n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> Bag n -> [(Name, Maybe Name)] Source #

HsHasName e => HsHasName (Located e) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> Located e -> [(Name, Maybe Name)] Source #

HsHasName (IdP n) => HsHasName (Match n b) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> Match n b -> [(Name, Maybe Name)] Source #

HsHasName (IdP n) => HsHasName (ParStmtBlock l n) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

HsHasName (IdP (GhcPass n)) => HsHasName (StmtLR (GhcPass n) (GhcPass n) b) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> StmtLR (GhcPass n) (GhcPass n) b -> [(Name, Maybe Name)] Source #

(GHCName n, HsHasName (IdP n), HsHasName r) => HsHasName (FamEqn n p r) Source # 
Instance details

Defined in Language.Haskell.Tools.BackendGHC.GHCUtils

Methods

hsGetNames :: Maybe Name -> FamEqn n p r -> [(Name, Maybe Name)] Source #

rdrNameStr :: RdrName -> String Source #

Get the original form of a name