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

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 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
instance GHC.Enum.Bounded DynFlags.Language

module Language.Haskell.GhclibParserEx.GHC.Driver.Session

-- | Parse a GHC extension.
readExtension :: String -> Maybe Extension

-- | Implicitly enabled/disabled extensions.
extensionImplications :: [(Extension, ([Extension], [Extension]))]
type TurnOnFlag = Bool
turnOn :: TurnOnFlag
turnOff :: TurnOnFlag
impliedGFlags :: [(GeneralFlag, TurnOnFlag, GeneralFlag)]
impliedOffGFlags :: [(GeneralFlag, TurnOnFlag, GeneralFlag)]
impliedXFlags :: [(Extension, TurnOnFlag, Extension)]
parsePragmasIntoDynFlags :: DynFlags -> ([Extension], [Extension]) -> FilePath -> String -> IO (Either String DynFlags)
instance GHC.Classes.Ord GHC.LanguageExtensions.Type.Extension

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.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
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 Name -> 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 Outputable.Outputable a => 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 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

module Language.Haskell.GhclibParserEx.GHC.Hs.Types
fromTyParen :: LHsType GhcPs -> LHsType GhcPs
isTyQuasiQuote :: LHsType GhcPs -> Bool
isUnboxedTuple :: HsTupleSort -> Bool

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