-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Algorithms on GHC parse trees -- -- Please see the README on GitHub at -- https://github.com/shayne-fletcher/ghc-lib-parser-ex#readme @package ghc-lib-parser-ex @version 0.20220401 module Language.Haskell.GhclibParserEx.Dump -- | Show a GHC syntax tree. This parameterised because it is also used for -- comparing ASTs in ppr roundtripping tests, where the SrcSpan's are -- blanked out, to avoid comparing locations, only structure showAstData :: Data a => BlankSrcSpan -> a -> SDoc data BlankSrcSpan BlankSrcSpan :: BlankSrcSpan NoBlankSrcSpan :: BlankSrcSpan module Language.Haskell.GhclibParserEx.Fixity -- | Rearrange a parse tree to account for fixities. applyFixities :: Data a => [(String, Fixity)] -> a -> a fixitiesFromModule :: Located HsModule -> [(String, Fixity)] preludeFixities :: [(String, Fixity)] baseFixities :: [(String, Fixity)] infixr_ :: Int -> [String] -> [(String, Fixity)] infixl_ :: Int -> [String] -> [(String, Fixity)] infix_ :: Int -> [String] -> [(String, Fixity)] fixity :: FixityDirection -> Int -> [String] -> [(String, Fixity)] module Language.Haskell.GhclibParserEx.GHC.Driver.Flags module Language.Haskell.GhclibParserEx.GHC.Driver.Session -- | Parse a GHC extension. readExtension :: String -> Maybe Extension -- | Implicitly enabled/disabled extensions. extensionImplications :: [(Extension, ([Extension], [Extension]))] parsePragmasIntoDynFlags :: DynFlags -> ([Extension], [Extension]) -> FilePath -> String -> IO (Either String DynFlags) module Language.Haskell.GhclibParserEx.GHC.Hs modName :: Located HsModule -> String module Language.Haskell.GhclibParserEx.GHC.Hs.Binds isPatSynBind :: HsBind GhcPs -> Bool module Language.Haskell.GhclibParserEx.GHC.Hs.Decls isNewType :: NewOrData -> Bool isForD :: LHsDecl GhcPs -> Bool isDerivD :: LHsDecl GhcPs -> Bool isClsDefSig :: Sig GhcPs -> Bool module Language.Haskell.GhclibParserEx.GHC.Hs.Expr isTag :: String -> LHsExpr GhcPs -> Bool isDol :: LHsExpr GhcPs -> Bool isDot :: LHsExpr GhcPs -> Bool isReturn :: LHsExpr GhcPs -> Bool isSection :: LHsExpr GhcPs -> Bool isRecConstr :: LHsExpr GhcPs -> Bool isRecUpdate :: LHsExpr GhcPs -> Bool isVar :: LHsExpr GhcPs -> Bool isPar :: LHsExpr GhcPs -> Bool isApp :: LHsExpr GhcPs -> Bool isOpApp :: LHsExpr GhcPs -> Bool isAnyApp :: LHsExpr GhcPs -> Bool isLexeme :: LHsExpr GhcPs -> Bool isLambda :: LHsExpr GhcPs -> Bool isQuasiQuote :: LHsExpr GhcPs -> Bool isQuasiQuoteExpr :: LHsExpr GhcPs -> Bool isQuasiQuoteSplice :: HsSplice GhcPs -> Bool isOverLabel :: LHsExpr GhcPs -> Bool isDotApp :: LHsExpr GhcPs -> Bool isTypeApp :: LHsExpr GhcPs -> Bool isWHNF :: LHsExpr GhcPs -> Bool isLCase :: LHsExpr GhcPs -> Bool isFieldPun :: LHsRecField GhcPs (LHsExpr GhcPs) -> Bool isFieldPunUpdate :: HsRecField' (AmbiguousFieldOcc GhcPs) (LHsExpr GhcPs) -> Bool isRecStmt :: StmtLR GhcPs GhcPs (LHsExpr GhcPs) -> Bool isParComp :: StmtLR GhcPs GhcPs (LHsExpr GhcPs) -> Bool isMDo :: HsStmtContext GhcRn -> Bool isListComp :: HsStmtContext GhcRn -> Bool isMonadComp :: HsStmtContext GhcRn -> Bool isTupleSection :: HsTupArg GhcPs -> Bool isString :: HsLit GhcPs -> Bool isPrimLiteral :: HsLit GhcPs -> Bool isSpliceDecl :: HsExpr GhcPs -> Bool isFieldWildcard :: LHsRecField GhcPs (LHsExpr GhcPs) -> Bool isUnboxed :: Boxity -> Bool isWholeFrac :: HsExpr GhcPs -> Bool isStrictMatch :: HsMatchContext RdrName -> Bool isMultiIf :: HsExpr GhcPs -> Bool isProc :: HsExpr GhcPs -> Bool isTransStmt :: StmtLR GhcPs GhcPs (LHsExpr GhcPs) -> Bool hasFieldsDotDot :: HsRecFields GhcPs (LHsExpr GhcPs) -> Bool varToStr :: LHsExpr GhcPs -> String strToVar :: String -> LHsExpr GhcPs fromChar :: LHsExpr GhcPs -> Maybe Char module Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances newtype HsExtendInstances a HsExtendInstances :: a -> HsExtendInstances a [unextendInstances] :: HsExtendInstances a -> a extendInstances :: a -> HsExtendInstances a astEq :: Data a => a -> a -> Bool astListEq :: Data a => [a] -> [a] -> Bool instance GHC.Utils.Outputable.Outputable a => GHC.Utils.Outputable.Outputable (Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances.HsExtendInstances a) instance Data.Data.Data a => GHC.Classes.Eq (Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances.HsExtendInstances a) instance Data.Data.Data a => GHC.Classes.Ord (Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances.HsExtendInstances a) instance GHC.Utils.Outputable.Outputable a => GHC.Show.Show (Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances.HsExtendInstances a) module Language.Haskell.GhclibParserEx.GHC.Hs.ImpExp isPatSynIE :: IEWrappedName RdrName -> Bool isImportQualifiedPost :: ImportDeclQualifiedStyle -> Bool module Language.Haskell.GhclibParserEx.GHC.Hs.Pat patToStr :: LPat GhcPs -> String strToPat :: String -> LPat GhcPs fromPChar :: LPat GhcPs -> Maybe Char hasPFieldsDotDot :: HsRecFields GhcPs (LPat GhcPs) -> Bool isPFieldWildcard :: LHsRecField GhcPs (LPat GhcPs) -> Bool isPWildcard :: LPat GhcPs -> Bool isPFieldPun :: LHsRecField GhcPs (LPat GhcPs) -> Bool isPatTypeSig :: LPat GhcPs -> Bool isPBangPat :: LPat GhcPs -> Bool isPViewPat :: LPat GhcPs -> Bool isSplicePat :: LPat GhcPs -> Bool module Language.Haskell.GhclibParserEx.GHC.Hs.Type fromTyParen :: LHsType GhcPs -> LHsType GhcPs isTyQuasiQuote :: LHsType GhcPs -> Bool isUnboxedTuple :: HsTupleSort -> Bool isKindTyApp :: LHsType GhcPs -> Bool -- | Deprecated: Use Language.Haskell.GhclibParserEx.GHC.Hs.Type -- instead module Language.Haskell.GhclibParserEx.GHC.Hs.Types module Language.Haskell.GhclibParserEx.GHC.Parser parseFile :: String -> DynFlags -> String -> ParseResult (Located HsModule) parseModule :: String -> DynFlags -> ParseResult (Located HsModule) parseSignature :: String -> DynFlags -> ParseResult (Located HsModule) parseImport :: String -> DynFlags -> ParseResult (LImportDecl GhcPs) parseStatement :: String -> DynFlags -> ParseResult (LStmt GhcPs (LHsExpr GhcPs)) parseBackpack :: String -> DynFlags -> ParseResult [LHsUnit PackageName] parseDeclaration :: String -> DynFlags -> ParseResult (LHsDecl GhcPs) parseExpression :: String -> DynFlags -> ParseResult (LHsExpr GhcPs) parsePattern :: String -> DynFlags -> ParseResult (LPat GhcPs) parseTypeSignature :: String -> DynFlags -> ParseResult (LHsDecl GhcPs) parseStmt :: String -> DynFlags -> ParseResult (Maybe (LStmt GhcPs (LHsExpr GhcPs))) parseIdentifier :: String -> DynFlags -> ParseResult (Located RdrName) parseType :: String -> DynFlags -> ParseResult (LHsType GhcPs) parseHeader :: String -> DynFlags -> ParseResult (Located HsModule) parse :: P a -> String -> DynFlags -> ParseResult a module Language.Haskell.GhclibParserEx.GHC.Settings.Config fakeSettings :: Settings fakeLlvmConfig :: LlvmConfig -- | Deprecated: Use Language.Haskell.GhclibParserEx.GHC.Settings.Config -- instead module Language.Haskell.GhclibParserEx.Config module Language.Haskell.GhclibParserEx.GHC.Types.Name.Reader occNameStr :: RdrName -> String rdrNameStr :: Located RdrName -> String isSpecial :: Located RdrName -> Bool unqual :: Located RdrName -> Located RdrName fromQual :: Located RdrName -> Maybe OccName isSymbolRdrName :: RdrName -> Bool module Language.Haskell.GhclibParserEx.GHC.Utils.Outputable unsafePrettyPrint :: Outputable a => a -> String -- | Deprecated: Use -- Language.Haskell.GhclibParserEx.GHC.Utils.Outputable instead module Language.Haskell.GhclibParserEx.Outputable -- | Deprecated: Use Language.Haskell.GhclibParserEx.GHC.Parser -- instead module Language.Haskell.GhclibParserEx.Parse