| 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) #
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 #
Minimal complete definition
Methods
correctNameString :: IdP n -> Trf String #
transformSplice :: HsSplice GhcPs -> Trf (HsSplice n) #
Instances
| TransformableName GhcPs # | |
Defined in Language.Haskell.Tools.BackendGHC.Names | |
| TransformableName GhcRn # | |
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 #
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 # | |
Defined in Language.Haskell.Tools.BackendGHC.Names | |
| (FromGHCName (IdP res), GHCName res) => TransformName GhcRn res # | |
Defined in Language.Haskell.Tools.BackendGHC.Names Methods transformName :: IdP GhcRn -> IdP res # | |
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) #
Creates a qualified name from a name string
trfNameStr' :: String -> SrcLoc -> [Ann UNamePart (Dom r) RangeStage] #
trfFastString :: Located FastString -> Trf (Ann UStringNode (Dom r) RangeStage) #