| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Language.Haskell.Tools.BackendGHC.Names
Description
Functions that convert the basic elements of the GHC AST to corresponding elements in the Haskell-tools AST representation
Synopsis
- trfOperator :: forall n r. TransformName n r => Located (IdP n) -> Trf (Ann UOperator (Dom r) RangeStage)
- trfOperator' :: forall n r. TransformName n r => IdP n -> Trf (UOperator (Dom r) RangeStage)
- trfName :: forall n r. TransformName n r => Located (IdP n) -> Trf (Ann UName (Dom r) RangeStage)
- trfName' :: forall n r. TransformName n r => IdP n -> Trf (UName (Dom r) RangeStage)
- trfAmbiguousFieldName :: TransformName n r => Located (AmbiguousFieldOcc n) -> Trf (Ann UName (Dom r) RangeStage)
- trfAmbiguousFieldName' :: forall n r. TransformName n r => SrcSpan -> AmbiguousFieldOcc n -> Trf (Ann UName (Dom r) RangeStage)
- trfAmbiguousOperator' :: forall n r. TransformName n r => SrcSpan -> AmbiguousFieldOcc n -> Trf (Ann UOperator (Dom r) RangeStage)
- class (DataId n, Eq n, GHCName n, FromGHCName (IdP n), NameOrRdrName (IdP n) ~ IdP n, HasOccName (IdP n), SourceTextX n) => TransformableName n where
- class (TransformableName name, HsHasName (IdP name), FromGHCName (IdP res), Eq (IdP name), GHCName res, NameOrRdrName (IdP name) ~ IdP name) => TransformName name res where
- trfNameText :: String -> Trf (Ann UName (Dom r) RangeStage)
- trfImplicitName :: HsIPName -> Trf (Ann UName (Dom r) RangeStage)
- isOperatorStr :: String -> Bool
- trfQualifiedName :: forall n r. TransformName n r => Bool -> Located (IdP n) -> Trf (Ann UQualifiedName (Dom r) RangeStage)
- trfQualifiedNameFocus :: forall n r. TransformName n r => Bool -> IdP n -> Trf (Ann UQualifiedName (Dom r) RangeStage)
- trfQualifiedName' :: forall n r. TransformName n r => IdP n -> Trf (UQualifiedName (Dom r) RangeStage)
- trfOperatorStr :: Bool -> String -> Trf (AnnListG UNamePart (Dom r) RangeStage)
- trfNameStr :: Bool -> String -> Trf (AnnListG UNamePart (Dom r) RangeStage)
- trfNameStr' :: String -> SrcLoc -> [Ann UNamePart (Dom r) RangeStage]
- trfFastString :: Located FastString -> Trf (Ann UStringNode (Dom r) RangeStage)
Documentation
trfOperator :: forall n r. TransformName n r => Located (IdP n) -> Trf (Ann UOperator (Dom r) RangeStage) Source #
trfOperator' :: forall n r. TransformName n r => IdP n -> Trf (UOperator (Dom r) RangeStage) Source #
trfName :: forall n r. TransformName n r => Located (IdP n) -> Trf (Ann UName (Dom r) RangeStage) Source #
trfName' :: forall n r. TransformName n r => IdP n -> Trf (UName (Dom r) RangeStage) Source #
trfAmbiguousFieldName :: TransformName n r => Located (AmbiguousFieldOcc n) -> Trf (Ann UName (Dom r) RangeStage) Source #
trfAmbiguousFieldName' :: forall n r. TransformName n r => SrcSpan -> AmbiguousFieldOcc n -> Trf (Ann UName (Dom r) RangeStage) Source #
trfAmbiguousOperator' :: forall n r. TransformName n r => SrcSpan -> AmbiguousFieldOcc n -> Trf (Ann UOperator (Dom r) RangeStage) Source #
class (DataId n, Eq n, GHCName n, FromGHCName (IdP n), NameOrRdrName (IdP n) ~ IdP n, HasOccName (IdP n), SourceTextX n) => TransformableName n where Source #
Minimal complete definition
Methods
correctNameString :: IdP n -> Trf String Source #
transformSplice :: HsSplice GhcPs -> Trf (HsSplice n) Source #
Instances
| TransformableName GhcPs Source # | |
Defined in Language.Haskell.Tools.BackendGHC.Names | |
| TransformableName GhcRn Source # | |
Defined in Language.Haskell.Tools.BackendGHC.Names | |
class (TransformableName name, HsHasName (IdP name), FromGHCName (IdP res), Eq (IdP name), GHCName res, NameOrRdrName (IdP name) ~ IdP name) => 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
Instances
| TransformName GhcPs GhcPs Source # | |
Defined in Language.Haskell.Tools.BackendGHC.Names | |
| (FromGHCName (IdP res), GHCName res) => TransformName GhcRn res Source # | |
Defined in Language.Haskell.Tools.BackendGHC.Names | |
trfNameText :: String -> Trf (Ann UName (Dom r) RangeStage) Source #
trfImplicitName :: HsIPName -> Trf (Ann UName (Dom r) RangeStage) Source #
isOperatorStr :: String -> Bool Source #
trfQualifiedName :: forall n r. TransformName n r => Bool -> Located (IdP n) -> Trf (Ann UQualifiedName (Dom r) RangeStage) Source #
trfQualifiedNameFocus :: forall n r. TransformName n r => Bool -> IdP n -> Trf (Ann UQualifiedName (Dom r) RangeStage) Source #
trfQualifiedName' :: forall n r. TransformName n r => IdP n -> Trf (UQualifiedName (Dom r) RangeStage) Source #
trfOperatorStr :: Bool -> String -> Trf (AnnListG UNamePart (Dom r) RangeStage) Source #
trfNameStr :: Bool -> 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 #
trfFastString :: Located FastString -> Trf (Ann UStringNode (Dom r) RangeStage) Source #