-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/

-- | Programming with 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 9.12.0.0

module Language.Haskell.GhclibParserEx.Fixity

-- | Rearrange a parse tree to account for fixities.
applyFixities :: Data a => [(String, Fixity)] -> a -> a
fixitiesFromModule :: Located (HsModule GhcPs) -> [(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 GhcPs) -> 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.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 -> BlankEpAnnotations -> a -> SDoc

-- | Should source spans be removed from output.
data BlankSrcSpan
BlankSrcSpan :: BlankSrcSpan
BlankSrcSpanFile :: BlankSrcSpan
NoBlankSrcSpan :: BlankSrcSpan

-- | Should EpAnnotations be removed from output.
data BlankEpAnnotations
BlankEpAnnotations :: BlankEpAnnotations
NoBlankEpAnnotations :: BlankEpAnnotations

-- | Deprecated: Use Language.Haskell.GhclibParserEx.GHC.Hs.Dump
--   instead
module Language.Haskell.GhclibParserEx.Dump

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.Internal.Data.Data.Data a => GHC.Classes.Eq (Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances.HsExtendInstances a)
instance GHC.Internal.Data.Data.Data a => GHC.Classes.Ord (Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances.HsExtendInstances a)
instance GHC.Utils.Outputable.Outputable a => GHC.Utils.Outputable.Outputable (Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances.HsExtendInstances a)
instance GHC.Utils.Outputable.Outputable a => GHC.Internal.Show.Show (Language.Haskell.GhclibParserEx.GHC.Hs.ExtendInstances.HsExtendInstances a)

module Language.Haskell.GhclibParserEx.GHC.Hs.ImpExp
isPatSynIE :: IEWrappedName GhcPs -> 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 :: LHsFieldBind GhcPs (LFieldOcc GhcPs) (LPat GhcPs) -> Bool
isPWildcard :: LPat GhcPs -> Bool
isPFieldPun :: LHsFieldBind GhcPs (LFieldOcc GhcPs) (LPat GhcPs) -> Bool
isPatTypeSig :: LPat GhcPs -> Bool
isPBangPat :: LPat GhcPs -> Bool
isPViewPat :: LPat GhcPs -> Bool
isWildPat :: 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 GhcPs))
parseModule :: String -> DynFlags -> ParseResult (Located (HsModule GhcPs))
parseSignature :: String -> DynFlags -> ParseResult (Located (HsModule GhcPs))
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 (LocatedN RdrName)
parseType :: String -> DynFlags -> ParseResult (LHsType GhcPs)
parseHeader :: String -> DynFlags -> ParseResult (Located (HsModule GhcPs))
parse :: P a -> String -> DynFlags -> ParseResult a

module Language.Haskell.GhclibParserEx.GHC.Settings.Config
fakeSettings :: Settings

module Language.Haskell.GhclibParserEx.GHC.Types.Name.Reader
occNameStr :: RdrName -> String
rdrNameStr :: LocatedN RdrName -> String
isSpecial :: LocatedN RdrName -> Bool
unqual :: LocatedN RdrName -> LocatedN RdrName
fromQual :: LocatedN RdrName -> Maybe OccName
isSymbolRdrName :: RdrName -> 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
isDo :: LHsExpr GhcPs -> Bool
isLexeme :: LHsExpr GhcPs -> Bool
isLambda :: LHsExpr GhcPs -> Bool
isQuasiQuote :: LHsExpr GhcPs -> Bool
isQuasiQuoteExpr :: LHsExpr GhcPs -> Bool
isQuasiQuoteSplice :: HsUntypedSplice GhcPs -> Bool
isOverLabel :: LHsExpr GhcPs -> Bool
isDotApp :: LHsExpr GhcPs -> Bool
isTypeApp :: LHsExpr GhcPs -> Bool
isWHNF :: LHsExpr GhcPs -> Bool
isLCase :: LHsExpr GhcPs -> Bool
isFieldPun :: LHsFieldBind GhcPs (LFieldOcc GhcPs) (LHsExpr GhcPs) -> Bool
isFieldPunUpdate :: HsFieldBind (LFieldOcc GhcPs) (LHsExpr GhcPs) -> Bool
isRecStmt :: StmtLR GhcPs GhcPs (LHsExpr GhcPs) -> Bool
isLetStmt :: StmtLR GhcPs GhcPs (LHsExpr GhcPs) -> Bool
isParComp :: StmtLR GhcPs GhcPs (LHsExpr GhcPs) -> Bool
isMDo :: HsDoFlavour -> Bool
isListComp :: HsDoFlavour -> Bool
isMonadComp :: HsDoFlavour -> Bool
isTupleSection :: HsTupArg GhcPs -> Bool
isString :: HsLit GhcPs -> Bool
isPrimLiteral :: HsLit GhcPs -> Bool
isSpliceDecl :: HsExpr GhcPs -> Bool
isTypedSplice :: HsExpr GhcPs -> Bool
isUntypedSplice :: HsExpr GhcPs -> Bool
isFieldWildcard :: LHsFieldBind GhcPs (LFieldOcc GhcPs) (LHsExpr GhcPs) -> Bool
isUnboxed :: Boxity -> Bool
isWholeFrac :: HsExpr GhcPs -> Bool
isStrictMatch :: HsMatchContext (LocatedN 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.Utils.Outputable
unsafePrettyPrint :: Outputable a => a -> String
