Safe Haskell | None |
---|---|
Language | Haskell2010 |
Utility functions defined on the GHC AST representation.
Synopsis
- class OutputableBndrId name => GHCName name where
- occName :: forall n. GHCName n => IdP n -> OccName
- getFieldOccName :: forall n. GHCName n => Located (FieldOcc n) -> Located (IdP n)
- getFieldOccName' :: forall n. GHCName n => FieldOcc n -> IdP n
- getTopLevelId :: Name -> Ghc (Maybe Id)
- hsGetNames' :: HsHasName a => a -> [Name]
- class HsHasName a where
- rdrNameStr :: RdrName -> String
- class FromGHCName n where
- cleanHsType :: forall n. (OutputableBndrId n, SourceTextX n) => HsType n -> HsType n
- mergeFixityDefs :: [Located (FixitySig n)] -> [Located (FixitySig n)]
- getGroupRange :: HsGroup n -> SrcSpan
- getHsValRange :: HsValBinds n -> SrcSpan
- fromSrcText :: SourceText -> String
Documentation
class OutputableBndrId name => GHCName name where Source #
rdrName :: IdP name -> RdrName Source #
getFromNameUsing :: Applicative f => (Name -> Ghc (f Id)) -> Name -> Ghc (f (IdP name)) Source #
getBindsAndSigs :: HsValBinds name -> ([LSig name], LHsBinds name) Source #
nameFromId :: Id -> IdP name Source #
unpackPostRn :: RdrName -> PostRn name (IdP name) -> IdP name Source #
gunpackPostRn :: a -> (IdP name -> a) -> PostRn name (IdP name) -> a Source #
Instances
GHCName GhcPs Source # | |
Defined in Language.Haskell.Tools.BackendGHC.GHCUtils rdrName :: IdP GhcPs -> RdrName Source # getFromNameUsing :: Applicative f => (Name -> Ghc (f Id)) -> Name -> Ghc (f (IdP GhcPs)) Source # getBindsAndSigs :: HsValBinds GhcPs -> ([LSig GhcPs], LHsBinds GhcPs) Source # nameFromId :: Id -> IdP GhcPs Source # unpackPostRn :: RdrName -> PostRn GhcPs (IdP GhcPs) -> IdP GhcPs Source # gunpackPostRn :: a -> (IdP GhcPs -> a) -> PostRn GhcPs (IdP GhcPs) -> a Source # | |
GHCName GhcRn Source # | |
Defined in Language.Haskell.Tools.BackendGHC.GHCUtils rdrName :: IdP GhcRn -> RdrName Source # getFromNameUsing :: Applicative f => (Name -> Ghc (f Id)) -> Name -> Ghc (f (IdP GhcRn)) Source # getBindsAndSigs :: HsValBinds GhcRn -> ([LSig GhcRn], LHsBinds GhcRn) Source # nameFromId :: Id -> IdP GhcRn Source # unpackPostRn :: RdrName -> PostRn GhcRn (IdP GhcRn) -> IdP GhcRn Source # gunpackPostRn :: a -> (IdP GhcRn -> a) -> PostRn GhcRn (IdP GhcRn) -> a Source # |
hsGetNames' :: HsHasName a => a -> [Name] Source #
class HsHasName a where Source #
Get names from the GHC AST
Instances
rdrNameStr :: RdrName -> String Source #
Get the original form of a name
class FromGHCName n where Source #
fromGHCName :: Name -> n Source #
Instances
FromGHCName RdrName Source # | |
Defined in Language.Haskell.Tools.BackendGHC.GHCUtils fromGHCName :: Name -> RdrName Source # | |
FromGHCName Name Source # | |
Defined in Language.Haskell.Tools.BackendGHC.GHCUtils fromGHCName :: Name -> Name Source # |
cleanHsType :: forall n. (OutputableBndrId n, SourceTextX n) => HsType n -> HsType n Source #
Tries to simplify the type that has HsAppsTy before renaming. Does not always provide the correct form. Treats each operator as if they are of equivalent precedence and always left-associative.
getGroupRange :: HsGroup n -> SrcSpan Source #
getHsValRange :: HsValBinds n -> SrcSpan Source #
fromSrcText :: SourceText -> String Source #