module Evoke.Hs ( app, bindStmt, doExpr, explicitList, explicitTuple, fieldOcc, funBind, grhs, grhss, importDecls, lam, lastStmt, lit, match, mg, opApp, par, qual, qualTyVar, qualVar, recField, recFields, recordCon, string, tupArg, tyVar, unqual, var, varPat, ) where import qualified GHC.Hs as Ghc import qualified GHC.Plugins as Ghc import qualified GHC.Types.SourceText as Ghc app :: Ghc.SrcSpan -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs app :: SrcSpan -> LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs app SrcSpan s LHsExpr GhcPs f = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XApp p -> LHsExpr p -> LHsExpr p -> HsExpr p Ghc.HsApp forall a. EpAnn a Ghc.noAnn LHsExpr GhcPs f bindStmt :: Ghc.SrcSpan -> Ghc.LPat Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LStmt Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) bindStmt :: SrcSpan -> LPat GhcPs -> LHsExpr GhcPs -> LStmt GhcPs (LHsExpr GhcPs) bindStmt SrcSpan s LPat GhcPs p LHsExpr GhcPs e = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall a b. (a -> b) -> a -> b $ forall idL idR body. XBindStmt idL idR body -> LPat idL -> body -> StmtLR idL idR body Ghc.BindStmt forall a. EpAnn a Ghc.noAnn LPat GhcPs p LHsExpr GhcPs e doExpr :: Ghc.SrcSpan -> [Ghc.ExprLStmt Ghc.GhcPs] -> Ghc.LHsExpr Ghc.GhcPs doExpr :: SrcSpan -> [LStmt GhcPs (LHsExpr GhcPs)] -> LHsExpr GhcPs doExpr SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XDo p -> HsStmtContext (HsDoRn p) -> XRec p [ExprLStmt p] -> HsExpr p Ghc.HsDo forall a. EpAnn a Ghc.noAnn (forall p. Maybe ModuleName -> HsStmtContext p Ghc.DoExpr forall a. Maybe a Nothing) forall b c a. (b -> c) -> (a -> b) -> a -> c . forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s explicitList :: Ghc.SrcSpan -> [Ghc.LHsExpr Ghc.GhcPs] -> Ghc.LHsExpr Ghc.GhcPs explicitList :: SrcSpan -> [LHsExpr GhcPs] -> LHsExpr GhcPs explicitList SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XExplicitList p -> [LHsExpr p] -> HsExpr p Ghc.ExplicitList forall a. EpAnn a Ghc.noAnn explicitTuple :: Ghc.SrcSpan -> [Ghc.HsTupArg Ghc.GhcPs] -> Ghc.LHsExpr Ghc.GhcPs explicitTuple :: SrcSpan -> [HsTupArg GhcPs] -> LHsExpr GhcPs explicitTuple SrcSpan s [HsTupArg GhcPs] xs = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall a b. (a -> b) -> a -> b $ forall p. XExplicitTuple p -> [HsTupArg p] -> Boxity -> HsExpr p Ghc.ExplicitTuple forall a. EpAnn a Ghc.noAnn [HsTupArg GhcPs] xs Boxity Ghc.Boxed fieldOcc :: Ghc.SrcSpan -> Ghc.LIdP Ghc.GhcPs -> Ghc.LFieldOcc Ghc.GhcPs fieldOcc :: SrcSpan -> LIdP GhcPs -> LFieldOcc GhcPs fieldOcc SrcSpan s = forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall pass. XCFieldOcc pass -> LocatedN RdrName -> FieldOcc pass Ghc.FieldOcc NoExtField Ghc.noExtField funBind :: Ghc.SrcSpan -> Ghc.OccName -> Ghc.MatchGroup Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) -> Ghc.LHsBind Ghc.GhcPs funBind :: SrcSpan -> OccName -> MatchGroup GhcPs (LHsExpr GhcPs) -> LHsBind GhcPs funBind SrcSpan s OccName f MatchGroup GhcPs (LHsExpr GhcPs) g = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall a b. (a -> b) -> a -> b $ forall idL idR. XFunBind idL idR -> LIdP idL -> MatchGroup idR (LHsExpr idR) -> [CoreTickish] -> HsBindLR idL idR Ghc.FunBind NoExtField Ghc.noExtField (SrcSpan -> OccName -> LIdP GhcPs unqual SrcSpan s OccName f) MatchGroup GhcPs (LHsExpr GhcPs) g [] grhs :: Ghc.SrcSpan -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LGRHS Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) grhs :: SrcSpan -> LHsExpr GhcPs -> LGRHS GhcPs (LHsExpr GhcPs) grhs SrcSpan s = forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p body. XCGRHS p body -> [GuardLStmt p] -> body -> GRHS p body Ghc.GRHS forall a. EpAnn a Ghc.noAnn [] grhss :: Ghc.SrcSpan -> [Ghc.LGRHS Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs)] -> Ghc.GRHSs Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) grhss :: SrcSpan -> [LGRHS GhcPs (LHsExpr GhcPs)] -> GRHSs GhcPs (LHsExpr GhcPs) grhss SrcSpan _ [LGRHS GhcPs (LHsExpr GhcPs)] xs = forall p body. XCGRHSs p body -> [LGRHS p body] -> HsLocalBinds p -> GRHSs p body Ghc.GRHSs EpAnnComments Ghc.emptyComments [LGRHS GhcPs (LHsExpr GhcPs)] xs forall a b. (a -> b) -> a -> b $ forall idL idR. XEmptyLocalBinds idL idR -> HsLocalBindsLR idL idR Ghc.EmptyLocalBinds NoExtField Ghc.noExtField importDecl :: Ghc.SrcSpan -> Ghc.ModuleName -> Ghc.ModuleName -> Ghc.LImportDecl Ghc.GhcPs importDecl :: SrcSpan -> ModuleName -> ModuleName -> LImportDecl GhcPs importDecl SrcSpan s ModuleName m ModuleName n = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall a b. (a -> b) -> a -> b $ forall pass. XCImportDecl pass -> SourceText -> XRec pass ModuleName -> Maybe StringLiteral -> IsBootInterface -> Bool -> ImportDeclQualifiedStyle -> Bool -> Maybe (XRec pass ModuleName) -> Maybe (Bool, XRec pass [LIE pass]) -> ImportDecl pass Ghc.ImportDecl forall a. EpAnn a Ghc.noAnn SourceText Ghc.NoSourceText (forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall a b. (a -> b) -> a -> b $ forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s ModuleName m) forall a. Maybe a Nothing IsBootInterface Ghc.NotBoot Bool False ImportDeclQualifiedStyle Ghc.QualifiedPre Bool False (forall a. a -> Maybe a Just forall b c a. (b -> c) -> (a -> b) -> a -> c . forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall a b. (a -> b) -> a -> b $ forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s ModuleName n) forall a. Maybe a Nothing importDecls :: Ghc.SrcSpan -> [(Ghc.ModuleName, Ghc.ModuleName)] -> [Ghc.LImportDecl Ghc.GhcPs] importDecls :: SrcSpan -> [(ModuleName, ModuleName)] -> [LImportDecl GhcPs] importDecls = forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap forall b c a. (b -> c) -> (a -> b) -> a -> c . forall a b c. (a -> b -> c) -> (a, b) -> c uncurry forall b c a. (b -> c) -> (a -> b) -> a -> c . SrcSpan -> ModuleName -> ModuleName -> LImportDecl GhcPs importDecl lam :: Ghc.SrcSpan -> Ghc.MatchGroup Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) -> Ghc.LHsExpr Ghc.GhcPs lam :: SrcSpan -> MatchGroup GhcPs (LHsExpr GhcPs) -> LHsExpr GhcPs lam SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XLam p -> MatchGroup p (LHsExpr p) -> HsExpr p Ghc.HsLam NoExtField Ghc.noExtField lastStmt :: Ghc.SrcSpan -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LStmt Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) lastStmt :: SrcSpan -> LHsExpr GhcPs -> LStmt GhcPs (LHsExpr GhcPs) lastStmt SrcSpan s LHsExpr GhcPs e = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall a b. (a -> b) -> a -> b $ forall idL idR body. XLastStmt idL idR body -> body -> Maybe Bool -> SyntaxExpr idR -> StmtLR idL idR body Ghc.LastStmt NoExtField Ghc.noExtField LHsExpr GhcPs e forall a. Maybe a Nothing SyntaxExpr GhcPs noSyntaxExpr lit :: Ghc.SrcSpan -> Ghc.HsLit Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs lit :: SrcSpan -> HsLit GhcPs -> LHsExpr GhcPs lit SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XLitE p -> HsLit p -> HsExpr p Ghc.HsLit forall a. EpAnn a Ghc.noAnn noSyntaxExpr :: Ghc.SyntaxExpr Ghc.GhcPs noSyntaxExpr :: SyntaxExpr GhcPs noSyntaxExpr = forall (p :: Pass). IsPass p => SyntaxExpr (GhcPass p) Ghc.noSyntaxExpr match :: Ghc.SrcSpan -> Ghc.HsMatchContext (Ghc.NoGhcTc Ghc.GhcPs) -> [Ghc.LPat Ghc.GhcPs] -> Ghc.GRHSs Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) -> Ghc.LMatch Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) match :: SrcSpan -> HsMatchContext (NoGhcTc GhcPs) -> [LPat GhcPs] -> GRHSs GhcPs (LHsExpr GhcPs) -> LMatch GhcPs (LHsExpr GhcPs) match SrcSpan s HsMatchContext (NoGhcTc GhcPs) c [LPat GhcPs] ps = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p body. XCMatch p body -> HsMatchContext (NoGhcTc p) -> [LPat p] -> GRHSs p body -> Match p body Ghc.Match forall a. EpAnn a Ghc.noAnn HsMatchContext (NoGhcTc GhcPs) c [LPat GhcPs] ps mg :: Ghc.Located [Ghc.LMatch Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs)] -> Ghc.MatchGroup Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) mg :: Located [LMatch GhcPs (LHsExpr GhcPs)] -> MatchGroup GhcPs (LHsExpr GhcPs) mg Located [LMatch GhcPs (LHsExpr GhcPs)] ms = forall p body. XMG p body -> XRec p [LMatch p body] -> Origin -> MatchGroup p body Ghc.MG NoExtField Ghc.noExtField (forall e ann. Located e -> LocatedAn ann e Ghc.reLocA Located [LMatch GhcPs (LHsExpr GhcPs)] ms) Origin Ghc.Generated opApp :: Ghc.SrcSpan -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs opApp :: SrcSpan -> LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs opApp SrcSpan s LHsExpr GhcPs l LHsExpr GhcPs o = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XOpApp p -> LHsExpr p -> LHsExpr p -> LHsExpr p -> HsExpr p Ghc.OpApp forall a. EpAnn a Ghc.noAnn LHsExpr GhcPs l LHsExpr GhcPs o par :: Ghc.SrcSpan -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs par :: SrcSpan -> LHsExpr GhcPs -> LHsExpr GhcPs par SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XPar p -> LHsExpr p -> HsExpr p Ghc.HsPar forall a. EpAnn a Ghc.noAnn qual :: Ghc.SrcSpan -> Ghc.ModuleName -> Ghc.OccName -> Ghc.LIdP Ghc.GhcPs qual :: SrcSpan -> ModuleName -> OccName -> LIdP GhcPs qual SrcSpan s ModuleName m = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . ModuleName -> OccName -> RdrName Ghc.mkRdrQual ModuleName m qualTyVar :: Ghc.SrcSpan -> Ghc.ModuleName -> Ghc.OccName -> Ghc.LHsType Ghc.GhcPs qualTyVar :: SrcSpan -> ModuleName -> OccName -> LHsType GhcPs qualTyVar SrcSpan s ModuleName m = SrcSpan -> LIdP GhcPs -> LHsType GhcPs tyVar SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . SrcSpan -> ModuleName -> OccName -> LIdP GhcPs qual SrcSpan s ModuleName m qualVar :: Ghc.SrcSpan -> Ghc.ModuleName -> Ghc.OccName -> Ghc.LHsExpr Ghc.GhcPs qualVar :: SrcSpan -> ModuleName -> OccName -> LHsExpr GhcPs qualVar SrcSpan s ModuleName m = SrcSpan -> LIdP GhcPs -> LHsExpr GhcPs var SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . SrcSpan -> ModuleName -> OccName -> LIdP GhcPs qual SrcSpan s ModuleName m recFields :: [Ghc.LHsRecField Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs)] -> Ghc.HsRecFields Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) recFields :: [LHsRecField GhcPs (LHsExpr GhcPs)] -> HsRecFields GhcPs (LHsExpr GhcPs) recFields = forall a b c. (a -> b -> c) -> b -> a -> c flip forall p arg. [LHsRecField p arg] -> Maybe (Located Int) -> HsRecFields p arg Ghc.HsRecFields forall a. Maybe a Nothing recField :: Ghc.SrcSpan -> Ghc.LFieldOcc Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs -> Ghc.LHsRecField Ghc.GhcPs (Ghc.LHsExpr Ghc.GhcPs) recField :: SrcSpan -> LFieldOcc GhcPs -> LHsExpr GhcPs -> LHsRecField GhcPs (LHsExpr GhcPs) recField SrcSpan s LFieldOcc GhcPs f LHsExpr GhcPs e = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall a b. (a -> b) -> a -> b $ forall id arg. XHsRecField id -> Located id -> arg -> Bool -> HsRecField' id arg Ghc.HsRecField forall a. EpAnn a Ghc.noAnn LFieldOcc GhcPs f LHsExpr GhcPs e Bool False recordCon :: Ghc.SrcSpan -> Ghc.LIdP Ghc.GhcPs -> Ghc.HsRecordBinds Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs recordCon :: SrcSpan -> LIdP GhcPs -> HsRecFields GhcPs (LHsExpr GhcPs) -> LHsExpr GhcPs recordCon SrcSpan s LIdP GhcPs c = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XRecordCon p -> XRec p (ConLikeP p) -> HsRecordBinds p -> HsExpr p Ghc.RecordCon forall a. EpAnn a Ghc.noAnn LIdP GhcPs c string :: String -> Ghc.HsLit Ghc.GhcPs string :: String -> HsLit GhcPs string = forall x. XHsString x -> FastString -> HsLit x Ghc.HsString SourceText Ghc.NoSourceText forall b c a. (b -> c) -> (a -> b) -> a -> c . String -> FastString Ghc.mkFastString tupArg :: Ghc.LHsExpr Ghc.GhcPs -> Ghc.HsTupArg Ghc.GhcPs tupArg :: LHsExpr GhcPs -> HsTupArg GhcPs tupArg = forall id. XPresent id -> LHsExpr id -> HsTupArg id Ghc.Present forall a. EpAnn a Ghc.noAnn tyVar :: Ghc.SrcSpan -> Ghc.LIdP Ghc.GhcPs -> Ghc.LHsType Ghc.GhcPs tyVar :: SrcSpan -> LIdP GhcPs -> LHsType GhcPs tyVar SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall pass. XTyVar pass -> PromotionFlag -> LIdP pass -> HsType pass Ghc.HsTyVar forall a. EpAnn a Ghc.noAnn PromotionFlag Ghc.NotPromoted unqual :: Ghc.SrcSpan -> Ghc.OccName -> Ghc.LIdP Ghc.GhcPs unqual :: SrcSpan -> OccName -> LIdP GhcPs unqual SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . OccName -> RdrName Ghc.mkRdrUnqual var :: Ghc.SrcSpan -> Ghc.LIdP Ghc.GhcPs -> Ghc.LHsExpr Ghc.GhcPs var :: SrcSpan -> LIdP GhcPs -> LHsExpr GhcPs var SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XVar p -> LIdP p -> HsExpr p Ghc.HsVar NoExtField Ghc.noExtField varPat :: Ghc.SrcSpan -> Ghc.LIdP Ghc.GhcPs -> Ghc.LPat Ghc.GhcPs varPat :: SrcSpan -> LIdP GhcPs -> LPat GhcPs varPat SrcSpan s = forall e ann. Located e -> LocatedAn ann e Ghc.reLocA forall b c a. (b -> c) -> (a -> b) -> a -> c . forall l e. l -> e -> GenLocated l e Ghc.L SrcSpan s forall b c a. (b -> c) -> (a -> b) -> a -> c . forall p. XVarPat p -> LIdP p -> Pat p Ghc.VarPat NoExtField Ghc.noExtField