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


-- | Algorithms on GHC parse trees
--   
--   Please see the README on GitHub at
--   <a>https://github.com/shayne-fletcher/ghc-lib-parser-ex#readme</a>
@package ghc-lib-parser-ex
@version 9.0.0.6

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
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


-- | <i>Deprecated: Use Language.Haskell.GhclibParserEx.GHC.Hs.Type
--   instead</i>
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


-- | <i>Deprecated: Use Language.Haskell.GhclibParserEx.GHC.Settings.Config
--   instead</i>
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


-- | <i>Deprecated: Use
--   Language.Haskell.GhclibParserEx.GHC.Utils.Outputable instead</i>
module Language.Haskell.GhclibParserEx.Outputable


-- | <i>Deprecated: Use Language.Haskell.GhclibParserEx.GHC.Parser
--   instead</i>
module Language.Haskell.GhclibParserEx.Parse
