-- UUAGC 0.9.50.2 (build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag) module UHC.Light.Compiler.HS.MainAG(Inh_AGItf (..), Syn_AGItf (..), sem_AGItf, wrap_AGItf , tyGam2IdDefOccGam, kiGam2IdDefOccGam , clGam2IdDefOccGam) where import Data.Char import Data.Maybe import Data.List as List import qualified Data.Map as Map import UHC.Util.Pretty import UHC.Light.Compiler.Base.Common import UHC.Light.Compiler.Base.TermLike import UHC.Light.Compiler.Base.HsName.Builtin import UHC.Light.Compiler.Opts import UHC.Light.Compiler.Gam.Full import UHC.Light.Compiler.Error import UHC.Light.Compiler.Error.Pretty import UHC.Light.Compiler.HS import UHC.Light.Compiler.NameAspect import UHC.Util.DependencyGraph import qualified UHC.Util.FastSeq as Seq import UHC.Util.Utils import qualified UHC.Light.Compiler.EH as EH import qualified Data.Set as Set import UHC.Light.Compiler.Ty (tyQu_Forall,tyQu_Exists) import UHC.Light.Compiler.Base.Target import UHC.Light.Compiler.Gam.ClGam import qualified UHC.Util.Rel as Rel import UHC.Light.Compiler.Module.ImportExport import UHC.Light.Compiler.Foreign import UHC.Light.Compiler.Foreign.Parser import Data.Ratio import UHC.Light.Compiler.Scanner.Common(floatDenot2NomDenom,intDenot2Integer) import UHC.Light.Compiler.Base.Debug as Debug import qualified UHC.Light.Compiler.Base.Pragma as Pragma doccForUse ::Maybe IdDefOcc -> IdIsDef doccForUse md = case md of Just d -> IdIsDef (doccLev d) Nothing -> IdIsNotDef mkBuiltinIdDefOcc :: HsName -> IdOccKind -> (IdOcc,IdDefOcc) mkBuiltinIdDefOcc n k = (o,emptyIdDefOcc {doccOcc = o, doccLev = nmLevBuiltin, doccRange = builtinRange}) where o = IdOcc n k tyGam2IdDefOccGam :: TyGam -> IdDefOccGam tyGam2IdDefOccGam = gamMap (\(n,_) -> mkBuiltinIdDefOcc n IdOcc_Type) kiGam2IdDefOccGam :: KiGam -> IdDefOccGam kiGam2IdDefOccGam = gamMap (\(n,_) -> mkBuiltinIdDefOcc n IdOcc_Kind) clGam2IdDefOccGam :: ClGam -> IdDefOccGam clGam2IdDefOccGam = gamMap (\(n,_) -> mkBuiltinIdDefOcc n IdOcc_Class) data IdIsDef = IdIsDef { idIsDefLev :: NmLev } | IdIsNotDef | IdIsInWrongModule IdOcc deriving (Show) idIsDef :: IdIsDef -> Bool idIsDef (IdIsDef _) = True idIsDef _ = False instance PP IdIsDef where pp (IdIsDef _) = pp "Def'd" pp IdIsNotDef = pp "Undef'd" pp (IdIsInWrongModule o) = "Wrong" >#< o data IdUseOcc = IdUseOcc { uoccOcc :: IdOcc , uoccAsp :: IdAspect , uoccRange :: Range , uoccIsDef :: IdIsDef } deriving (Show) instance PP IdUseOcc where pp o = uoccOcc o >|< "/" >|< uoccIsDef o type IdUseOccGam = Gam IdOcc IdUseOcc type IdUseOccAsc = AssocL IdOcc [IdUseOcc] splitIdUseOccGam :: Int -> IdUseOccGam -> (IdUseOccGam, IdUseOccAsc, IdUseOccAsc, IdUseOccGam) splitIdUseOccGam level g = (assocDupLToGam o,h,i,assocDupLToGam e) where (o,h,i,e) = foldr (\x@(k,occs) (o,h,i,e) -> case partition (idIsDef . uoccIsDef) occs of (occ:_,[]) -> case compare (idIsDefLev $ uoccIsDef $ occ) level of LT -> (x:o, h, i, e) EQ -> ( o,x:h, i, e) GT -> ( o, h,x:i, e) (_,(_:_)) -> ( o, h, i,x:e) ) ([],[],[],[]) (gamToAssocDupL g) mkDefOccGam'' :: NmLev -> Range -> (x -> IdOcc -> IdAspect) -> AssocL x IdOcc -> IdDefOccGam mkDefOccGam'' l r mka os = assocLToGamWithDups [ (o,mkIdDefOcc o (mka x o) l r) | (x,o) <- os ] mkDefOccGam' :: NmLev -> Range -> (IdOcc -> IdAspect) -> [IdOcc] -> IdDefOccGam mkDefOccGam' l r mka os = mkDefOccGam'' l r (\_ -> mka) (zip (repeat undefined) os) {-# INLINE mkDefOccGam' #-} mkDefOccGam :: NmLev -> Range -> IdAspect -> [IdOcc] -> IdDefOccGam mkDefOccGam l r a os = mkDefOccGam' l r (const a) os {-# INLINE mkDefOccGam #-} varL2IdDefOccGam :: IdOccKind -> IdAspect -> NmLev -> Range -> [HsName] -> IdDefOccGam varL2IdDefOccGam k a l r ns = mkDefOccGam l r a [ IdOcc n k | n <- ns ] tvarL2IdDefOccGam :: NmLev -> Range -> [HsName] -> IdDefOccGam tvarL2IdDefOccGam = varL2IdDefOccGam IdOcc_Type IdAsp_Type_Var varS2IdDefOccGam :: IdOccKind -> IdAspect -> NmLev -> Range -> HsNameS -> IdDefOccGam varS2IdDefOccGam k a l r ns = varL2IdDefOccGam k a l r (Set.toList ns) tvarS2IdDefOccGam :: NmLev -> Range -> HsNameS -> IdDefOccGam tvarS2IdDefOccGam = varS2IdDefOccGam IdOcc_Type IdAsp_Type_Var kvarL2IdDefOccGam :: NmLev -> Range -> [HsName] -> IdDefOccGam kvarL2IdDefOccGam = varL2IdDefOccGam IdOcc_Kind IdAsp_Kind_Var kvarS2IdDefOccGam :: NmLev -> Range -> HsNameS -> IdDefOccGam kvarS2IdDefOccGam = varS2IdDefOccGam IdOcc_Kind IdAsp_Kind_Var -- | Get the names used by the literals -- Note: don't change the order in returned lists, only append new values, as position is assumed to be fixed litNames :: EHCOpts -> Literal -> Bool -> Int -> [([HsName],IdOccKind,IdAspect)] litNames opts lit isPat sign = case lit of Literal_String r s -> mk' (if isPat then IdAsp_Val_Con else IdAsp_Val_Var) [hsnDataListAltCons,hsnDataListAltNil] ++ (if ehcOptOverloadedStrings opts then mk [hsnDataStringFromString] else []) Literal_Int _ _ _ | sign < 0 -> mk [hsnFromInteger,hsnNegate] | otherwise -> mk [hsnFromInteger] Literal_Float _ _ | sign < 0 -> mk [hsnMkRatio,hsnFromRational,hsnNegate] | otherwise -> mk [hsnMkRatio,hsnFromRational] _ -> [] where mk' a ns = [(ns,IdOcc_Val,a)] mk = mk' IdAsp_Val_Var mkUseOccGam :: EHCOpts -> IdDefOccGam -> [HsName] -> IdOccKind -> IdAspect -> Range -> (HsName,[HsName],IdUseOccGam,[Err]) mkUseOccGam opts idGam names kind asp rng = mkUseOccGam' opts idGam [(names,kind,asp)] rng mkUseOccGam' :: EHCOpts -> IdDefOccGam -> [([HsName],IdOccKind,IdAspect)] -> Range -> (HsName,[HsName],IdUseOccGam,[Err]) mkUseOccGam' _ _ [] _ = (hsnUnknown,[],emptyGam,[]) mkUseOccGam' opts idGam names rng = (if null ns then hsnUnknown else n, ns, gamUnions g, concat e) where (ns@(~(n:_)),g,e) = unzip3 [ mkUse idGam n kind asp rng | (ns,kind,asp) <- names, n <- ns ] mkUse idGam name kind asp rng = (nmOfDef,idUseOccGam,errs) where idOccUse = IdOcc name kind mbDef = -- (\v -> tr "XX" (idOccUse >#< ">>>>>" >#< v) v) $ case gamLookup idOccUse idGam of Nothing | hsnIsInPrelude name -> if ehcOptUseAssumePrelude opts then Just (emptyIdDefOcc {doccOcc = idOccUse}) else gamLookup (idOccUse {ioccNm = hsnQualified $ ioccNm idOccUse}) idGam md -> md nmOfDef = case mbDef of Just d -> ioccNm $ doccOcc d _ -> name occOfDef = idOccUse {ioccNm = nmOfDef} idUseOccGam = gamSingleton occOfDef (IdUseOcc occOfDef asp rng (doccForUse mbDef)) errs = case mbDef of Just d | Set.size (doccNmAlts d) > 1 -> [rngLift rng Err_AmbiguousNameRef "name" k name (Set.toList $ doccNmAlts d)] where k = (show $ ioccKind $ doccOcc d) ++ " (" ++ (showPP $ pp $ doccAsp d) ++ ")" _ -> [] type IdDpdMp = Map.Map IdOcc [IdOcc] idDpdMpSingleton :: IdOcc -> IdOcc -> IdDpdMp idDpdMpSingleton f t = Map.singleton f [t] idDpdMpUnions :: [IdDpdMp] -> IdDpdMp idDpdMpUnions = Map.unionsWith (++) idDpdMpUnion :: IdDpdMp -> IdDpdMp -> IdDpdMp idDpdMpUnion = Map.unionWith (++) idToOccL2DpdMp :: [IdOcc] -> AssocL IdOcc x -> IdDpdMp idToOccL2DpdMp fs l = if null ts then Map.empty else idDpdMpUnions [ Map.singleton f ts | f <- fs ] where ts = assocLKeys l idToOccGam2DpdMp :: [IdOcc] -> Gam IdOcc x -> IdDpdMp idToOccGam2DpdMp fs l = idToOccL2DpdMp fs (gamToAssocL l) idFrOccGam2DpdMp :: Gam IdOcc x -> [IdOcc] -> IdDpdMp idFrOccGam2DpdMp g ts = if null ts then Map.empty else idDpdMpUnions [ Map.singleton f ts | (f,_) <- gamToAssocL g ] idDpdMp2SccOrder :: IdDefOccGam -> IdDpdMp -> [[IdOcc]] idDpdMp2SccOrder gam mp = dgSCCToList gr where dflt = idDpdMpUnions [ idDpdMpSingleton o o | o <- gamKeys gam ] `Map.difference` mp gr = mkDpdGrFromEdgesMp (idDpdMpUnions [mp,dflt]) mkIdDefEH :: IdDefOcc -> [EH.Decl] mkIdDefEH def = case doccAsp def of IdAsp_Val_Pat decl -> [decl] IdAsp_Val_Sig decl -> [decl] IdAsp_Val_Fun lhs rhs _ -> [decl] where (h,t) = hdAndTl lhs decl = rngLift (doccRange def) EH.Decl_Val h (foldr (rngLift (doccRange def) EH.Expr_Lam) rhs t) IdAsp_Type_Def decl -> [decl] IdAsp_Type_Sig decl -> [decl] IdAsp_Val_Foreign decl -> [decl] IdAsp_Class_Def decl declInst -> [decl,declInst] IdAsp_Inst_Def decl _ -> [decl] IdAsp_Dflt_Def decl ignore | not ignore -> [decl] IdAsp_Val_Fusion decl -> [decl] IdAsp_Fusion_Conv decl -> [decl] _ -> [] mergeFunDefL :: Range -> [IdDefOcc] -> ([IdDefOcc],[Err]) mergeFunDefL _ ds = case ds of [_] -> (ds,[]) (od : _ : _) | iaspIsFun (doccAsp od) -> ([d],e) where (IdAsp_Val_Fun (patf:pats1) _ uniq) = doccAsp od xSz = length pats1 xNmL = [ mkHNm ("x" ++ show i) | i <- [1..xSz] ] xPatL = map (rngLift r EH.PatExpr_Var) xNmL b = EH.mkCase' r (appRngProdOpt r $ map (rngLift r EH.Expr_Var) $ xNmL) (Just $ Set.fromList $ map (iaspUniq . doccAsp) ds) Set.empty (length xNmL > 1) $ zipWith (EH.mkAlt r) [ appRngProdOpt r $ tail $ iaspPatL $ doccAsp d | d <- ds ] [ iaspBody $ doccAsp $ d | d <- ds ] d = mkIdDefOcc (doccOcc od) (IdAsp_Val_Fun (patf:xPatL) b uniq) 0 r e | length patLens > 1 = [rngLift r Err_FunPatternLengths (ioccNm $ doccOcc od)] | otherwise = [] where patLens = Set.toList $ Set.fromList [ length $ iaspPatL $ doccAsp d | d <- ds ] r = rangeUnions [ doccRange d | d <- ds ] _ -> ([],[]) splitOff :: [IdDefOcc] -> [[IdDefOcc]] splitOff = foldr (\df dfs -> zipWith (++) (s df) dfs) (repeat []) where s d = case doccAsp d of (IdAsp_Inst_Def _ _) -> [[],[d]] _ -> [[d],[]] idOcc2Defs :: IdDefOccGam -> IdOcc -> [IdDefOcc] idOcc2Defs idDefOccGam occ = maybe [] id $ gamLookupDup occ idDefOccGam mkIdOccEH :: Range -> [IdDefOcc] -> ([EH.Decl],[Err]) mkIdOccEH r defs = case defs of (_:_) -> (concatMap mkIdDefEH (otherDefs ++ funDef),errL) where (funDefs,otherDefs) = partition (iaspIsFun . doccAsp) defs (funDef,errL) = mergeFunDefL r funDefs _ -> ([],[]) idDefOccs2Decls :: Range -> [[IdDefOcc]] -> ([[EH.Decl]],[Err]) idDefOccs2Decls r docss = ([concat ds], concat es) where (ds,es) = unzip $ map (mkIdOccEH r) $ docss mkIdOccSccEH :: Range -> Bool -> IdDefOccGam -> Maybe [[IdOcc]] -> (EH.Expr -> EH.Expr,[[EH.Decl]],[Err]) mkIdOccSccEH r isStrict g moss = (m . mkLet (concat sds), d ++ sds, e ++ ses) where (m,d,e) = foldr mkl (id,[],[]) doss mkl dos (mke,d,e) = ((\e -> foldr mkLet e dss) . mke,dss ++ d, es ++ e) where (dss,es) = idDefOccs2Decls r dos mkLet ds = EH.mkLet' isStrict r (Just ds) (sds,ses) = idDefOccs2Decls r $ concat $ spls (doss:spls:_) = collapse [ collapse [ splitOff $ idOcc2Defs g $ l | l <- ll ] | ll <- maybe [gamKeys g] id moss ] collapse :: [[a]] -> [[a]] collapse = foldr (zipWith (:)) (repeat []) type PatchEhNmInInstance = HsName -> HsName idDupCheckInfo :: AssocL IdOccKind (AssocL String (IdAspect -> Bool)) idDupCheckInfo = [ ( IdOcc_Val , [ ( "type signature" , iaspIsValSig ) , ( "value" , (\a -> iaspIsValVar a || iaspIsFun a || iaspIsValFld a || iaspIsValForeign a ) ) , ( "operator fixity" , iaspIsValFix ) , ( "data constructor" , iaspIsValCon ) ] ) , ( IdOcc_Type , [ ( "type variable" , iaspIsTypeVar ) , ( "type" , iaspIsTypeDef ) , ( "kind signature" , iaspIsTypeSig ) ] ) , ( IdOcc_Class , [ ( "class" , iaspIsClassDef ) ] ) ] idDefOccGamCheckDupNames :: IdDefOccGam -> [Err] idDefOccGamCheckDupNames g = case dups of [] -> [] es -> map mk es where mk (info,ds@((_,Just ((r,_):_)):_)) = rngLift r Err_NamesDupIntrod info ds where dups = Map.toList $ Map.unionsWith (++) $ [ Map.singleton info [(n,Just [(doccRange d, Just $ pp $ doccAsp d) | d <- defs])] | (IdOcc {ioccKind=k, ioccNm=n},ds) <- gamToAssocDupL g , check <- maybeToList $ lookup k idDupCheckInfo , (info,defs) <- filter (\(_,x) -> length x > 1) $ assocLMapElt (\c -> filter (\d -> c (doccAsp d)) $ collapse ds) check ] -- Functions and data fields are allowed to have duplicate entries, so they are collapsed into 1. -- For data fields under the provision that the type to which they belong is the same, but the constructor not (another weird language complexity check) collapse ds = take 1 funs ++ (map head $ filter (\l -> length l > 0) $ map concat flds1PerCon) ++ (concat $ concat fldsManyPerCon) ++ others2 where (funs,others1) = partition (iaspIsFun . doccAsp) ds (flds,others2) = partition (iaspIsValFld . doccAsp) others1 fldsGrouped = map (groupOn (iaspConNm . doccAsp)) $ groupOn (iaspDataNm . doccAsp) flds (flds1PerCon,fldsManyPerCon) = unzip $ map (partition (\l -> length l == 1)) $ fldsGrouped ppInstNm :: Bool -> Maybe HsName -> PP_Doc ppInstNm useimplicitly maybeinstancename = maybe empty (\n -> " " >|< n >#< (if useimplicitly then "<:" else "::")) maybeinstancename data OpChain leaf = OpChain_Op leaf PP_Doc Fixity Int Range (OpChain leaf) (OpChain leaf) | OpChain_Leaf leaf opChainReArrange :: OpChain e -> (OpChain e,[Err]) opChainReArrange opChain = case opChain of OpChain_Op op1 pp1 f1 p1 pos1 l1 r1 -> case opChainReArrange r1 of (OpChain_Op op2 pp2 f2 p2 pos2 l2 r2,rerr) | p1 > p2 -> (lvariant,lerr) | p1 < p2 -> (rvariant,rerr) | p1 == p2 -> case (f1,f2,lvariant,rvariant) of (Fixity_Infixr,Fixity_Infixr,_,r) -> (r,rerr) (Fixity_Infixl,Fixity_Infixl,l,_) -> (l,lerr) (Fixity_Infix ,_ ,l,_) -> (l,[rngLift pos2 Err_Fixity pp1 pp2] ++ lerr) where (lrearr,lerr) = opChainReArrange (OpChain_Op op1 pp1 f1 p1 pos1 l1 l2) lvariant = OpChain_Op op2 pp2 f2 p2 pos2 lrearr r2 rvariant = OpChain_Op op1 pp1 f1 p1 pos1 l1 (OpChain_Op op2 pp2 f2 p2 pos2 l2 r2) (r1l@(OpChain_Leaf _),rerr) -> (OpChain_Op op1 pp1 f1 p1 pos1 l1 r1l,rerr) _ -> (opChain,[]) unOpChain :: AppLike a boundmeta => OpChain a -> a unOpChain opChain = un opChain where un ch = case ch of OpChain_Op op _ _ _ rng l r -> appRngParApp rng [op,un l,un r] OpChain_Leaf leaf -> leaf ehSection :: AppLike eh bound => UID -> Range -> RngLiftArg (HsName -> eh) -> RngLiftArg (HsName -> ehp) -> RngLiftArg (ehp -> eh -> eh) -> Maybe eh -> eh -> Maybe eh -> eh ehSection uniq range semvar sempatvar semlam left op right = case (left,right) of -- (Just l ,Just r ) -> appRngParApp range [op,l,r] (Nothing,Just r ) -> rngLift range semlam np (appRngParApp range [op,ne,r]) (Just l ,Nothing) -> appRngParApp range [op,l] (Nothing,Nothing) -> op where n = mkHNmHidden $ mkHNm ("x_" ++ show uniq) ne = rngLift range semvar n np = rngLift range sempatvar n ehTupleConstructor :: AppLike eh bound => Range -> Int -> RngLiftArg (HsName -> eh) -> RngLiftArg (HsName -> ehp) -> RngLiftArg (ehp -> eh -> eh) -> ([ehp] -> eh -> eh) -> RngLiftArg (r -> eh) -> RngLiftArg (r -> Maybe HsName -> eh -> r) -> RngLiftArg r -> eh ehTupleConstructor range arity semvar sempatvar semlam semtop semrecd semrecdext semrecdempty = foldr (rngLift range semlam) recd ps where ns = take arity hsnLclSupply ps = map (rngLift range sempatvar) ns recd = mkt (map (rngLift range semvar) ns) mkt ns = semtop ps $ rngLift range semrecd $ foldl (\r e -> rngLift range semrecdext r Nothing e) (rngLift range semrecdempty) ns ehTyExprArg :: EH.TyExpr -> EH.TyExpr ehTyExprArg = snd . panicJust "HS.ToEH.ehTyExprArg" . appMbApp1 . fst . appUnTop ehPlainDataField :: Range -> EH.TyExpr -> EH.DataField ehPlainDataField r = rngLift r EH.DataField_Field Nothing ehExpLitInt :: Range -> Int -> String -> Int -> [HsName] -> (EH.Expr,Maybe SrcConst) ehExpLitInt r b s sign litrefnames | sign < 0 = mk (\e -> ehExpVarApp r (litrefnames !! 1) [e], negate) | otherwise = mk (id , id ) where i = intDenot2Integer b s mk (neg,negconst) = (neg $ ehExpVarApp r (litrefnames !! 0) [rngLift r EH.Expr_IIConst i], Just $ SrcConst_Int $ negconst i) ehExpLitFloat :: Range -> String -> Int -> [HsName] -> (EH.Expr,Maybe SrcConst) ehExpLitFloat r s sign litrefnames | sign < 0 = mk (\e -> ehExpVarApp r (litrefnames !! 2) [e], \(n,d) -> (negate n, d)) | otherwise = mk (id , id ) where nd@(n,d) = floatDenot2NomDenom s mk (neg,negconst) = ( neg $ ehExpVarApp r (litrefnames !! 1) $ [rngLift r EH.Expr_Parens $ ehExpVarApp r (litrefnames !! 0) [rngLift r EH.Expr_IIConst n,rngLift r EH.Expr_IIConst d]] , Just $ uncurry SrcConst_Ratio $ negconst nd ) ehExpLitString :: EHCOpts -> Range -> String -> [HsName] -> (EH.Expr,Maybe SrcConst) ehExpLitString opts r str litrefnames | ehcOptOverloadedStrings opts = (ehExpVarApp r (litrefnames !! 2) [s], Nothing) | otherwise = (s , Nothing) where s = rngLift r EH.Expr_SConst str ehExpApp' :: (EH.Expr -> a -> EH.Expr) -> Range -> EH.Expr -> [a] -> EH.Expr ehExpApp' app r f as = rngLift r EH.Expr_AppTop $ foldl app (ehExpUnTop f) as ehExpConApp :: Range -> HsName -> [EH.Expr] -> EH.Expr ehExpConApp r n as = appRngParApp r (rngLift r EH.Expr_Con n : as) ehExpVarApp :: Range -> HsName -> [EH.Expr] -> EH.Expr ehExpVarApp r n as = appRngParApp r (rngLift r EH.Expr_Var n : as) ehExpUnTop :: EH.Expr -> EH.Expr ehExpUnTop (EH.Expr_AppTop _ e) = e ehExpUnTop e = e ehExpProd :: Range -> [EH.Expr] -> EH.Expr ehExpProd r as = ehExpConApp r (hsnProd a) as where a = length as -- original with mono restriction ehGenerator :: Range -> EH.PatExpr -> (EH.Expr -> EH.Expr) -> EH.Expr -> EH.Expr -> EH.Expr ehGenerator r p mkRes fail e = EH.mkLet r (Just [ {- -} rngLift r EH.Decl_TySig ok ([mono] `appArr` appTopApp1 mono mono) , rngLift r EH.Decl_Val (rngLift r EH.PatExpr_Var ok) (rngLift r EH.Expr_Lam (rngLift r EH.PatExpr_Var x) (EH.mkCase r (rngLift r EH.Expr_Var x) [(p,e),(rngLift r EH.PatExpr_Var hsnWild,fail)] ) ) {- , rngLift r EH.Decl_TySig res mono , rngLift r EH.Decl_Val (rngLift r EH.PatExpr_Var res) (mkRes (rngLift r EH.Expr_Var ok)) -} ]) (mkRes (rngLift r EH.Expr_Var ok)) -- (rngLift r EH.Expr_Var res) where ok = mkHNmHidden "ok" res = mkHNmHidden "ok_app" x = mkHNmHidden "x" mono = rngLift r EH.TyExpr_Mono ehRowRecExprUpd :: Range -> nm -> (EH.RecExpr -> nm -> EH.Expr -> EH.RecExpr) -> EH.Expr -> EH.Expr -> EH.Expr ehRowRecExprUpd rng nm mk updE recE = case recE of EH.Expr_Rec _ r -> mkUpd r _ -> mkUpd (r2e recE) where r2e = rngLift rng EH.RecExpr_Expr mkUpd r = rngLift rng EH.Expr_Rec (mk r nm updE) ehRowRecPatExprUpd :: Range -> nm -> (EH.RecPatExpr -> nm -> EH.PatExpr -> EH.RecPatExpr) -> EH.PatExpr -> EH.PatExpr -> EH.PatExpr ehRowRecPatExprUpd rng nm mk updE recE = case recE of EH.PatExpr_Rec _ r -> mkUpd r _ -> mkUpd (r2e recE) where r2e = rngLift rng EH.RecPatExpr_Expr mkUpd r = rngLift rng EH.PatExpr_Rec (mk r nm updE) ehRowRowTyExprUpd :: Range -> nm -> (EH.RowTyExpr -> nm -> EH.TyExpr -> EH.RowTyExpr) -> EH.TyExpr -> EH.TyExpr -> EH.TyExpr ehRowRowTyExprUpd rng nm mk updE recE = case recE of EH.TyExpr_Row _ r -> mkUpd r EH.TyExpr_Var _ v -> mkUpd (rngLift rng EH.RowTyExpr_Var v) _ -> mkUpd (rngLift rng EH.RowTyExpr_Empty) where mkUpd r = rngLift rng EH.TyExpr_Row (mk r nm updE) -- | enforce monomorphism ehMkEnforceMono :: Range -> Bool -> EH.Expr -> EH.Expr ehMkEnforceMono r True e = rngLift r EH.Expr_TypeAs False (rngLift r EH.TyExpr_Mono) e ehMkEnforceMono _ _ e = e ehPatConApp r n as = rngLift r EH.PatExpr_AppTop $ foldl (rngLift r EH.PatExpr_App) (rngLift r EH.PatExpr_Con n) as ehPatProd :: Range -> [EH.PatExpr] -> EH.PatExpr ehPatProd r as = ehPatConApp r (hsnProd a) as where a = length as data TypeConFixedMeaning = TyConIsOther | TyConIsPrArrow | TyConIsEqTilde deriving Eq extrTopInstanceNm :: [HsName] -> (Maybe HsName,[HsName]) extrTopInstanceNm nms = case nms of (n:t) -> (Just n,t) _ -> (Nothing,[]) -- AGItf ------------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam gUniq : UID idGam : IdDefOccGam isTopMod : Bool modEntToOrig : ModEntRngMp modInScope : ModEntDomMp moduleNm : HsName opts : EHCOpts topInstanceNmL : [HsName] synthesized attributes: eh : EH.AGItf errSq : ErrSq fileHeaderPragmas : Set.Set Pragma.Pragma gathFixityGam : FixityGam gathIdGam : IdDefOccGam mainValExists : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc alternatives: alternative AGItf: child module : Module visit 0: local patchEhNmInInstance : _ local nmLev : _ local ppExtra : _ local isMainMod : _ -} -- cata sem_AGItf :: AGItf -> T_AGItf sem_AGItf (AGItf_AGItf _module) = (sem_AGItf_AGItf (sem_Module _module)) -- semantic domain type T_AGItf = FixityGam -> UID -> IdDefOccGam -> Bool -> ModEntRngMp -> ModEntDomMp -> HsName -> EHCOpts -> ([HsName]) -> ( (EH.AGItf),ErrSq,(Set.Set Pragma.Pragma),FixityGam,IdDefOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc)) data Inh_AGItf = Inh_AGItf {fixityGam_Inh_AGItf :: !(FixityGam),gUniq_Inh_AGItf :: !(UID),idGam_Inh_AGItf :: !(IdDefOccGam),isTopMod_Inh_AGItf :: !(Bool),modEntToOrig_Inh_AGItf :: !(ModEntRngMp),modInScope_Inh_AGItf :: !(ModEntDomMp),moduleNm_Inh_AGItf :: !(HsName),opts_Inh_AGItf :: !(EHCOpts),topInstanceNmL_Inh_AGItf :: !(([HsName]))} data Syn_AGItf = Syn_AGItf {eh_Syn_AGItf :: !((EH.AGItf)),errSq_Syn_AGItf :: !(ErrSq),fileHeaderPragmas_Syn_AGItf :: !((Set.Set Pragma.Pragma)),gathFixityGam_Syn_AGItf :: !(FixityGam),gathIdGam_Syn_AGItf :: !(IdDefOccGam),mainValExists_Syn_AGItf :: !(Bool),pp_Syn_AGItf :: !(PP_Doc),ppWrap_Syn_AGItf :: !((PP_Doc -> PP_Doc))} wrap_AGItf :: T_AGItf -> Inh_AGItf -> Syn_AGItf wrap_AGItf sem (Inh_AGItf _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisTopMod _lhsImodEntToOrig _lhsImodInScope _lhsImoduleNm _lhsIopts _lhsItopInstanceNmL) = (let ( _lhsOeh,_lhsOerrSq,_lhsOfileHeaderPragmas,_lhsOgathFixityGam,_lhsOgathIdGam,_lhsOmainValExists,_lhsOpp,_lhsOppWrap) = sem _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisTopMod _lhsImodEntToOrig _lhsImodInScope _lhsImoduleNm _lhsIopts _lhsItopInstanceNmL in (Syn_AGItf _lhsOeh _lhsOerrSq _lhsOfileHeaderPragmas _lhsOgathFixityGam _lhsOgathIdGam _lhsOmainValExists _lhsOpp _lhsOppWrap)) sem_AGItf_AGItf :: T_Module -> T_AGItf sem_AGItf_AGItf module_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisTopMod _lhsImodEntToOrig _lhsImodInScope _lhsImoduleNm _lhsIopts _lhsItopInstanceNmL -> (let _lhsOpp :: PP_Doc _lhsOeh :: (EH.AGItf) _lhsOerrSq :: ErrSq _lhsOfileHeaderPragmas :: (Set.Set Pragma.Pragma) _lhsOgathFixityGam :: FixityGam _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgathIdGam :: IdDefOccGam _lhsOmainValExists :: Bool _moduleOfixityGam :: FixityGam _moduleOgUniq :: UID _moduleOidGam :: IdDefOccGam _moduleOisMainMod :: Bool _moduleOisTopMod :: Bool _moduleOmodEntToOrig :: ModEntRngMp _moduleOmodInScope :: ModEntDomMp _moduleOmoduleNm :: HsName _moduleOnmLev :: NmLev _moduleOopts :: EHCOpts _moduleOpatchEhNmInInstance :: PatchEhNmInInstance _moduleOtopInstanceNmL :: ([HsName]) _moduleIeh :: (EH.Expr) _moduleIerrSq :: ErrSq _moduleIfileHeaderPragmas :: (Set.Set Pragma.Pragma) _moduleIgUniq :: UID _moduleIgathFixityGam :: FixityGam _moduleIgathIdGam :: IdDefOccGam _moduleIidUseOccGam :: IdUseOccGam _moduleImainValExists :: Bool _moduleIpp :: PP_Doc _moduleIppWrap :: (PP_Doc -> PP_Doc) _moduleItopInstanceNmL :: ([HsName]) _moduleIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1066, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 13, column 9) _nmLev = nmLevModule -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 14, column 17) _lhsOpp = _ppExtra >-< _moduleIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 15, column 17) _ppExtra = empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 5, column 9) _lhsOeh = EH.AGItf_AGItf _moduleIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 248, column 9) _isMainMod = _moduleImainValExists -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _moduleIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 2, column 43) _lhsOfileHeaderPragmas = _moduleIfileHeaderPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _moduleIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _moduleIppWrap -- copy rule (up) _lhsOgathIdGam = _moduleIgathIdGam -- copy rule (up) _lhsOmainValExists = _moduleImainValExists -- copy rule (down) _moduleOfixityGam = _lhsIfixityGam -- copy rule (down) _moduleOgUniq = _lhsIgUniq -- copy rule (down) _moduleOidGam = _lhsIidGam -- copy rule (from local) _moduleOisMainMod = _isMainMod -- copy rule (down) _moduleOisTopMod = _lhsIisTopMod -- copy rule (down) _moduleOmodEntToOrig = _lhsImodEntToOrig -- copy rule (down) _moduleOmodInScope = _lhsImodInScope -- copy rule (down) _moduleOmoduleNm = _lhsImoduleNm -- copy rule (from local) _moduleOnmLev = _nmLev -- copy rule (down) _moduleOopts = _lhsIopts -- copy rule (from local) _moduleOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _moduleOtopInstanceNmL = _lhsItopInstanceNmL ( _moduleIeh,_moduleIerrSq,_moduleIfileHeaderPragmas,_moduleIgUniq,_moduleIgathFixityGam,_moduleIgathIdGam,_moduleIidUseOccGam,_moduleImainValExists,_moduleIpp,_moduleIppWrap,_moduleItopInstanceNmL,_moduleIundefOccGam) = module_ _moduleOfixityGam _moduleOgUniq _moduleOidGam _moduleOisMainMod _moduleOisTopMod _moduleOmodEntToOrig _moduleOmodInScope _moduleOmoduleNm _moduleOnmLev _moduleOopts _moduleOpatchEhNmInInstance _moduleOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfileHeaderPragmas,_lhsOgathFixityGam,_lhsOgathIdGam,_lhsOmainValExists,_lhsOpp,_lhsOppWrap))) -- Alternative ------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.CaseAlt] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Alternative: child range : {Range} child pattern : Pattern child righthandside : RightHandSide visit 0: local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ alternative Empty: child range : {Range} -} -- cata sem_Alternative :: Alternative -> T_Alternative sem_Alternative (Alternative_Alternative _range _pattern _righthandside) = (sem_Alternative_Alternative _range (sem_Pattern _pattern) (sem_RightHandSide _righthandside)) sem_Alternative (Alternative_Empty _range) = (sem_Alternative_Empty _range) -- semantic domain type T_Alternative = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.CaseAlt]),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Alternative_Alternative :: Range -> T_Pattern -> T_RightHandSide -> T_Alternative sem_Alternative_Alternative range_ pattern_ righthandside_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _righthandsideOidGam :: IdDefOccGam _righthandsideOsepPP :: PP_Doc _lhsOeh :: ([EH.CaseAlt]) _righthandsideOmustBeMono :: Bool _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _righthandsideOcaseId :: UID _righthandsideOfixityGam :: FixityGam _righthandsideOgUniq :: UID _righthandsideOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _righthandsideOmoduleNm :: HsName _righthandsideOnmLev :: NmLev _righthandsideOopts :: EHCOpts _righthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _righthandsideOpragmas :: (Set.Set Pragma.Pragma) _righthandsideOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam _righthandsideIeh :: (EH.Expr) _righthandsideIerrSq :: ErrSq _righthandsideIgUniq :: UID _righthandsideIidUseOccGam :: IdUseOccGam _righthandsideIpp :: PP_Doc _righthandsideIppWrap :: (PP_Doc -> PP_Doc) _righthandsideItopInstanceNmL :: ([HsName]) _righthandsideIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 392, column 9) _righthandsideOidGam = gamUnion _patternIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 73, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 121, column 9) _errDupIntro = idDefOccGamCheckDupNames _patternIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 93, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, _patternIerrSq, _righthandsideIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 275, column 9) _pp = _patternIpp >#< _righthandsideIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 276, column 9) _righthandsideOsepPP = pp "->" -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 625, column 9) _lhsOeh = [EH.mkAlt range_ _patternIeh _righthandsideIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 278, column 9) _righthandsideOmustBeMono = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam `gamAddGam` _righthandsideIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap . _righthandsideIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam `gamUnion` _righthandsideIundefOccGam -- copy rule (up) _lhsOgUniq = _righthandsideIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _righthandsideItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (from local) _patternOnmLev = _nmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _righthandsideOcaseId = _lhsIcaseId -- copy rule (down) _righthandsideOfixityGam = _lhsIfixityGam -- copy rule (chain) _righthandsideOgUniq = _patternIgUniq -- copy rule (down) _righthandsideOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _righthandsideOmoduleNm = _lhsImoduleNm -- copy rule (from local) _righthandsideOnmLev = _nmLev -- copy rule (down) _righthandsideOopts = _lhsIopts -- copy rule (down) _righthandsideOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _righthandsideOpragmas = _lhsIpragmas -- copy rule (chain) _righthandsideOtopInstanceNmL = _patternItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL ( _righthandsideIeh,_righthandsideIerrSq,_righthandsideIgUniq,_righthandsideIidUseOccGam,_righthandsideIpp,_righthandsideIppWrap,_righthandsideItopInstanceNmL,_righthandsideIundefOccGam) = righthandside_ _righthandsideOcaseId _righthandsideOfixityGam _righthandsideOgUniq _righthandsideOgenerDerivMp _righthandsideOidGam _righthandsideOmoduleNm _righthandsideOmustBeMono _righthandsideOnmLev _righthandsideOopts _righthandsideOpatchEhNmInInstance _righthandsideOpragmas _righthandsideOsepPP _righthandsideOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Alternative_Empty :: Range -> T_Alternative sem_Alternative_Empty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.CaseAlt]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 627, column 9) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Alternatives ------------------------------------------------ {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.CaseAlt] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Alternative child tl : Alternatives alternative Nil: -} -- cata sem_Alternatives :: Alternatives -> T_Alternatives sem_Alternatives list = (Prelude.foldr sem_Alternatives_Cons sem_Alternatives_Nil (Prelude.map sem_Alternative list)) -- semantic domain type T_Alternatives = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.CaseAlt]),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Alternatives_Cons :: T_Alternative -> T_Alternatives -> T_Alternatives sem_Alternatives_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.CaseAlt]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: ([EH.CaseAlt]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.CaseAlt]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 619, column 28) _lhsOeh = _hdIeh ++ _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Alternatives_Nil :: T_Alternatives sem_Alternatives_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.CaseAlt]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 619, column 28) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Body -------------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool modEntToOrig : ModEntRngMp modInScope : ModEntDomMp moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.Expr errSq : ErrSq extraModImpL : [ModImp] gathFixityGam : FixityGam gathIdGam : IdDefOccGam idUseOccGam : IdUseOccGam mainValExists : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Body: child range : {Range} child importdeclarations : ImportDeclarations child declarations : Declarations visit 0: local idDefOccGamMain : _ local idGam : _ local mainrefname : _ local mainrefnames : _ local idUseOccGamMain : _ local errIdUse : _ local idUseHereOccL : _ local undefOccGamMain : _ local idDpdMp : _ local mainValExists : _ local sccOrder : _ local mkSccLet : _ local errReorder : _ local modAsMp : _ local refmainname : _ local idOccDefMain : _ local extraModImpL : _ local errDupIntro : _ local ppExtra : _ local ehMainDecl : _ local ehMainSig : _ local caseId : _ local pragmas : _ -} -- cata sem_Body :: Body -> T_Body sem_Body (Body_Body _range _importdeclarations _declarations) = (sem_Body_Body _range (sem_ImportDeclarations _importdeclarations) (sem_Declarations _declarations)) -- semantic domain type T_Body = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> ModEntRngMp -> ModEntDomMp -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (EH.Expr),ErrSq,([ModImp]),UID,FixityGam,IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Body_Body :: Range -> T_ImportDeclarations -> T_Declarations -> T_Body sem_Body_Body range_ importdeclarations_ declarations_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImodEntToOrig _lhsImodInScope _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _declarationsOfixityGam :: FixityGam _lhsOeh :: (EH.Expr) _lhsOgathIdGam :: IdDefOccGam _declarationsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOextraModImpL :: ([ModImp]) _lhsOgUniq :: UID _lhsOmainValExists :: Bool _lhsOtopInstanceNmL :: ([HsName]) _importdeclarationsOfixityGam :: FixityGam _importdeclarationsOgUniq :: UID _importdeclarationsOidGam :: IdDefOccGam _importdeclarationsOisMainMod :: Bool _importdeclarationsOisTopMod :: Bool _importdeclarationsOmoduleNm :: HsName _importdeclarationsOnmLev :: NmLev _importdeclarationsOopts :: EHCOpts _importdeclarationsOpatchEhNmInInstance :: PatchEhNmInInstance _importdeclarationsOtopInstanceNmL :: ([HsName]) _declarationsOcaseId :: UID _declarationsOgUniq :: UID _declarationsOidGam :: IdDefOccGam _declarationsOmoduleNm :: HsName _declarationsOnmLev :: NmLev _declarationsOopts :: EHCOpts _declarationsOpatchEhNmInInstance :: PatchEhNmInInstance _declarationsOpragmas :: (Set.Set Pragma.Pragma) _declarationsOtopInstanceNmL :: ([HsName]) _importdeclarationsIerrSq :: ErrSq _importdeclarationsIgUniq :: UID _importdeclarationsIgathFixityGam :: FixityGam _importdeclarationsIidUseOccGam :: IdUseOccGam _importdeclarationsImodAsMp :: (Map.Map HsName HsName) _importdeclarationsIpp :: PP_Doc _importdeclarationsIppWrap :: (PP_Doc -> PP_Doc) _importdeclarationsItopInstanceNmL :: ([HsName]) _importdeclarationsIundefOccGam :: IdUseOccGam _declarationsIeh :: ([EH.Decl]) _declarationsIerrSq :: ErrSq _declarationsIgUniq :: UID _declarationsIgathFixityGam :: FixityGam _declarationsIgathPragmas :: (Set.Set Pragma.Pragma) _declarationsIidDefOccGam :: IdDefOccGam _declarationsIidDpdMp :: IdDpdMp _declarationsIidOccDefs :: ([IdOcc]) _declarationsIidTySigDefOccGam :: IdDefOccGam _declarationsIidUseOccGam :: IdUseOccGam _declarationsIneedsError :: Bool _declarationsIpp :: PP_Doc _declarationsIppWrap :: (PP_Doc -> PP_Doc) _declarationsItopInstanceNmL :: ([HsName]) _declarationsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 252, column 9) _idDefOccGamMain = gamSingleton _idOccDefMain (mkIdDefOcc _idOccDefMain (IdAsp_Val_Pat _ehMainDecl) _lhsInmLev range_) `gamUnion` gamSingleton _idOccDefMain (mkIdDefOcc _idOccDefMain IdAsp_Val_Var _lhsInmLev range_) `gamUnion` gamSingleton _idOccDefMain (mkIdDefOcc _idOccDefMain (IdAsp_Val_Sig _ehMainSig) _lhsInmLev range_) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 293, column 9) _idGam = let lkn :: (IdOcc -> Bool) -> HsName -> Maybe (HsName,[ModEnt]) lkn isq n = case Map.lookup n _lhsImodInScope of Just es | not (null es') -> Just (n,es') where es' = [ e | e <- es, isq (mentIdOcc e) ] _ -> Nothing lks :: Bool -> IdOcc -> [(HsName,[ModEnt])] lks allowRename o = ns1 ++ catMaybes ns2 where (mq,n) = hsnSplitQualify (ioccNm o) (ns1,isq) = case mq of Just q -> ( qres , (\o' -> maybe False ( `elem` qquals ) (hsnQualifier (ioccNm o')) ) ) where (qres,qquals) = maybe ([],[q]) (\x@(_,es) -> ( [x] , q : extra es ) ) (lkn (const True) (hsnPrefixQual (as q) n)) Nothing -> ( [], const True ) ns2 = [lkn isq n] extra | allowRename = \es -> catMaybes $ map (hsnQualifier . ioccNm . mentIdOcc) es | otherwise = const [] as :: HsName -> HsName as n = Map.findWithDefault n n _modAsMp mkg sel g = foldr idDefOccGamUnion emptyGam [ gamSingleton (o {ioccNm = n}) (d {doccNmAlts = Set.fromList ns}) | (o,d) <- gamToAssocL g , (n,es) <- sel o , let ns = [ ioccNm eo | e <- es, let eo = mentIdOcc e, ioccKind eo == ioccKind o ] ] gnew = mkg (lks False) _lhsIidGam in mkg (lks False) _declarationsIidDefOccGam `idDefOccGamUnion` gnew -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 650, column 29) (_mainrefname,_mainrefnames,_idUseOccGamMain,_errIdUse) = mkUseOccGam _lhsIopts _idGam ( [hsnMain] ++ [hsnIO] ++ [hsnEhcRunMain] ++ (if _declarationsIneedsError then [hsnError] else []) ) IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 839, column 29) (_,_idUseHereOccL,_,_undefOccGamMain) = splitIdUseOccGam _lhsInmLev _idUseOccGamMain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 844, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDefMain] ((IdOcc _mainrefname IdOcc_Val,undefined) : _idUseHereOccL) `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamMain [_idOccDefMain] `idDpdMpUnion` _declarationsIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 849, column 9) _lhsOundefOccGam = let g = if _lhsIisMainMod then _undefOccGamMain else emptyGam in gamUnions [g,_declarationsIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 863, column 9) _mainValExists = case gamLookupDup (IdOcc _refmainname IdOcc_Val) _declarationsIidDefOccGam of Nothing -> False Just occs -> chk iaspIsValVar where chk f = not $ null $ filter (f . doccAsp) occs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 886, column 9) _sccOrder = idDpdMp2SccOrder (_idDefOccGamMain `gamUnion` _declarationsIidDefOccGam) _idDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1014, column 29) (_mkSccLet,_,_errReorder) = let g = if _lhsIisMainMod then _idDefOccGamMain else emptyGam in mkIdOccSccEH range_ False (g `gamUnion` _declarationsIidDefOccGam) (Just _sccOrder) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1054, column 9) _modAsMp = _importdeclarationsImodAsMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 8, column 9) _refmainname = hsnSetLevQual _lhsInmLev _lhsImoduleNm hsnMain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 188, column 9) _idOccDefMain = IdOcc hsnMain IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 271, column 9) _extraModImpL = if ehcOptOverloadedStrings _lhsIopts then [ModImp True hsnModDataString hsnModDataString False [ModEntSpec (hsnQualified hsnDataStringFromString) range_ Nothing] range_] else [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 97, column 9) _errDupIntro = idDefOccGamCheckDupNames _declarationsIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 9, column 9) _lhsOerrSq = Seq.firstNotEmpty [Seq.fromList _errDupIntro, Seq.fromList _errIdUse,Seq.fromList _errReorder, _declarationsIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 7, column 9) _lhsOpp = _importdeclarationsIpp >-< _declarationsIpp >-< _ppExtra -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 10, column 9) _ppExtra = empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 22, column 9) _declarationsOfixityGam = _declarationsIgathFixityGam `gamUnion` _lhsIfixityGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 51, column 9) _lhsOeh = _mkSccLet (if _lhsIisMainMod then rngLift range_ EH.Expr_Var hsnMain else rngLift range_ EH.Expr_IConst 0 ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 57, column 9) _ehMainDecl = rngLift range_ EH.Decl_Val (rngLift range_ EH.PatExpr_Var hsnMain) (appRngParApp range_ [rngLift range_ EH.Expr_Var (_mainrefnames !! 2),rngLift range_ EH.Expr_Var _mainrefname]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 57, column 9) _ehMainSig = rngLift range_ EH.Decl_TySig hsnMain (appRngParApp range_ [rngLift range_ EH.TyExpr_Con (_mainrefnames !! 1),rngLift range_ EH.TyExpr_Wild]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 881, column 9) _caseId = uidStart -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 89, column 9) _lhsOgathIdGam = _declarationsIidDefOccGam `gamUnion` assocLToGam [ (o {ioccNm = hsnSetQual _lhsImoduleNm (ioccNm o)},d) | (o,d) <- gamToAssocL _lhsIidGam , n <- Map.findWithDefault [] o _lhsImodEntToOrig ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 309, column 9) _pragmas = _declarationsIgathPragmas `Set.union` _lhsIpragmas -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 315, column 9) _declarationsOgenerDerivMp = let nm n = hsnSetLevQual _lhsInmLev _lhsImoduleNm n in Map.unionsWith (++) [ Map.singleton (nm clNm) [(nm fldNm,nm dfltNm)] | (Pragma.Pragma_Derivable clNm fldNm dfltNm) <- Set.toList _pragmas ] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _importdeclarationsIgathFixityGam `gamAddGam` _declarationsIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _importdeclarationsIidUseOccGam `gamAddGam` _declarationsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _importdeclarationsIppWrap . _declarationsIppWrap -- copy rule (from local) _lhsOextraModImpL = _extraModImpL -- copy rule (up) _lhsOgUniq = _declarationsIgUniq -- copy rule (from local) _lhsOmainValExists = _mainValExists -- copy rule (up) _lhsOtopInstanceNmL = _declarationsItopInstanceNmL -- copy rule (down) _importdeclarationsOfixityGam = _lhsIfixityGam -- copy rule (down) _importdeclarationsOgUniq = _lhsIgUniq -- copy rule (from local) _importdeclarationsOidGam = _idGam -- copy rule (down) _importdeclarationsOisMainMod = _lhsIisMainMod -- copy rule (down) _importdeclarationsOisTopMod = _lhsIisTopMod -- copy rule (down) _importdeclarationsOmoduleNm = _lhsImoduleNm -- copy rule (down) _importdeclarationsOnmLev = _lhsInmLev -- copy rule (down) _importdeclarationsOopts = _lhsIopts -- copy rule (down) _importdeclarationsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _importdeclarationsOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _declarationsOcaseId = _caseId -- copy rule (chain) _declarationsOgUniq = _importdeclarationsIgUniq -- copy rule (from local) _declarationsOidGam = _idGam -- copy rule (down) _declarationsOmoduleNm = _lhsImoduleNm -- copy rule (down) _declarationsOnmLev = _lhsInmLev -- copy rule (down) _declarationsOopts = _lhsIopts -- copy rule (down) _declarationsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (from local) _declarationsOpragmas = _pragmas -- copy rule (chain) _declarationsOtopInstanceNmL = _importdeclarationsItopInstanceNmL ( _importdeclarationsIerrSq,_importdeclarationsIgUniq,_importdeclarationsIgathFixityGam,_importdeclarationsIidUseOccGam,_importdeclarationsImodAsMp,_importdeclarationsIpp,_importdeclarationsIppWrap,_importdeclarationsItopInstanceNmL,_importdeclarationsIundefOccGam) = importdeclarations_ _importdeclarationsOfixityGam _importdeclarationsOgUniq _importdeclarationsOidGam _importdeclarationsOisMainMod _importdeclarationsOisTopMod _importdeclarationsOmoduleNm _importdeclarationsOnmLev _importdeclarationsOopts _importdeclarationsOpatchEhNmInInstance _importdeclarationsOtopInstanceNmL ( _declarationsIeh,_declarationsIerrSq,_declarationsIgUniq,_declarationsIgathFixityGam,_declarationsIgathPragmas,_declarationsIidDefOccGam,_declarationsIidDpdMp,_declarationsIidOccDefs,_declarationsIidTySigDefOccGam,_declarationsIidUseOccGam,_declarationsIneedsError,_declarationsIpp,_declarationsIppWrap,_declarationsItopInstanceNmL,_declarationsIundefOccGam) = declarations_ _declarationsOcaseId _declarationsOfixityGam _declarationsOgUniq _declarationsOgenerDerivMp _declarationsOidGam _declarationsOmoduleNm _declarationsOnmLev _declarationsOopts _declarationsOpatchEhNmInInstance _declarationsOpragmas _declarationsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOextraModImpL,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathIdGam,_lhsOidUseOccGam,_lhsOmainValExists,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Constructor ------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: conAndFldrefnames : AssocL Name Names conrefnames : Names eh : EH.DataConstr errSq : ErrSq freeTvarS : HsNameS hasFlds : Bool idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Constructor: child range : {Range} child constructor : {Name} child types : Types visit 0: local conrefname : _ local nmLev : _ local pp : _ local isAsPred : _ local doGenVarWild : _ alternative Infix: child range : {Range} child leftType : Type child constructorOperator : {Name} child rightType : Type visit 0: local conrefname : _ local nmLev : _ local pp : _ local isAsPred : _ local doGenVarWild : _ alternative Record: child range : {Range} child constructor : {Name} child fieldDeclarations : FieldDeclarations visit 0: local conrefname : _ local conAndFldrefnames : _ local pp : _ alternative Contexted: child range : {Range} child context : ContextItems child constructor : Constructor visit 0: local pp : _ alternative GADTFunction: child range : {Range} child constructor : {Name} child type : Type visit 0: local conrefname : _ local nmLev : _ local pp : _ local ehArgs : _ local ehRes : _ local isAsPred : _ local doGenVarWild : _ -} -- cata sem_Constructor :: Constructor -> T_Constructor sem_Constructor (Constructor_Constructor _range _constructor _types) = (sem_Constructor_Constructor _range _constructor (sem_Types _types)) sem_Constructor (Constructor_Infix _range _leftType _constructorOperator _rightType) = (sem_Constructor_Infix _range (sem_Type _leftType) _constructorOperator (sem_Type _rightType)) sem_Constructor (Constructor_Record _range _constructor _fieldDeclarations) = (sem_Constructor_Record _range _constructor (sem_FieldDeclarations _fieldDeclarations)) sem_Constructor (Constructor_Contexted _range _context _constructor) = (sem_Constructor_Contexted _range (sem_ContextItems _context) (sem_Constructor _constructor)) sem_Constructor (Constructor_GADTFunction _range _constructor _type) = (sem_Constructor_GADTFunction _range _constructor (sem_Type _type)) -- semantic domain type T_Constructor = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (AssocL Name Names),Names,(EH.DataConstr),ErrSq,HsNameS,UID,Bool,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Constructor_Constructor :: Range -> Name -> T_Types -> T_Constructor sem_Constructor_Constructor range_ constructor_ types_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconrefnames :: Names _lhsOeh :: (EH.DataConstr) _lhsOconAndFldrefnames :: (AssocL Name Names) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOhasFlds :: Bool _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typesOfixityGam :: FixityGam _typesOgUniq :: UID _typesOidGam :: IdDefOccGam _typesOisAsPred :: Bool _typesOnmLev :: NmLev _typesOopts :: EHCOpts _typesOpatchEhNmInInstance :: PatchEhNmInInstance _typesOtopInstanceNmL :: ([HsName]) _typesIeh :: ([EH.TyExpr]) _typesIerrSq :: ErrSq _typesIfreeTvarS :: HsNameS _typesIgUniq :: UID _typesIidUseOccGam :: IdUseOccGam _typesIpp :: PP_Doc _typesIppL :: ([PP_Doc]) _typesIppWrap :: (PP_Doc -> PP_Doc) _typesItopInstanceNmL :: ([HsName]) _typesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 64, column 9) _conrefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm constructor_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 71, column 9) _lhsOconrefnames = [_conrefname] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 38, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 178, column 9) _pp = constructor_ >#< ppSpaces _typesIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 307, column 9) _lhsOeh = rngLift range_ EH.DataConstr_Constr _conrefname Nothing (map (ehPlainDataField emptyRange) _typesIeh) Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 174, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 227, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 79, column 45) _lhsOconAndFldrefnames = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typesIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 237, column 35) _lhsOhasFlds = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typesIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typesIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typesIundefOccGam -- copy rule (up) _lhsOgUniq = _typesIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typesItopInstanceNmL -- copy rule (down) _typesOfixityGam = _lhsIfixityGam -- copy rule (down) _typesOgUniq = _lhsIgUniq -- copy rule (down) _typesOidGam = _lhsIidGam -- copy rule (from local) _typesOisAsPred = _isAsPred -- copy rule (from local) _typesOnmLev = _nmLev -- copy rule (down) _typesOopts = _lhsIopts -- copy rule (down) _typesOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typesOtopInstanceNmL = _lhsItopInstanceNmL ( _typesIeh,_typesIerrSq,_typesIfreeTvarS,_typesIgUniq,_typesIidUseOccGam,_typesIpp,_typesIppL,_typesIppWrap,_typesItopInstanceNmL,_typesIundefOccGam) = types_ _typesOfixityGam _typesOgUniq _typesOidGam _typesOisAsPred _typesOnmLev _typesOopts _typesOpatchEhNmInInstance _typesOtopInstanceNmL in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Constructor_Infix :: Range -> T_Type -> Name -> T_Type -> T_Constructor sem_Constructor_Infix range_ leftType_ constructorOperator_ rightType_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconrefnames :: Names _lhsOeh :: (EH.DataConstr) _lhsOconAndFldrefnames :: (AssocL Name Names) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOhasFlds :: Bool _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftTypeOdoGenVarWild :: Bool _leftTypeOfixityGam :: FixityGam _leftTypeOgUniq :: UID _leftTypeOidGam :: IdDefOccGam _leftTypeOisAsPred :: Bool _leftTypeOnmLev :: NmLev _leftTypeOopts :: EHCOpts _leftTypeOpatchEhNmInInstance :: PatchEhNmInInstance _leftTypeOtopInstanceNmL :: ([HsName]) _rightTypeOdoGenVarWild :: Bool _rightTypeOfixityGam :: FixityGam _rightTypeOgUniq :: UID _rightTypeOidGam :: IdDefOccGam _rightTypeOisAsPred :: Bool _rightTypeOnmLev :: NmLev _rightTypeOopts :: EHCOpts _rightTypeOpatchEhNmInInstance :: PatchEhNmInInstance _rightTypeOtopInstanceNmL :: ([HsName]) _leftTypeIconNm :: Name _leftTypeIeh :: (EH.TyExpr) _leftTypeIehMbAsPr :: (Maybe EH.PrExpr) _leftTypeIehMbAsPrL :: ([Maybe EH.PrExpr]) _leftTypeIehMbAsTyPr :: (Maybe EH.TyExpr) _leftTypeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _leftTypeIerrSq :: ErrSq _leftTypeIfreeTvarS :: HsNameS _leftTypeIgUniq :: UID _leftTypeIidUseOccGam :: IdUseOccGam _leftTypeImbRefConNm :: (Maybe Name) _leftTypeIopChain :: (OpChain EH.TyExpr) _leftTypeIoperatorName :: MaybeName _leftTypeIpp :: PP_Doc _leftTypeIppWrap :: (PP_Doc -> PP_Doc) _leftTypeItopInstanceNmL :: ([HsName]) _leftTypeItyConIs :: TypeConFixedMeaning _leftTypeIundefOccGam :: IdUseOccGam _rightTypeIconNm :: Name _rightTypeIeh :: (EH.TyExpr) _rightTypeIehMbAsPr :: (Maybe EH.PrExpr) _rightTypeIehMbAsPrL :: ([Maybe EH.PrExpr]) _rightTypeIehMbAsTyPr :: (Maybe EH.TyExpr) _rightTypeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _rightTypeIerrSq :: ErrSq _rightTypeIfreeTvarS :: HsNameS _rightTypeIgUniq :: UID _rightTypeIidUseOccGam :: IdUseOccGam _rightTypeImbRefConNm :: (Maybe Name) _rightTypeIopChain :: (OpChain EH.TyExpr) _rightTypeIoperatorName :: MaybeName _rightTypeIpp :: PP_Doc _rightTypeIppWrap :: (PP_Doc -> PP_Doc) _rightTypeItopInstanceNmL :: ([HsName]) _rightTypeItyConIs :: TypeConFixedMeaning _rightTypeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 66, column 9) _conrefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm constructorOperator_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 73, column 9) _lhsOconrefnames = [_conrefname] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 38, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 180, column 9) _pp = _leftTypeIpp >#< constructorOperator_ >#< _rightTypeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 319, column 9) _lhsOeh = rngLift range_ EH.DataConstr_Constr _conrefname (let fgi = fixityGamLookup _conrefname _lhsIfixityGam in Just (fgiPrio fgi, fgiFixity fgi) ) (map (ehPlainDataField emptyRange) [_leftTypeIeh,_rightTypeIeh]) Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 174, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 227, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 79, column 45) _lhsOconAndFldrefnames = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _leftTypeIerrSq `Seq.union` _rightTypeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _leftTypeIfreeTvarS `Set.union` _rightTypeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 237, column 35) _lhsOhasFlds = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _leftTypeIidUseOccGam `gamAddGam` _rightTypeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftTypeIppWrap . _rightTypeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftTypeIundefOccGam `gamUnion` _rightTypeIundefOccGam -- copy rule (up) _lhsOgUniq = _rightTypeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rightTypeItopInstanceNmL -- copy rule (from local) _leftTypeOdoGenVarWild = _doGenVarWild -- copy rule (down) _leftTypeOfixityGam = _lhsIfixityGam -- copy rule (down) _leftTypeOgUniq = _lhsIgUniq -- copy rule (down) _leftTypeOidGam = _lhsIidGam -- copy rule (from local) _leftTypeOisAsPred = _isAsPred -- copy rule (from local) _leftTypeOnmLev = _nmLev -- copy rule (down) _leftTypeOopts = _lhsIopts -- copy rule (down) _leftTypeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _leftTypeOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _rightTypeOdoGenVarWild = _doGenVarWild -- copy rule (down) _rightTypeOfixityGam = _lhsIfixityGam -- copy rule (chain) _rightTypeOgUniq = _leftTypeIgUniq -- copy rule (down) _rightTypeOidGam = _lhsIidGam -- copy rule (from local) _rightTypeOisAsPred = _isAsPred -- copy rule (from local) _rightTypeOnmLev = _nmLev -- copy rule (down) _rightTypeOopts = _lhsIopts -- copy rule (down) _rightTypeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rightTypeOtopInstanceNmL = _leftTypeItopInstanceNmL ( _leftTypeIconNm,_leftTypeIeh,_leftTypeIehMbAsPr,_leftTypeIehMbAsPrL,_leftTypeIehMbAsTyPr,_leftTypeIehMbAsTyPrL,_leftTypeIerrSq,_leftTypeIfreeTvarS,_leftTypeIgUniq,_leftTypeIidUseOccGam,_leftTypeImbRefConNm,_leftTypeIopChain,_leftTypeIoperatorName,_leftTypeIpp,_leftTypeIppWrap,_leftTypeItopInstanceNmL,_leftTypeItyConIs,_leftTypeIundefOccGam) = leftType_ _leftTypeOdoGenVarWild _leftTypeOfixityGam _leftTypeOgUniq _leftTypeOidGam _leftTypeOisAsPred _leftTypeOnmLev _leftTypeOopts _leftTypeOpatchEhNmInInstance _leftTypeOtopInstanceNmL ( _rightTypeIconNm,_rightTypeIeh,_rightTypeIehMbAsPr,_rightTypeIehMbAsPrL,_rightTypeIehMbAsTyPr,_rightTypeIehMbAsTyPrL,_rightTypeIerrSq,_rightTypeIfreeTvarS,_rightTypeIgUniq,_rightTypeIidUseOccGam,_rightTypeImbRefConNm,_rightTypeIopChain,_rightTypeIoperatorName,_rightTypeIpp,_rightTypeIppWrap,_rightTypeItopInstanceNmL,_rightTypeItyConIs,_rightTypeIundefOccGam) = rightType_ _rightTypeOdoGenVarWild _rightTypeOfixityGam _rightTypeOgUniq _rightTypeOidGam _rightTypeOisAsPred _rightTypeOnmLev _rightTypeOopts _rightTypeOpatchEhNmInInstance _rightTypeOtopInstanceNmL in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Constructor_Record :: Range -> Name -> T_FieldDeclarations -> T_Constructor sem_Constructor_Record range_ constructor_ fieldDeclarations_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconrefnames :: Names _lhsOeh :: (EH.DataConstr) _lhsOhasFlds :: Bool _lhsOconAndFldrefnames :: (AssocL Name Names) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _fieldDeclarationsOfixityGam :: FixityGam _fieldDeclarationsOgUniq :: UID _fieldDeclarationsOidGam :: IdDefOccGam _fieldDeclarationsOmoduleNm :: HsName _fieldDeclarationsOnmLev :: NmLev _fieldDeclarationsOopts :: EHCOpts _fieldDeclarationsOpatchEhNmInInstance :: PatchEhNmInInstance _fieldDeclarationsOtopInstanceNmL :: ([HsName]) _fieldDeclarationsIeh :: ([EH.DataField]) _fieldDeclarationsIerrSq :: ErrSq _fieldDeclarationsIfldrefnames :: Names _fieldDeclarationsIfreeTvarS :: HsNameS _fieldDeclarationsIgUniq :: UID _fieldDeclarationsIidUseOccGam :: IdUseOccGam _fieldDeclarationsIpp :: PP_Doc _fieldDeclarationsIppL :: ([PP_Doc]) _fieldDeclarationsIppWrap :: (PP_Doc -> PP_Doc) _fieldDeclarationsItopInstanceNmL :: ([HsName]) _fieldDeclarationsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 64, column 9) _conrefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm constructor_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 76, column 9) _lhsOconrefnames = [_conrefname] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 87, column 9) _conAndFldrefnames = [(_conrefname,_fieldDeclarationsIfldrefnames)] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 182, column 9) _pp = constructor_ >#< ppCurlysCommas' _fieldDeclarationsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 327, column 9) _lhsOeh = rngLift range_ EH.DataConstr_Constr _conrefname Nothing _fieldDeclarationsIeh Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 241, column 9) _lhsOhasFlds = True -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 79, column 45) _lhsOconAndFldrefnames = _conAndFldrefnames -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _fieldDeclarationsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _fieldDeclarationsIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _fieldDeclarationsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _fieldDeclarationsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _fieldDeclarationsIundefOccGam -- copy rule (up) _lhsOgUniq = _fieldDeclarationsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _fieldDeclarationsItopInstanceNmL -- copy rule (down) _fieldDeclarationsOfixityGam = _lhsIfixityGam -- copy rule (down) _fieldDeclarationsOgUniq = _lhsIgUniq -- copy rule (down) _fieldDeclarationsOidGam = _lhsIidGam -- copy rule (down) _fieldDeclarationsOmoduleNm = _lhsImoduleNm -- copy rule (down) _fieldDeclarationsOnmLev = _lhsInmLev -- copy rule (down) _fieldDeclarationsOopts = _lhsIopts -- copy rule (down) _fieldDeclarationsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _fieldDeclarationsOtopInstanceNmL = _lhsItopInstanceNmL ( _fieldDeclarationsIeh,_fieldDeclarationsIerrSq,_fieldDeclarationsIfldrefnames,_fieldDeclarationsIfreeTvarS,_fieldDeclarationsIgUniq,_fieldDeclarationsIidUseOccGam,_fieldDeclarationsIpp,_fieldDeclarationsIppL,_fieldDeclarationsIppWrap,_fieldDeclarationsItopInstanceNmL,_fieldDeclarationsIundefOccGam) = fieldDeclarations_ _fieldDeclarationsOfixityGam _fieldDeclarationsOgUniq _fieldDeclarationsOidGam _fieldDeclarationsOmoduleNm _fieldDeclarationsOnmLev _fieldDeclarationsOopts _fieldDeclarationsOpatchEhNmInInstance _fieldDeclarationsOtopInstanceNmL in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Constructor_Contexted :: Range -> T_ContextItems -> T_Constructor -> T_Constructor sem_Constructor_Contexted range_ context_ constructor_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.DataConstr) _lhsOconAndFldrefnames :: (AssocL Name Names) _lhsOconrefnames :: Names _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOhasFlds :: Bool _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _constructorOfixityGam :: FixityGam _constructorOgUniq :: UID _constructorOidGam :: IdDefOccGam _constructorOmoduleNm :: HsName _constructorOnmLev :: NmLev _constructorOopts :: EHCOpts _constructorOpatchEhNmInInstance :: PatchEhNmInInstance _constructorOtopInstanceNmL :: ([HsName]) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam _constructorIconAndFldrefnames :: (AssocL Name Names) _constructorIconrefnames :: Names _constructorIeh :: (EH.DataConstr) _constructorIerrSq :: ErrSq _constructorIfreeTvarS :: HsNameS _constructorIgUniq :: UID _constructorIhasFlds :: Bool _constructorIidUseOccGam :: IdUseOccGam _constructorIpp :: PP_Doc _constructorIppWrap :: (PP_Doc -> PP_Doc) _constructorItopInstanceNmL :: ([HsName]) _constructorIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 184, column 17) _pp = _contextIpp >#< "=>" >#< _constructorIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 332, column 17) _lhsOeh = _constructorIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 79, column 45) _lhsOconAndFldrefnames = _constructorIconAndFldrefnames -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 60, column 39) _lhsOconrefnames = _constructorIconrefnames -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _contextIerrSq `Seq.union` _constructorIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _contextIfreeTvarS `Set.union` _constructorIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 237, column 35) _lhsOhasFlds = _constructorIhasFlds -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _contextIidUseOccGam `gamAddGam` _constructorIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _contextIppWrap . _constructorIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _contextIundefOccGam `gamUnion` _constructorIundefOccGam -- copy rule (up) _lhsOgUniq = _constructorIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _constructorItopInstanceNmL -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (down) _contextOgUniq = _lhsIgUniq -- copy rule (down) _contextOidGam = _lhsIidGam -- copy rule (down) _contextOnmLev = _lhsInmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (down) _contextOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _contextOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _constructorOfixityGam = _lhsIfixityGam -- copy rule (chain) _constructorOgUniq = _contextIgUniq -- copy rule (down) _constructorOidGam = _lhsIidGam -- copy rule (down) _constructorOmoduleNm = _lhsImoduleNm -- copy rule (down) _constructorOnmLev = _lhsInmLev -- copy rule (down) _constructorOopts = _lhsIopts -- copy rule (down) _constructorOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _constructorOtopInstanceNmL = _contextItopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL ( _constructorIconAndFldrefnames,_constructorIconrefnames,_constructorIeh,_constructorIerrSq,_constructorIfreeTvarS,_constructorIgUniq,_constructorIhasFlds,_constructorIidUseOccGam,_constructorIpp,_constructorIppWrap,_constructorItopInstanceNmL,_constructorIundefOccGam) = constructor_ _constructorOfixityGam _constructorOgUniq _constructorOidGam _constructorOmoduleNm _constructorOnmLev _constructorOopts _constructorOpatchEhNmInInstance _constructorOtopInstanceNmL in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Constructor_GADTFunction :: Range -> Name -> T_Type -> T_Constructor sem_Constructor_GADTFunction range_ constructor_ type_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconrefnames :: Names _lhsOeh :: (EH.DataConstr) _lhsOconAndFldrefnames :: (AssocL Name Names) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOhasFlds :: Bool _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 64, column 9) _conrefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm constructor_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 71, column 9) _lhsOconrefnames = [_conrefname] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 38, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 186, column 17) _pp = constructor_ >#< "::" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 312, column 41) (_ehArgs,_ehRes) = appUnArr _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 314, column 9) _lhsOeh = rngLift range_ EH.DataConstr_Constr _conrefname Nothing (map (ehPlainDataField emptyRange) _ehArgs) (Just _ehRes) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 174, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 227, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 79, column 45) _lhsOconAndFldrefnames = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 237, column 35) _lhsOhasFlds = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (from local) _typeOnmLev = _nmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Constructors ------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: conAndFldrefnames : AssocL Name Names conrefnames : Names eh : [EH.DataConstr] errSq : ErrSq freeTvarS : HsNameS hasFlds : Bool idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Constructor child tl : Constructors alternative Nil: -} -- cata sem_Constructors :: Constructors -> T_Constructors sem_Constructors list = (Prelude.foldr sem_Constructors_Cons sem_Constructors_Nil (Prelude.map sem_Constructor list)) -- semantic domain type T_Constructors = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (AssocL Name Names),Names,([EH.DataConstr]),ErrSq,HsNameS,UID,Bool,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Constructors_Cons :: T_Constructor -> T_Constructors -> T_Constructors sem_Constructors_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconAndFldrefnames :: (AssocL Name Names) _lhsOconrefnames :: Names _lhsOeh :: ([EH.DataConstr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOhasFlds :: Bool _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIconAndFldrefnames :: (AssocL Name Names) _hdIconrefnames :: Names _hdIeh :: (EH.DataConstr) _hdIerrSq :: ErrSq _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIhasFlds :: Bool _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIconAndFldrefnames :: (AssocL Name Names) _tlIconrefnames :: Names _tlIeh :: ([EH.DataConstr]) _tlIerrSq :: ErrSq _tlIfreeTvarS :: HsNameS _tlIgUniq :: UID _tlIhasFlds :: Bool _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 79, column 45) _lhsOconAndFldrefnames = _hdIconAndFldrefnames ++ _tlIconAndFldrefnames -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 60, column 39) _lhsOconrefnames = _hdIconrefnames ++ _tlIconrefnames -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 295, column 28) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 237, column 35) _lhsOhasFlds = _hdIhasFlds || _tlIhasFlds -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIconAndFldrefnames,_hdIconrefnames,_hdIeh,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIhasFlds,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIconAndFldrefnames,_tlIconrefnames,_tlIeh,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIhasFlds,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Constructors_Nil :: T_Constructors sem_Constructors_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconAndFldrefnames :: (AssocL Name Names) _lhsOconrefnames :: Names _lhsOeh :: ([EH.DataConstr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOhasFlds :: Bool _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 79, column 45) _lhsOconAndFldrefnames = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 60, column 39) _lhsOconrefnames = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 295, column 28) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 237, column 35) _lhsOhasFlds = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ContextItem ------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.PrExpr ehTy : EH.TyExpr errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Class: child range : {Range} child name : {Name} child types : Types visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local eh : _ local ehTy : _ local isAsPred : _ alternative Forall: child range : {Range} child typevariables : {Names} child context : ContextItem visit 0: local idDefOccGamInside : _ local idGam : _ local nmLev : _ local pp : _ local eh : _ local ehTy : _ alternative Arrow: child range : {Range} child argument : ContextItem child result : ContextItem visit 0: local pp : _ local eh : _ local ehTy : _ alternative Implicits: child range : {Range} visit 0: local pp : _ local eh : _ local ehTy : _ alternative NoImplicits: child range : {Range} visit 0: local pp : _ local eh : _ local ehTy : _ alternative RowLacksLabel: child range : {Range} child rowvariable : {Name} child name : {Name} visit 0: local pp : _ local eh : _ local ehTy : _ alternative Equal: child range : {Range} child type1 : Type child type2 : Type visit 0: local pp : _ local eh : _ local ehTy : _ local isAsPred : _ local doGenVarWild : _ -} -- cata sem_ContextItem :: ContextItem -> T_ContextItem sem_ContextItem (ContextItem_Class _range _name _types) = (sem_ContextItem_Class _range _name (sem_Types _types)) sem_ContextItem (ContextItem_Forall _range _typevariables _context) = (sem_ContextItem_Forall _range _typevariables (sem_ContextItem _context)) sem_ContextItem (ContextItem_Arrow _range _argument _result) = (sem_ContextItem_Arrow _range (sem_ContextItem _argument) (sem_ContextItem _result)) sem_ContextItem (ContextItem_Implicits _range) = (sem_ContextItem_Implicits _range) sem_ContextItem (ContextItem_NoImplicits _range) = (sem_ContextItem_NoImplicits _range) sem_ContextItem (ContextItem_RowLacksLabel _range _rowvariable _name) = (sem_ContextItem_RowLacksLabel _range _rowvariable _name) sem_ContextItem (ContextItem_Equal _range _type1 _type2) = (sem_ContextItem_Equal _range (sem_Type _type1) (sem_Type _type2)) -- semantic domain type T_ContextItem = FixityGam -> UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.PrExpr),(EH.TyExpr),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ContextItem_Class :: Range -> Name -> T_Types -> T_ContextItem sem_ContextItem_Class range_ name_ types_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PrExpr) _lhsOehTy :: (EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typesOfixityGam :: FixityGam _typesOgUniq :: UID _typesOidGam :: IdDefOccGam _typesOisAsPred :: Bool _typesOnmLev :: NmLev _typesOopts :: EHCOpts _typesOpatchEhNmInInstance :: PatchEhNmInInstance _typesOtopInstanceNmL :: ([HsName]) _typesIeh :: ([EH.TyExpr]) _typesIerrSq :: ErrSq _typesIfreeTvarS :: HsNameS _typesIgUniq :: UID _typesIidUseOccGam :: IdUseOccGam _typesIpp :: PP_Doc _typesIppL :: ([PP_Doc]) _typesIppWrap :: (PP_Doc -> PP_Doc) _typesItopInstanceNmL :: ([HsName]) _typesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 617, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 619, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_typesIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 125, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _typesIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 162, column 9) _pp = name_ >#< ppSpaces _typesIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 275, column 9) _eh = rngLift range_ EH.PrExpr_Class _refname _typesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 289, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 193, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typesIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typesIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehTy = _ehTy -- copy rule (up) _lhsOgUniq = _typesIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typesItopInstanceNmL -- copy rule (down) _typesOfixityGam = _lhsIfixityGam -- copy rule (down) _typesOgUniq = _lhsIgUniq -- copy rule (down) _typesOidGam = _lhsIidGam -- copy rule (from local) _typesOisAsPred = _isAsPred -- copy rule (down) _typesOnmLev = _lhsInmLev -- copy rule (down) _typesOopts = _lhsIopts -- copy rule (down) _typesOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typesOtopInstanceNmL = _lhsItopInstanceNmL ( _typesIeh,_typesIerrSq,_typesIfreeTvarS,_typesIgUniq,_typesIidUseOccGam,_typesIpp,_typesIppL,_typesIppWrap,_typesItopInstanceNmL,_typesIundefOccGam) = types_ _typesOfixityGam _typesOgUniq _typesOidGam _typesOisAsPred _typesOnmLev _typesOopts _typesOpatchEhNmInInstance _typesOtopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextItem_Forall :: Range -> Names -> T_ContextItem -> T_ContextItem sem_ContextItem_Forall range_ typevariables_ context_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOfreeTvarS :: HsNameS _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PrExpr) _lhsOehTy :: (EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextIeh :: (EH.PrExpr) _contextIehTy :: (EH.TyExpr) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 259, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _lhsInmLev range_ typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 416, column 9) _idGam = gamUnion _idDefOccGamInside _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 46, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 172, column 9) _pp = "forall" >#< ppSpaces typevariables_ >#< "." >#< _contextIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 283, column 9) _eh = foldr (rngLift range_ EH.PrExpr_Forall) _contextIeh typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 289, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 128, column 9) _lhsOfreeTvarS = _contextIfreeTvarS `Set.difference` Set.fromList typevariables_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _contextIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _contextIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _contextIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _contextIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehTy = _ehTy -- copy rule (up) _lhsOgUniq = _contextIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _contextItopInstanceNmL -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (down) _contextOgUniq = _lhsIgUniq -- copy rule (from local) _contextOidGam = _idGam -- copy rule (from local) _contextOnmLev = _nmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (down) _contextOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _contextOtopInstanceNmL = _lhsItopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextItem_Arrow :: Range -> T_ContextItem -> T_ContextItem -> T_ContextItem sem_ContextItem_Arrow range_ argument_ result_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PrExpr) _lhsOehTy :: (EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _argumentOfixityGam :: FixityGam _argumentOgUniq :: UID _argumentOidGam :: IdDefOccGam _argumentOnmLev :: NmLev _argumentOopts :: EHCOpts _argumentOpatchEhNmInInstance :: PatchEhNmInInstance _argumentOtopInstanceNmL :: ([HsName]) _resultOfixityGam :: FixityGam _resultOgUniq :: UID _resultOidGam :: IdDefOccGam _resultOnmLev :: NmLev _resultOopts :: EHCOpts _resultOpatchEhNmInInstance :: PatchEhNmInInstance _resultOtopInstanceNmL :: ([HsName]) _argumentIeh :: (EH.PrExpr) _argumentIehTy :: (EH.TyExpr) _argumentIerrSq :: ErrSq _argumentIfreeTvarS :: HsNameS _argumentIgUniq :: UID _argumentIidUseOccGam :: IdUseOccGam _argumentIpp :: PP_Doc _argumentIppWrap :: (PP_Doc -> PP_Doc) _argumentItopInstanceNmL :: ([HsName]) _argumentIundefOccGam :: IdUseOccGam _resultIeh :: (EH.PrExpr) _resultIehTy :: (EH.TyExpr) _resultIerrSq :: ErrSq _resultIfreeTvarS :: HsNameS _resultIgUniq :: UID _resultIidUseOccGam :: IdUseOccGam _resultIpp :: PP_Doc _resultIppWrap :: (PP_Doc -> PP_Doc) _resultItopInstanceNmL :: ([HsName]) _resultIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 170, column 9) _pp = _argumentIpp >#< "->" >#< _resultIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 281, column 9) _eh = rngLift range_ EH.PrExpr_Arrow _argumentIeh _resultIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 289, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _argumentIerrSq `Seq.union` _resultIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _argumentIfreeTvarS `Set.union` _resultIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _argumentIidUseOccGam `gamAddGam` _resultIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _argumentIppWrap . _resultIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _argumentIundefOccGam `gamUnion` _resultIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehTy = _ehTy -- copy rule (up) _lhsOgUniq = _resultIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _resultItopInstanceNmL -- copy rule (down) _argumentOfixityGam = _lhsIfixityGam -- copy rule (down) _argumentOgUniq = _lhsIgUniq -- copy rule (down) _argumentOidGam = _lhsIidGam -- copy rule (down) _argumentOnmLev = _lhsInmLev -- copy rule (down) _argumentOopts = _lhsIopts -- copy rule (down) _argumentOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _argumentOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _resultOfixityGam = _lhsIfixityGam -- copy rule (chain) _resultOgUniq = _argumentIgUniq -- copy rule (down) _resultOidGam = _lhsIidGam -- copy rule (down) _resultOnmLev = _lhsInmLev -- copy rule (down) _resultOopts = _lhsIopts -- copy rule (down) _resultOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _resultOtopInstanceNmL = _argumentItopInstanceNmL ( _argumentIeh,_argumentIehTy,_argumentIerrSq,_argumentIfreeTvarS,_argumentIgUniq,_argumentIidUseOccGam,_argumentIpp,_argumentIppWrap,_argumentItopInstanceNmL,_argumentIundefOccGam) = argument_ _argumentOfixityGam _argumentOgUniq _argumentOidGam _argumentOnmLev _argumentOopts _argumentOpatchEhNmInInstance _argumentOtopInstanceNmL ( _resultIeh,_resultIehTy,_resultIerrSq,_resultIfreeTvarS,_resultIgUniq,_resultIidUseOccGam,_resultIpp,_resultIppWrap,_resultItopInstanceNmL,_resultIundefOccGam) = result_ _resultOfixityGam _resultOgUniq _resultOidGam _resultOnmLev _resultOopts _resultOpatchEhNmInInstance _resultOtopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextItem_Implicits :: Range -> T_ContextItem sem_ContextItem_Implicits range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PrExpr) _lhsOehTy :: (EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 164, column 9) _pp = pp "..." -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 277, column 9) _eh = undefined -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 291, column 9) _ehTy = rngLift range_ EH.TyExpr_Impls -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehTy = _ehTy -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextItem_NoImplicits :: Range -> T_ContextItem sem_ContextItem_NoImplicits range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PrExpr) _lhsOehTy :: (EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 166, column 9) _pp = empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 277, column 9) _eh = undefined -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 293, column 9) _ehTy = rngLift range_ EH.TyExpr_NoImpls -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehTy = _ehTy -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextItem_RowLacksLabel :: Range -> Name -> Name -> T_ContextItem sem_ContextItem_RowLacksLabel range_ rowvariable_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOfreeTvarS :: HsNameS _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PrExpr) _lhsOehTy :: (EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 168, column 9) _pp = name_ >|< "\\" >|< rowvariable_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 279, column 9) _eh = rngLift range_ EH.PrExpr_Lacks (rngLift range_ EH.RowTyExpr_Var rowvariable_) name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 289, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 130, column 9) _lhsOfreeTvarS = Set.singleton rowvariable_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehTy = _ehTy -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextItem_Equal :: Range -> T_Type -> T_Type -> T_ContextItem sem_ContextItem_Equal range_ type1_ type2_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PrExpr) _lhsOehTy :: (EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _type1OdoGenVarWild :: Bool _type1OfixityGam :: FixityGam _type1OgUniq :: UID _type1OidGam :: IdDefOccGam _type1OisAsPred :: Bool _type1OnmLev :: NmLev _type1Oopts :: EHCOpts _type1OpatchEhNmInInstance :: PatchEhNmInInstance _type1OtopInstanceNmL :: ([HsName]) _type2OdoGenVarWild :: Bool _type2OfixityGam :: FixityGam _type2OgUniq :: UID _type2OidGam :: IdDefOccGam _type2OisAsPred :: Bool _type2OnmLev :: NmLev _type2Oopts :: EHCOpts _type2OpatchEhNmInInstance :: PatchEhNmInInstance _type2OtopInstanceNmL :: ([HsName]) _type1IconNm :: Name _type1Ieh :: (EH.TyExpr) _type1IehMbAsPr :: (Maybe EH.PrExpr) _type1IehMbAsPrL :: ([Maybe EH.PrExpr]) _type1IehMbAsTyPr :: (Maybe EH.TyExpr) _type1IehMbAsTyPrL :: ([Maybe EH.TyExpr]) _type1IerrSq :: ErrSq _type1IfreeTvarS :: HsNameS _type1IgUniq :: UID _type1IidUseOccGam :: IdUseOccGam _type1ImbRefConNm :: (Maybe Name) _type1IopChain :: (OpChain EH.TyExpr) _type1IoperatorName :: MaybeName _type1Ipp :: PP_Doc _type1IppWrap :: (PP_Doc -> PP_Doc) _type1ItopInstanceNmL :: ([HsName]) _type1ItyConIs :: TypeConFixedMeaning _type1IundefOccGam :: IdUseOccGam _type2IconNm :: Name _type2Ieh :: (EH.TyExpr) _type2IehMbAsPr :: (Maybe EH.PrExpr) _type2IehMbAsPrL :: ([Maybe EH.PrExpr]) _type2IehMbAsTyPr :: (Maybe EH.TyExpr) _type2IehMbAsTyPrL :: ([Maybe EH.TyExpr]) _type2IerrSq :: ErrSq _type2IfreeTvarS :: HsNameS _type2IgUniq :: UID _type2IidUseOccGam :: IdUseOccGam _type2ImbRefConNm :: (Maybe Name) _type2IopChain :: (OpChain EH.TyExpr) _type2IoperatorName :: MaybeName _type2Ipp :: PP_Doc _type2IppWrap :: (PP_Doc -> PP_Doc) _type2ItopInstanceNmL :: ([HsName]) _type2ItyConIs :: TypeConFixedMeaning _type2IundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 174, column 9) _pp = _type1Ipp >#< hsnEqTilde >#< _type2Ipp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 285, column 9) _eh = rngLift range_ EH.PrExpr_Eq _type1Ieh _type2Ieh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 289, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 193, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 235, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _type1IerrSq `Seq.union` _type2IerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _type1IfreeTvarS `Set.union` _type2IfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _type1IidUseOccGam `gamAddGam` _type2IidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _type1IppWrap . _type2IppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _type1IundefOccGam `gamUnion` _type2IundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehTy = _ehTy -- copy rule (up) _lhsOgUniq = _type2IgUniq -- copy rule (up) _lhsOtopInstanceNmL = _type2ItopInstanceNmL -- copy rule (from local) _type1OdoGenVarWild = _doGenVarWild -- copy rule (down) _type1OfixityGam = _lhsIfixityGam -- copy rule (down) _type1OgUniq = _lhsIgUniq -- copy rule (down) _type1OidGam = _lhsIidGam -- copy rule (from local) _type1OisAsPred = _isAsPred -- copy rule (down) _type1OnmLev = _lhsInmLev -- copy rule (down) _type1Oopts = _lhsIopts -- copy rule (down) _type1OpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _type1OtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _type2OdoGenVarWild = _doGenVarWild -- copy rule (down) _type2OfixityGam = _lhsIfixityGam -- copy rule (chain) _type2OgUniq = _type1IgUniq -- copy rule (down) _type2OidGam = _lhsIidGam -- copy rule (from local) _type2OisAsPred = _isAsPred -- copy rule (down) _type2OnmLev = _lhsInmLev -- copy rule (down) _type2Oopts = _lhsIopts -- copy rule (down) _type2OpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _type2OtopInstanceNmL = _type1ItopInstanceNmL ( _type1IconNm,_type1Ieh,_type1IehMbAsPr,_type1IehMbAsPrL,_type1IehMbAsTyPr,_type1IehMbAsTyPrL,_type1IerrSq,_type1IfreeTvarS,_type1IgUniq,_type1IidUseOccGam,_type1ImbRefConNm,_type1IopChain,_type1IoperatorName,_type1Ipp,_type1IppWrap,_type1ItopInstanceNmL,_type1ItyConIs,_type1IundefOccGam) = type1_ _type1OdoGenVarWild _type1OfixityGam _type1OgUniq _type1OidGam _type1OisAsPred _type1OnmLev _type1Oopts _type1OpatchEhNmInInstance _type1OtopInstanceNmL ( _type2IconNm,_type2Ieh,_type2IehMbAsPr,_type2IehMbAsPrL,_type2IehMbAsTyPr,_type2IehMbAsTyPrL,_type2IerrSq,_type2IfreeTvarS,_type2IgUniq,_type2IidUseOccGam,_type2ImbRefConNm,_type2IopChain,_type2IoperatorName,_type2Ipp,_type2IppWrap,_type2ItopInstanceNmL,_type2ItyConIs,_type2IundefOccGam) = type2_ _type2OdoGenVarWild _type2OfixityGam _type2OgUniq _type2OidGam _type2OisAsPred _type2OnmLev _type2Oopts _type2OpatchEhNmInInstance _type2OtopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ContextItems ------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.PrExpr] ehTy : [EH.TyExpr] errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : ContextItem child tl : ContextItems alternative Nil: -} -- cata sem_ContextItems :: ContextItems -> T_ContextItems sem_ContextItems list = (Prelude.foldr sem_ContextItems_Cons sem_ContextItems_Nil (Prelude.map sem_ContextItem list)) -- semantic domain type T_ContextItems = FixityGam -> UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.PrExpr]),([EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ContextItems_Cons :: T_ContextItem -> T_ContextItems -> T_ContextItems sem_ContextItems_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.PrExpr]) _lhsOehTy :: ([EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.PrExpr) _hdIehTy :: (EH.TyExpr) _hdIerrSq :: ErrSq _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.PrExpr]) _tlIehTy :: ([EH.TyExpr]) _tlIerrSq :: ErrSq _tlIfreeTvarS :: HsNameS _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 269, column 28) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 269, column 62) _lhsOehTy = _hdIehTy : _tlIehTy -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIehTy,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIehTy,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextItems_Nil :: T_ContextItems sem_ContextItems_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.PrExpr]) _lhsOehTy :: ([EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 269, column 28) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 269, column 62) _lhsOehTy = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ContextedExpression ----------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : (EH.Expr,EH.PrExpr) errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Contexted: child range : {Range} child expression : Expression child context : ContextItem visit 0: local pp : _ -} -- cata sem_ContextedExpression :: ContextedExpression -> T_ContextedExpression sem_ContextedExpression (ContextedExpression_Contexted _range _expression _context) = (sem_ContextedExpression_Contexted _range (sem_Expression _expression) (sem_ContextItem _context)) -- semantic domain type T_ContextedExpression = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ((EH.Expr,EH.PrExpr)),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ContextedExpression_Contexted :: Range -> T_Expression -> T_ContextItem -> T_ContextedExpression sem_ContextedExpression_Contexted range_ expression_ context_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ((EH.Expr,EH.PrExpr)) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam _contextIeh :: (EH.PrExpr) _contextIehTy :: (EH.TyExpr) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 259, column 9) _pp = _expressionIpp >#< "<:" >#< _contextIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 550, column 9) _lhsOeh = (_expressionIeh,_contextIeh) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq `Seq.union` _contextIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam `gamAddGam` _contextIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap . _contextIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam `gamUnion` _contextIundefOccGam -- copy rule (up) _lhsOgUniq = _contextIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _contextItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (chain) _contextOgUniq = _expressionIgUniq -- copy rule (down) _contextOidGam = _lhsIidGam -- copy rule (down) _contextOnmLev = _lhsInmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (down) _contextOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _contextOtopInstanceNmL = _expressionItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ContextedExpressions ---------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [(EH.Expr,EH.PrExpr)] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : ContextedExpression child tl : ContextedExpressions alternative Nil: -} -- cata sem_ContextedExpressions :: ContextedExpressions -> T_ContextedExpressions sem_ContextedExpressions list = (Prelude.foldr sem_ContextedExpressions_Cons sem_ContextedExpressions_Nil (Prelude.map sem_ContextedExpression list)) -- semantic domain type T_ContextedExpressions = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([(EH.Expr,EH.PrExpr)]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ContextedExpressions_Cons :: T_ContextedExpression -> T_ContextedExpressions -> T_ContextedExpressions sem_ContextedExpressions_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.Expr,EH.PrExpr)]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: ((EH.Expr,EH.PrExpr)) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([(EH.Expr,EH.PrExpr)]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 511, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 544, column 36) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextedExpressions_Nil :: T_ContextedExpressions sem_ContextedExpressions_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.Expr,EH.PrExpr)]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 513, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 544, column 36) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ContextedPattern -------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : (EH.PatExpr,EH.PrExpr) errSq : ErrSq freeTvarS : HsNameS idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Contexted: child range : {Range} child pattern : Pattern child context : ContextItem visit 0: local pp : _ -} -- cata sem_ContextedPattern :: ContextedPattern -> T_ContextedPattern sem_ContextedPattern (ContextedPattern_Contexted _range _pattern _context) = (sem_ContextedPattern_Contexted _range (sem_Pattern _pattern) (sem_ContextItem _context)) -- semantic domain type T_ContextedPattern = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ((EH.PatExpr,EH.PrExpr)),ErrSq,HsNameS,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ContextedPattern_Contexted :: Range -> T_Pattern -> T_ContextItem -> T_ContextedPattern sem_ContextedPattern_Contexted range_ pattern_ context_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: ((EH.PatExpr,EH.PrExpr)) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam _contextIeh :: (EH.PrExpr) _contextIehTy :: (EH.TyExpr) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 372, column 9) _pp = _patternIpp >#< "<:" >#< _contextIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 852, column 9) _lhsOeh = (_patternIeh,_contextIeh) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq `Seq.union` _contextIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _contextIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam `gamAddGam` _contextIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap . _contextIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam `gamUnion` _contextIundefOccGam -- copy rule (up) _lhsOgUniq = _contextIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _contextItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (chain) _contextOgUniq = _patternIgUniq -- copy rule (down) _contextOidGam = _lhsIidGam -- copy rule (down) _contextOnmLev = _lhsInmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (down) _contextOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _contextOtopInstanceNmL = _patternItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ContextedPatterns ------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [(EH.PatExpr,EH.PrExpr)] errSq : ErrSq freeTvarS : HsNameS idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : ContextedPattern child tl : ContextedPatterns alternative Nil: -} -- cata sem_ContextedPatterns :: ContextedPatterns -> T_ContextedPatterns sem_ContextedPatterns list = (Prelude.foldr sem_ContextedPatterns_Cons sem_ContextedPatterns_Nil (Prelude.map sem_ContextedPattern list)) -- semantic domain type T_ContextedPatterns = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([(EH.PatExpr,EH.PrExpr)]),ErrSq,HsNameS,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ContextedPatterns_Cons :: T_ContextedPattern -> T_ContextedPatterns -> T_ContextedPatterns sem_ContextedPatterns_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.PatExpr,EH.PrExpr)]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: ((EH.PatExpr,EH.PrExpr)) _hdIerrSq :: ErrSq _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidDefOccGam :: IdDefOccGam _hdIidOccDefs :: ([IdOcc]) _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([(EH.PatExpr,EH.PrExpr)]) _tlIerrSq :: ErrSq _tlIfreeTvarS :: HsNameS _tlIgUniq :: UID _tlIidDefOccGam :: IdDefOccGam _tlIidOccDefs :: ([IdOcc]) _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 517, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 846, column 33) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ContextedPatterns_Nil :: T_ContextedPatterns sem_ContextedPatterns_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.PatExpr,EH.PrExpr)]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 519, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 846, column 33) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Declaration ------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.Decl] errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idTySigDefOccGam : IdDefOccGam idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative FunctionBindings: child range : {Range} child bindings : FunctionBindings visit 0: local idOccDefs : _ local isAsPred : _ local doGenVarWild : _ alternative PatternBinding: child range : {Range} child pattern : Pattern child righthandside : RightHandSide visit 0: local idDefOccGamPat : _ local idDefOccGam : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local idOccDef : _ local idOccDefsPat : _ local idOccDefs : _ local pp : _ local eh : _ local caseId : _ local isAsPred : _ local doGenVarWild : _ local lUniq : {UID} alternative TypeSignature: child range : {Range} child names : {Names} child type : Type visit 0: local idDefOccGam : _ local idDefOccGamType : _ local idTySigDefOccGam : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local refnames : _ local idOccDefs : _ local nmLev : _ local pp : _ local mkEHSig : _ local isAsPred : _ local doGenVarWild : _ alternative Fixity: child range : {Range} child fixity : {Fixity} child priority : {Maybe Int} child operators : {Names} visit 0: local idDefOccGam : _ local patchEhNmInInstance : _ local oprefnames : _ local pp : _ local isAsPred : _ local doGenVarWild : _ alternative FusionDeclaration: child range : {Range} child fusename : {Name} visit 0: local idDefOccGam : _ local reffusename : _ local idUseOccGamFusion : _ local errIdUse : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local idOccDef : _ local idOccDefs : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ local doGenVarWild : _ local lUniq : {UID} alternative FusionConversion: child range : {Range} child absname : {Name} child conname : {Name} visit 0: local idDefOccGam : _ local refnames : _ local idUseOccGamFusion : _ local errIdUse : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local idOccDef : _ local idOccDefs : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ local doGenVarWild : _ local lUniq : {UID} alternative Empty: child range : {Range} visit 0: local patchEhNmInInstance : _ local pp : _ local isAsPred : _ local doGenVarWild : _ alternative Data: child range : {Range} child context : ContextItems child typelefthandside : TypeLeftHandSide child constructors : Constructors child derivings : Derivings visit 0: local idDefOccGamType : _ local idDefOccGamType2 : _ local idDefOccGamConstrs : _ local idDefOccGamGener : _ local idDefOccGam : _ local idDefOccGamInside : _ local idGam : _ local idUseOccGamVal : _ local errIdUseVal : _ local idUseOccGamClass : _ local errIdUseClass : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local typerefname : _ local idOccDef : _ local idOccDefsCon : _ local idOccDefsFld : _ local generMaxRemArity : _ local idOccDefsGener : _ local idOccDefs : _ local nmLev : _ local errDupIntro : _ local locErrs : _ local errSq : _ local pp : _ local eh : _ local ehGener : _ local isAsPred : _ local doGenVarWild : _ alternative Newtype: child range : {Range} child context : ContextItems child typelefthandside : TypeLeftHandSide child constructors : Constructor child derivings : Derivings visit 0: local idDefOccGamType : _ local idDefOccGamType2 : _ local idDefOccGamConstrs : _ local idDefOccGamGener : _ local idDefOccGam : _ local idDefOccGamInside : _ local idGam : _ local idUseOccGamVal : _ local errIdUseVal : _ local idUseOccGamClass : _ local errIdUseClass : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local typerefname : _ local idOccDef : _ local idOccDefsCon : _ local idOccDefsFld : _ local generMaxRemArity : _ local idOccDefsGener : _ local idOccDefs : _ local nmLev : _ local errNewtype : _ local errDupIntro : _ local locErrs : _ local errSq : _ local pp : _ local eh : _ local ehGener : _ local isAsPred : _ local doGenVarWild : _ alternative GADT: child range : {Range} child context : ContextItems child typelefthandside : TypeLeftHandSide child constructors : Constructors child derivings : Derivings visit 0: local idDefOccGamType : _ local idDefOccGamType2 : _ local idDefOccGamConstrs : _ local idDefOccGamGener : _ local idDefOccGam : _ local idDefOccGamInside : _ local idGam : _ local idUseOccGamVal : _ local errIdUseVal : _ local idUseOccGamClass : _ local errIdUseClass : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local typerefname : _ local idOccDef : _ local idOccDefsCon : _ local idOccDefsFld : _ local generMaxRemArity : _ local idOccDefsGener : _ local idOccDefs : _ local nmLev : _ local errDupIntro : _ local locErrs : _ local errSq : _ local pp : _ local eh : _ local ehGener : _ local isAsPred : _ local doGenVarWild : _ alternative KindSignature: child range : {Range} child names : {Names} child kind : Kind visit 0: local idDefOccGam : _ local idDefOccGamKind : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local refnames : _ local idOccDefs : _ local nmLev : _ local pp : _ local mkEHSig : _ local isAsPred : _ local doGenVarWild : _ alternative ForeignImport: child range : {Range} child callconvention : {FFIWay} child safety : {Maybe String} child importname : {Maybe String} child name : {Name} child type : Type visit 0: local idDefOccGamType : _ local idDefOccGam : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local refname : _ local idOccDef : _ local idOccDefs : _ local errFFIWay : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ local doGenVarWild : _ local nmForParse : _ local ent : _ local entErrs : _ alternative ForeignExport: child range : {Range} child callconvention : {FFIWay} child exportname : {Maybe String} child name : {Name} child type : Type visit 0: local idDefOccGamType : _ local idDefOccGam : _ local refname : _ local idUseOccGamExport : _ local errIdUse : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local exportrefname : _ local idOccDef : _ local idOccDefs : _ local errFFIWay : _ local errSq : _ local pp : _ local nmForParse : _ local ent : _ local entErrs : _ local eh : _ local isAsPred : _ local doGenVarWild : _ alternative Class: child range : {Range} child context : ContextItems child typelefthandside : TypeLeftHandSide child dependencies : FunctionalDependencies child where : MaybeDeclarations visit 0: local idDefOccGamType : _ local idDefOccGamSigAsVar : _ local idDefOccGam : _ local idDefOccGamInside : _ local idGam : _ local idDefOccGamInstForClass : _ local idUseOccGamExtra : _ local errIdUseExtra : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local ehReorderedDecls : _ local errReorder : _ local patchEhNmInInstance : _ local instancerefname : _ local classrefname : _ local extranames : _ local idOccDef : _ local idOccDefVal : _ local idOccDefsSig : _ local idOccDefs : _ local instancename : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ local eh : _ local ehInst : _ local isAsPred : _ local doGenVarWild : _ local mbPrevInstancename : _ local generDerivInfoL : _ local lUniq : {UID} alternative Instance: child range : {Range} child instVariant : {InstVariant} child maybeinstancename : {MaybeName} child useimplicitly : {Bool} child context : ContextItems child type : Type child where : MaybeDeclarations visit 0: local idDefOccGamType : _ local idDefOccGam : _ local idGam : _ local classrefname : _ local idUseOccGamInst : _ local errIdUse : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local ehReorderedDecls : _ local errReorder : _ local instancerefname : _ local idOccDef : _ local idOccDefVal : _ local idOccDefs : _ local instancename : _ local nmLev : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ local doGenVarWild : _ local mbPrevInstancename : _ local lUniq : {UID} alternative InstanceUseImplicitly: child range : {Range} child expression : Expression child name : {Name} child types : Types visit 0: local idDefOccGam : _ local classrefname : _ local idUseOccGamInst : _ local errIdUse : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local instancerefname : _ local idOccDef : _ local idOccDefs : _ local instancename : _ local nmLev : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ local doGenVarWild : _ local mbPrevInstancename : _ local lUniq : {UID} alternative Default: child range : {Range} child name : {MaybeName} child types : Types visit 0: local idDefOccGam : _ local classrefname : _ local classrefnames : _ local idUseOccGamDflt : _ local errIdUse : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local idOccDef : _ local idOccDefs : _ local defaultname : _ local nmLev : _ local errSq : _ local pp : _ local ignoredecl : _ local eh : _ local isAsPred : _ local doGenVarWild : _ local lUniq : {UID} alternative Type: child range : {Range} child typelefthandside : TypeLeftHandSide child type : Type visit 0: local idDefOccGamType : _ local idDefOccGam : _ local idDefOccGamInside : _ local idGam : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local typerefname : _ local idOccDef : _ local idOccDefs : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ local doGenVarWild : _ alternative Pragma: child range : {Range} child pragma : Pragma visit 0: local patchEhNmInInstance : _ local pp : _ local eh : _ local isAsPred : _ local doGenVarWild : _ alternative Module: child range : {Range} child name : {MaybeName} child exports : MaybeExports visit 0: local patchEhNmInInstance : _ local eh : _ local isAsPred : _ local doGenVarWild : _ local isMainMod : _ local isTopMod : _ -} -- cata sem_Declaration :: Declaration -> T_Declaration sem_Declaration (Declaration_FunctionBindings _range _bindings) = (sem_Declaration_FunctionBindings _range (sem_FunctionBindings _bindings)) sem_Declaration (Declaration_PatternBinding _range _pattern _righthandside) = (sem_Declaration_PatternBinding _range (sem_Pattern _pattern) (sem_RightHandSide _righthandside)) sem_Declaration (Declaration_TypeSignature _range _names _type) = (sem_Declaration_TypeSignature _range _names (sem_Type _type)) sem_Declaration (Declaration_Fixity _range _fixity _priority _operators) = (sem_Declaration_Fixity _range _fixity _priority _operators) sem_Declaration (Declaration_FusionDeclaration _range _fusename) = (sem_Declaration_FusionDeclaration _range _fusename) sem_Declaration (Declaration_FusionConversion _range _absname _conname) = (sem_Declaration_FusionConversion _range _absname _conname) sem_Declaration (Declaration_Empty _range) = (sem_Declaration_Empty _range) sem_Declaration (Declaration_Data _range _context _typelefthandside _constructors _derivings) = (sem_Declaration_Data _range (sem_ContextItems _context) (sem_TypeLeftHandSide _typelefthandside) (sem_Constructors _constructors) (sem_Derivings _derivings)) sem_Declaration (Declaration_Newtype _range _context _typelefthandside _constructors _derivings) = (sem_Declaration_Newtype _range (sem_ContextItems _context) (sem_TypeLeftHandSide _typelefthandside) (sem_Constructor _constructors) (sem_Derivings _derivings)) sem_Declaration (Declaration_GADT _range _context _typelefthandside _constructors _derivings) = (sem_Declaration_GADT _range (sem_ContextItems _context) (sem_TypeLeftHandSide _typelefthandside) (sem_Constructors _constructors) (sem_Derivings _derivings)) sem_Declaration (Declaration_KindSignature _range _names _kind) = (sem_Declaration_KindSignature _range _names (sem_Kind _kind)) sem_Declaration (Declaration_ForeignImport _range _callconvention _safety _importname _name _type) = (sem_Declaration_ForeignImport _range _callconvention _safety _importname _name (sem_Type _type)) sem_Declaration (Declaration_ForeignExport _range _callconvention _exportname _name _type) = (sem_Declaration_ForeignExport _range _callconvention _exportname _name (sem_Type _type)) sem_Declaration (Declaration_Class _range _context _typelefthandside _dependencies _where) = (sem_Declaration_Class _range (sem_ContextItems _context) (sem_TypeLeftHandSide _typelefthandside) (sem_FunctionalDependencies _dependencies) (sem_MaybeDeclarations _where)) sem_Declaration (Declaration_Instance _range _instVariant _maybeinstancename _useimplicitly _context _type _where) = (sem_Declaration_Instance _range _instVariant _maybeinstancename _useimplicitly (sem_ContextItems _context) (sem_Type _type) (sem_MaybeDeclarations _where)) sem_Declaration (Declaration_InstanceUseImplicitly _range _expression _name _types) = (sem_Declaration_InstanceUseImplicitly _range (sem_Expression _expression) _name (sem_Types _types)) sem_Declaration (Declaration_Default _range _name _types) = (sem_Declaration_Default _range _name (sem_Types _types)) sem_Declaration (Declaration_Type _range _typelefthandside _type) = (sem_Declaration_Type _range (sem_TypeLeftHandSide _typelefthandside) (sem_Type _type)) sem_Declaration (Declaration_Pragma _range _pragma) = (sem_Declaration_Pragma _range (sem_Pragma _pragma)) sem_Declaration (Declaration_Module _range _name _exports) = (sem_Declaration_Module _range _name (sem_MaybeExports _exports)) -- semantic domain type T_Declaration = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.Decl]),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,([IdOcc]),IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Declaration_FunctionBindings :: Range -> T_FunctionBindings -> T_Declaration sem_Declaration_FunctionBindings range_ bindings_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _bindingsOcaseId :: UID _bindingsOfixityGam :: FixityGam _bindingsOgUniq :: UID _bindingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _bindingsOidGam :: IdDefOccGam _bindingsOmoduleNm :: HsName _bindingsOnmLev :: NmLev _bindingsOopts :: EHCOpts _bindingsOpatchEhNmInInstance :: PatchEhNmInInstance _bindingsOpragmas :: (Set.Set Pragma.Pragma) _bindingsOtopInstanceNmL :: ([HsName]) _bindingsIeh :: ([EH.Decl]) _bindingsIerrSq :: ErrSq _bindingsIgUniq :: UID _bindingsIidDefOccGam :: IdDefOccGam _bindingsIidDpdMp :: IdDpdMp _bindingsIidOccDefs :: ([IdOcc]) _bindingsIidUseOccGam :: IdUseOccGam _bindingsIpp :: PP_Doc _bindingsIppWrap :: (PP_Doc -> PP_Doc) _bindingsItopInstanceNmL :: ([HsName]) _bindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 115, column 9) _idOccDefs = _bindingsIidOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 76, column 9) _lhsOeh = _bindingsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _bindingsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _bindingsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _bindingsIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _bindingsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _bindingsIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _bindingsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _bindingsIundefOccGam -- copy rule (up) _lhsOgUniq = _bindingsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _bindingsItopInstanceNmL -- copy rule (down) _bindingsOcaseId = _lhsIcaseId -- copy rule (down) _bindingsOfixityGam = _lhsIfixityGam -- copy rule (down) _bindingsOgUniq = _lhsIgUniq -- copy rule (down) _bindingsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _bindingsOidGam = _lhsIidGam -- copy rule (down) _bindingsOmoduleNm = _lhsImoduleNm -- copy rule (down) _bindingsOnmLev = _lhsInmLev -- copy rule (down) _bindingsOopts = _lhsIopts -- copy rule (down) _bindingsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _bindingsOpragmas = _lhsIpragmas -- copy rule (down) _bindingsOtopInstanceNmL = _lhsItopInstanceNmL ( _bindingsIeh,_bindingsIerrSq,_bindingsIgUniq,_bindingsIidDefOccGam,_bindingsIidDpdMp,_bindingsIidOccDefs,_bindingsIidUseOccGam,_bindingsIpp,_bindingsIppWrap,_bindingsItopInstanceNmL,_bindingsIundefOccGam) = bindings_ _bindingsOcaseId _bindingsOfixityGam _bindingsOgUniq _bindingsOgenerDerivMp _bindingsOidGam _bindingsOmoduleNm _bindingsOnmLev _bindingsOopts _bindingsOpatchEhNmInInstance _bindingsOpragmas _bindingsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_PatternBinding :: Range -> T_Pattern -> T_RightHandSide -> T_Declaration sem_Declaration_PatternBinding range_ pattern_ righthandside_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOundefOccGam :: IdUseOccGam _righthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _righthandsideOsepPP :: PP_Doc _lhsOeh :: ([EH.Decl]) _righthandsideOmustBeMono :: Bool _patternOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _righthandsideOcaseId :: UID _righthandsideOfixityGam :: FixityGam _righthandsideOgUniq :: UID _righthandsideOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _righthandsideOidGam :: IdDefOccGam _righthandsideOmoduleNm :: HsName _righthandsideOnmLev :: NmLev _righthandsideOopts :: EHCOpts _righthandsideOpragmas :: (Set.Set Pragma.Pragma) _righthandsideOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam _righthandsideIeh :: (EH.Expr) _righthandsideIerrSq :: ErrSq _righthandsideIgUniq :: UID _righthandsideIidUseOccGam :: IdUseOccGam _righthandsideIpp :: PP_Doc _righthandsideIppWrap :: (PP_Doc -> PP_Doc) _righthandsideItopInstanceNmL :: ([HsName]) _righthandsideIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 140, column 9) _idDefOccGamPat = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Pat _eh) _idOccDefsPat -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 140, column 9) _idDefOccGam = _idDefOccGamPat `gamAddGam` _patternIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 746, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [_patternIidUseOccGam,_righthandsideIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 746, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL `idDpdMpUnion` idToOccL2DpdMp [_idOccDef] (gamToAssocL _patternIidDefOccGam) `idDpdMpUnion` idFrOccGam2DpdMp _patternIidDefOccGam [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 754, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_righthandsideIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1074, column 9) _righthandsideOpatchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 117, column 9) _idOccDef = IdOcc (maybe (mkHNm _lUniq) id _patternImbTopRefname) IdOcc_Pat -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 117, column 9) _idOccDefsPat = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 117, column 9) _idOccDefs = _patternIidOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 29, column 9) _pp = _patternIpp >#< _righthandsideIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 30, column 9) _righthandsideOsepPP = pp "=" -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 78, column 9) _eh = rngLift range_ EH.Decl_Val _patternIeh _righthandsideIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 79, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 877, column 9) _caseId = _lUniq -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 270, column 9) _righthandsideOmustBeMono = not _patternIisVar -- -- generated by the unique rule mechanism. (_patternOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq `Seq.union` _righthandsideIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap . _righthandsideIppWrap -- copy rule (up) _lhsOgUniq = _righthandsideIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _righthandsideItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _righthandsideOcaseId = _caseId -- copy rule (down) _righthandsideOfixityGam = _lhsIfixityGam -- copy rule (chain) _righthandsideOgUniq = _patternIgUniq -- copy rule (down) _righthandsideOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _righthandsideOidGam = _lhsIidGam -- copy rule (down) _righthandsideOmoduleNm = _lhsImoduleNm -- copy rule (down) _righthandsideOnmLev = _lhsInmLev -- copy rule (down) _righthandsideOopts = _lhsIopts -- copy rule (down) _righthandsideOpragmas = _lhsIpragmas -- copy rule (chain) _righthandsideOtopInstanceNmL = _patternItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL ( _righthandsideIeh,_righthandsideIerrSq,_righthandsideIgUniq,_righthandsideIidUseOccGam,_righthandsideIpp,_righthandsideIppWrap,_righthandsideItopInstanceNmL,_righthandsideIundefOccGam) = righthandside_ _righthandsideOcaseId _righthandsideOfixityGam _righthandsideOgUniq _righthandsideOgenerDerivMp _righthandsideOidGam _righthandsideOmoduleNm _righthandsideOmustBeMono _righthandsideOnmLev _righthandsideOopts _righthandsideOpatchEhNmInInstance _righthandsideOpragmas _righthandsideOsepPP _righthandsideOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_TypeSignature :: Range -> Names -> T_Type -> T_Declaration sem_Declaration_TypeSignature range_ names_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _typeOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 134, column 9) _idDefOccGam = mkDefOccGam' _lhsInmLev range_ (\o -> IdAsp_Val_Sig (_mkEHSig (ioccNm o))) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 134, column 9) _idDefOccGamType = tvarS2IdDefOccGam _nmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 274, column 9) _idTySigDefOccGam = mkDefOccGam' _lhsInmLev range_ (\o -> IdAsp_Val_Var) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 366, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 741, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _typeIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 741, column 9) _idDpdMp = idToOccL2DpdMp (gamKeys _idDefOccGam) _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 744, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typeIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 14, column 9) _refnames = map (hsnSetLevQual _lhsInmLev _lhsImoduleNm) names_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 113, column 9) _idOccDefs = [ IdOcc n IdOcc_Val | n <- _refnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 17, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 33, column 9) _pp = ppCommas' names_ >#< "::" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 81, column 9) _mkEHSig = \n -> rngLift range_ EH.Decl_TySig n _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 82, column 9) _lhsOeh = map _mkEHSig _refnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _idTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (from local) _typeOnmLev = _nmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (from local) _typeOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Fixity :: Range -> Fixity -> (Maybe Int) -> Names -> T_Declaration sem_Declaration_Fixity range_ fixity_ priority_ operators_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOgathFixityGam :: FixityGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 138, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ IdAsp_Val_Fix [ IdOcc n IdOcc_Val | n <- _oprefnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 12, column 9) _oprefnames = map (hsnSetLevQual _lhsInmLev _lhsImoduleNm) operators_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 35, column 9) _pp = fixity_ >#< maybe empty pp priority_ >#< ppCommas' operators_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 16, column 9) _lhsOgathFixityGam = let p = maybe (fgiPrio defaultFixityGamInfo) id priority_ mk n = (n,FixityGamInfo p fixity_) in assocLToGam $ map mk $ _oprefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 84, column 9) _lhsOeh = [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_FusionDeclaration :: Range -> Name -> T_Declaration sem_Declaration_FusionDeclaration range_ fusename_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 201, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Fusion _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 682, column 29) (_reffusename,_,_idUseOccGamFusion,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [fusename_] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 832, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _idUseOccGamFusion -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 832, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 835, column 9) _lhsOundefOccGam = _undefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 163, column 9) _idOccDef = IdOcc (mkHNm _lUniq) IdOcc_Fusion -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 163, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 158, column 17) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 71, column 9) _pp = "fuse" >#< fusename_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 99, column 9) _eh = rngLift range_ EH.Decl_FusionDecl _reffusename -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 103, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- -- generated by the unique rule mechanism. (_lhsOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_FusionConversion :: Range -> Name -> Name -> T_Declaration sem_Declaration_FusionConversion range_ absname_ conname_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 203, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Fusion_Conv _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 685, column 29) (_,_refnames,_idUseOccGamFusion,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [conname_,absname_] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 832, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _idUseOccGamFusion -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 832, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 835, column 9) _lhsOundefOccGam = _undefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 163, column 9) _idOccDef = IdOcc (mkHNm _lUniq) IdOcc_Fusion -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 163, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 158, column 17) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 73, column 9) _pp = "convert" >#< ppCommas [conname_, absname_] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 101, column 9) _eh = rngLift range_ EH.Decl_FusionConv (_refnames !! 0) (_refnames !! 1) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 103, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- -- generated by the unique rule mechanism. (_lhsOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Empty :: Range -> T_Declaration sem_Declaration_Empty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 37, column 9) _pp = empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 86, column 9) _lhsOeh = [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Data :: Range -> T_ContextItems -> T_TypeLeftHandSide -> T_Constructors -> T_Derivings -> T_Declaration sem_Declaration_Data range_ context_ typelefthandside_ constructors_ derivings_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOneedsError :: Bool _derivingsOidOccDefData :: IdOcc _lhsOeh :: ([EH.Decl]) _derivingsOehDataTyExpr :: (EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _constructorsOfixityGam :: FixityGam _constructorsOgUniq :: UID _constructorsOidGam :: IdDefOccGam _constructorsOmoduleNm :: HsName _constructorsOnmLev :: NmLev _constructorsOopts :: EHCOpts _constructorsOpatchEhNmInInstance :: PatchEhNmInInstance _constructorsOtopInstanceNmL :: ([HsName]) _derivingsOfixityGam :: FixityGam _derivingsOgUniq :: UID _derivingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _derivingsOidGam :: IdDefOccGam _derivingsOmoduleNm :: HsName _derivingsOnmLev :: NmLev _derivingsOopts :: EHCOpts _derivingsOpatchEhNmInInstance :: PatchEhNmInInstance _derivingsOpragmas :: (Set.Set Pragma.Pragma) _derivingsOtopInstanceNmL :: ([HsName]) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam _typelefthandsideIeh :: ([EH.TyVar]) _typelefthandsideIerrSq :: ErrSq _typelefthandsideIfreeTvarS :: HsNameS _typelefthandsideIgUniq :: UID _typelefthandsideIidDefOccGam :: IdDefOccGam _typelefthandsideIidOccDefs :: ([IdOcc]) _typelefthandsideIidUseOccGam :: IdUseOccGam _typelefthandsideIname :: Name _typelefthandsideIpp :: PP_Doc _typelefthandsideIppWrap :: (PP_Doc -> PP_Doc) _typelefthandsideIrange :: Range _typelefthandsideItopInstanceNmL :: ([HsName]) _typelefthandsideItypevariables :: Names _typelefthandsideIundefOccGam :: IdUseOccGam _constructorsIconAndFldrefnames :: (AssocL Name Names) _constructorsIconrefnames :: Names _constructorsIeh :: ([EH.DataConstr]) _constructorsIerrSq :: ErrSq _constructorsIfreeTvarS :: HsNameS _constructorsIgUniq :: UID _constructorsIhasFlds :: Bool _constructorsIidUseOccGam :: IdUseOccGam _constructorsIpp :: PP_Doc _constructorsIppWrap :: (PP_Doc -> PP_Doc) _constructorsItopInstanceNmL :: ([HsName]) _constructorsIundefOccGam :: IdUseOccGam _derivingsIerrSq :: ErrSq _derivingsIgUniq :: UID _derivingsIgathFixityGam :: FixityGam _derivingsIgathPragmas :: (Set.Set Pragma.Pragma) _derivingsIidDefOccGam :: IdDefOccGam _derivingsIidDpdMp :: IdDpdMp _derivingsIidOccDefs :: ([IdOcc]) _derivingsIidTySigDefOccGam :: IdDefOccGam _derivingsIidUseOccGam :: IdUseOccGam _derivingsIneedsError :: Bool _derivingsIpp :: PP_Doc _derivingsIppL :: ([PP_Doc]) _derivingsIppWrap :: (PP_Doc -> PP_Doc) _derivingsItopInstanceNmL :: ([HsName]) _derivingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamType = tvarS2IdDefOccGam _nmLev _typelefthandsideIrange _constructorsIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamType2 = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamConstrs = mkDefOccGam _lhsInmLev _typelefthandsideIrange IdAsp_Val_Con _idOccDefsCon `gamAddGam` mkDefOccGam'' _lhsInmLev _typelefthandsideIrange (\c _ -> IdAsp_Val_Fld _typerefname c) (concat [ [(c,IdOcc n IdOcc_Val), (c,IdOcc n IdOcc_Fld)] | (c,ns) <- _constructorsIconAndFldrefnames, n <- ns ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamGener = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def _ehGener) _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def _eh) [_idOccDef] `gamAddGam` _idDefOccGamConstrs `gamAddGam` _derivingsIidDefOccGam `gamAddGam` _idDefOccGamGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 191, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 370, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 662, column 29) (_,_,_idUseOccGamVal,_errIdUseVal) = mkUseOccGam _lhsIopts _lhsIidGam [] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 675, column 29) (_,_,_idUseOccGamClass,_errIdUseClass) = mkUseOccGam _lhsIopts _lhsIidGam (if ehcOptGenGenerics _lhsIopts then builtinGenerClassNmL else []) IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 697, column 9) _lhsOneedsError = _constructorsIhasFlds -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 757, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [ _constructorsIidUseOccGam , _idUseOccGamVal , _contextIidUseOccGam , _idUseOccGamClass ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 757, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamConstrs [_idOccDef] `idDpdMpUnion` _derivingsIidDpdMp `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 873, column 9) _derivingsOidOccDefData = _idOccDef -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 18, column 9) _typerefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm _typelefthandsideIname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDef = IdOcc _typerefname IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsCon = [ IdOcc n IdOcc_Val | n <- _constructorsIconrefnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsFld = concat [ [IdOcc n IdOcc_Val, IdOcc n IdOcc_Fld] | (_,ns) <- _constructorsIconAndFldrefnames, n <- ns ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _generMaxRemArity = length _typelefthandsideItypevariables `min` 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsGener = if ehcOptGenGenerics _lhsIopts then [ IdOcc (hsnNm2GenerReprSyn arity _typerefname) IdOcc_Type | arity <- [0 .. _generMaxRemArity] ] else [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefs = [_idOccDef] ++ _idOccDefsCon ++ _idOccDefsFld ++ _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 20, column 9) _nmLev = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 117, column 9) _errDupIntro = idDefOccGamCheckDupNames _idDefOccGamType2 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 72, column 9) _locErrs = Seq.empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 77, column 9) _errSq = Seq.unions [ _locErrs , _typelefthandsideIerrSq , Seq.fromList _errDupIntro , Seq.fromList _errIdUseVal , _constructorsIerrSq , _contextIerrSq , _derivingsIerrSq , Seq.fromList _errIdUseClass ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 39, column 9) _pp = "data" >#< _typelefthandsideIpp >#< "=" >#< _constructorsIpp >-< ppParensCommas _derivingsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 89, column 9) _eh = rngLift range_ EH.Decl_Data False _typerefname (map (rngLift range_ EH.TyVar_Var) _typelefthandsideItypevariables) _constructorsIeh (if ehcOptGenGenerics _lhsIopts then Just _generMaxRemArity else Nothing) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 91, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 97, column 9) _ehGener = rngLift range_ EH.Decl_GenerRep _generMaxRemArity _typerefname _constructorsIconrefnames _constructorsIconAndFldrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 164, column 9) _derivingsOehDataTyExpr = appTopApp (rngLift range_ EH.TyExpr_Con _typerefname : map (rngLift range_ EH.TyExpr_Var) _typelefthandsideItypevariables) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _derivingsIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _derivingsIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _derivingsIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _contextIppWrap . _typelefthandsideIppWrap . _constructorsIppWrap . _derivingsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _undefOccGam -- copy rule (up) _lhsOgUniq = _derivingsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _derivingsItopInstanceNmL -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (down) _contextOgUniq = _lhsIgUniq -- copy rule (from local) _contextOidGam = _idGam -- copy rule (from local) _contextOnmLev = _nmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (from local) _contextOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _contextOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _typelefthandsideOfixityGam = _lhsIfixityGam -- copy rule (chain) _typelefthandsideOgUniq = _contextIgUniq -- copy rule (from local) _typelefthandsideOidGam = _idGam -- copy rule (down) _typelefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (from local) _typelefthandsideOnmLev = _nmLev -- copy rule (down) _typelefthandsideOopts = _lhsIopts -- copy rule (from local) _typelefthandsideOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _typelefthandsideOtopInstanceNmL = _contextItopInstanceNmL -- copy rule (down) _constructorsOfixityGam = _lhsIfixityGam -- copy rule (chain) _constructorsOgUniq = _typelefthandsideIgUniq -- copy rule (from local) _constructorsOidGam = _idGam -- copy rule (down) _constructorsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _constructorsOnmLev = _nmLev -- copy rule (down) _constructorsOopts = _lhsIopts -- copy rule (from local) _constructorsOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _constructorsOtopInstanceNmL = _typelefthandsideItopInstanceNmL -- copy rule (down) _derivingsOfixityGam = _lhsIfixityGam -- copy rule (chain) _derivingsOgUniq = _constructorsIgUniq -- copy rule (down) _derivingsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _derivingsOidGam = _idGam -- copy rule (down) _derivingsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _derivingsOnmLev = _nmLev -- copy rule (down) _derivingsOopts = _lhsIopts -- copy rule (from local) _derivingsOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _derivingsOpragmas = _lhsIpragmas -- copy rule (chain) _derivingsOtopInstanceNmL = _constructorsItopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL ( _constructorsIconAndFldrefnames,_constructorsIconrefnames,_constructorsIeh,_constructorsIerrSq,_constructorsIfreeTvarS,_constructorsIgUniq,_constructorsIhasFlds,_constructorsIidUseOccGam,_constructorsIpp,_constructorsIppWrap,_constructorsItopInstanceNmL,_constructorsIundefOccGam) = constructors_ _constructorsOfixityGam _constructorsOgUniq _constructorsOidGam _constructorsOmoduleNm _constructorsOnmLev _constructorsOopts _constructorsOpatchEhNmInInstance _constructorsOtopInstanceNmL ( _derivingsIerrSq,_derivingsIgUniq,_derivingsIgathFixityGam,_derivingsIgathPragmas,_derivingsIidDefOccGam,_derivingsIidDpdMp,_derivingsIidOccDefs,_derivingsIidTySigDefOccGam,_derivingsIidUseOccGam,_derivingsIneedsError,_derivingsIpp,_derivingsIppL,_derivingsIppWrap,_derivingsItopInstanceNmL,_derivingsIundefOccGam) = derivings_ _derivingsOehDataTyExpr _derivingsOfixityGam _derivingsOgUniq _derivingsOgenerDerivMp _derivingsOidGam _derivingsOidOccDefData _derivingsOmoduleNm _derivingsOnmLev _derivingsOopts _derivingsOpatchEhNmInInstance _derivingsOpragmas _derivingsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Newtype :: Range -> T_ContextItems -> T_TypeLeftHandSide -> T_Constructor -> T_Derivings -> T_Declaration sem_Declaration_Newtype range_ context_ typelefthandside_ constructors_ derivings_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _derivingsOidOccDefData :: IdOcc _lhsOeh :: ([EH.Decl]) _derivingsOehDataTyExpr :: (EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _constructorsOfixityGam :: FixityGam _constructorsOgUniq :: UID _constructorsOidGam :: IdDefOccGam _constructorsOmoduleNm :: HsName _constructorsOnmLev :: NmLev _constructorsOopts :: EHCOpts _constructorsOpatchEhNmInInstance :: PatchEhNmInInstance _constructorsOtopInstanceNmL :: ([HsName]) _derivingsOfixityGam :: FixityGam _derivingsOgUniq :: UID _derivingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _derivingsOidGam :: IdDefOccGam _derivingsOmoduleNm :: HsName _derivingsOnmLev :: NmLev _derivingsOopts :: EHCOpts _derivingsOpatchEhNmInInstance :: PatchEhNmInInstance _derivingsOpragmas :: (Set.Set Pragma.Pragma) _derivingsOtopInstanceNmL :: ([HsName]) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam _typelefthandsideIeh :: ([EH.TyVar]) _typelefthandsideIerrSq :: ErrSq _typelefthandsideIfreeTvarS :: HsNameS _typelefthandsideIgUniq :: UID _typelefthandsideIidDefOccGam :: IdDefOccGam _typelefthandsideIidOccDefs :: ([IdOcc]) _typelefthandsideIidUseOccGam :: IdUseOccGam _typelefthandsideIname :: Name _typelefthandsideIpp :: PP_Doc _typelefthandsideIppWrap :: (PP_Doc -> PP_Doc) _typelefthandsideIrange :: Range _typelefthandsideItopInstanceNmL :: ([HsName]) _typelefthandsideItypevariables :: Names _typelefthandsideIundefOccGam :: IdUseOccGam _constructorsIconAndFldrefnames :: (AssocL Name Names) _constructorsIconrefnames :: Names _constructorsIeh :: (EH.DataConstr) _constructorsIerrSq :: ErrSq _constructorsIfreeTvarS :: HsNameS _constructorsIgUniq :: UID _constructorsIhasFlds :: Bool _constructorsIidUseOccGam :: IdUseOccGam _constructorsIpp :: PP_Doc _constructorsIppWrap :: (PP_Doc -> PP_Doc) _constructorsItopInstanceNmL :: ([HsName]) _constructorsIundefOccGam :: IdUseOccGam _derivingsIerrSq :: ErrSq _derivingsIgUniq :: UID _derivingsIgathFixityGam :: FixityGam _derivingsIgathPragmas :: (Set.Set Pragma.Pragma) _derivingsIidDefOccGam :: IdDefOccGam _derivingsIidDpdMp :: IdDpdMp _derivingsIidOccDefs :: ([IdOcc]) _derivingsIidTySigDefOccGam :: IdDefOccGam _derivingsIidUseOccGam :: IdUseOccGam _derivingsIneedsError :: Bool _derivingsIpp :: PP_Doc _derivingsIppL :: ([PP_Doc]) _derivingsIppWrap :: (PP_Doc -> PP_Doc) _derivingsItopInstanceNmL :: ([HsName]) _derivingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamType = tvarS2IdDefOccGam _nmLev _typelefthandsideIrange _constructorsIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamType2 = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamConstrs = mkDefOccGam _lhsInmLev _typelefthandsideIrange IdAsp_Val_Con _idOccDefsCon `gamAddGam` mkDefOccGam'' _lhsInmLev _typelefthandsideIrange (\c _ -> IdAsp_Val_Fld _typerefname c) (concat [ [(c,IdOcc n IdOcc_Val), (c,IdOcc n IdOcc_Fld)] | (c,ns) <- _constructorsIconAndFldrefnames, n <- ns ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamGener = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def _ehGener) _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def _eh) [_idOccDef] `gamAddGam` _idDefOccGamConstrs `gamAddGam` _derivingsIidDefOccGam `gamAddGam` _idDefOccGamGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 191, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 370, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 665, column 29) (_,_,_idUseOccGamVal,_errIdUseVal) = mkUseOccGam _lhsIopts _lhsIidGam [hsnPrelId] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 675, column 29) (_,_,_idUseOccGamClass,_errIdUseClass) = mkUseOccGam _lhsIopts _lhsIidGam (if ehcOptGenGenerics _lhsIopts then builtinGenerClassNmL else []) IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 757, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [ _constructorsIidUseOccGam , _idUseOccGamVal , _contextIidUseOccGam , _idUseOccGamClass ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 757, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamConstrs [_idOccDef] `idDpdMpUnion` _derivingsIidDpdMp `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 873, column 9) _derivingsOidOccDefData = _idOccDef -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 18, column 9) _typerefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm _typelefthandsideIname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDef = IdOcc _typerefname IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsCon = [ IdOcc n IdOcc_Val | n <- _constructorsIconrefnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsFld = concat [ [IdOcc n IdOcc_Val, IdOcc n IdOcc_Fld] | (_,ns) <- _constructorsIconAndFldrefnames, n <- ns ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _generMaxRemArity = length _typelefthandsideItypevariables `min` 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsGener = if ehcOptGenGenerics _lhsIopts then [ IdOcc (hsnNm2GenerReprSyn arity _typerefname) IdOcc_Type | arity <- [0 .. _generMaxRemArity] ] else [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefs = [_idOccDef] ++ _idOccDefsCon ++ _idOccDefsFld ++ _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 20, column 9) _nmLev = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 30, column 9) _errNewtype = case _constructorsIeh of EH.DataConstr_Constr _ _ _ [_] _ -> [] _ -> [rngLift range_ Err_Newtype _typelefthandsideIname] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 117, column 9) _errDupIntro = idDefOccGamCheckDupNames _idDefOccGamType2 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 74, column 9) _locErrs = Seq.fromList _errNewtype -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 77, column 9) _errSq = Seq.unions [ _locErrs , _typelefthandsideIerrSq , Seq.fromList _errDupIntro , Seq.fromList _errIdUseVal , _constructorsIerrSq , _contextIerrSq , _derivingsIerrSq , Seq.fromList _errIdUseClass ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 43, column 9) _pp = "newtype" >#< _typelefthandsideIpp >#< "=" >#< _constructorsIpp >-< ppParensCommas _derivingsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 93, column 9) _eh = rngLift range_ EH.Decl_Data True _typerefname (map (rngLift range_ EH.TyVar_Var) _typelefthandsideItypevariables) [_constructorsIeh] (if ehcOptGenGenerics _lhsIopts then Just _generMaxRemArity else Nothing) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 95, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 97, column 9) _ehGener = rngLift range_ EH.Decl_GenerRep _generMaxRemArity _typerefname _constructorsIconrefnames _constructorsIconAndFldrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 164, column 9) _derivingsOehDataTyExpr = appTopApp (rngLift range_ EH.TyExpr_Con _typerefname : map (rngLift range_ EH.TyExpr_Var) _typelefthandsideItypevariables) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _derivingsIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _derivingsIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _derivingsIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = _derivingsIneedsError -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _contextIppWrap . _typelefthandsideIppWrap . _constructorsIppWrap . _derivingsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _undefOccGam -- copy rule (up) _lhsOgUniq = _derivingsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _derivingsItopInstanceNmL -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (down) _contextOgUniq = _lhsIgUniq -- copy rule (from local) _contextOidGam = _idGam -- copy rule (from local) _contextOnmLev = _nmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (from local) _contextOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _contextOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _typelefthandsideOfixityGam = _lhsIfixityGam -- copy rule (chain) _typelefthandsideOgUniq = _contextIgUniq -- copy rule (from local) _typelefthandsideOidGam = _idGam -- copy rule (down) _typelefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (from local) _typelefthandsideOnmLev = _nmLev -- copy rule (down) _typelefthandsideOopts = _lhsIopts -- copy rule (from local) _typelefthandsideOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _typelefthandsideOtopInstanceNmL = _contextItopInstanceNmL -- copy rule (down) _constructorsOfixityGam = _lhsIfixityGam -- copy rule (chain) _constructorsOgUniq = _typelefthandsideIgUniq -- copy rule (from local) _constructorsOidGam = _idGam -- copy rule (down) _constructorsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _constructorsOnmLev = _nmLev -- copy rule (down) _constructorsOopts = _lhsIopts -- copy rule (from local) _constructorsOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _constructorsOtopInstanceNmL = _typelefthandsideItopInstanceNmL -- copy rule (down) _derivingsOfixityGam = _lhsIfixityGam -- copy rule (chain) _derivingsOgUniq = _constructorsIgUniq -- copy rule (down) _derivingsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _derivingsOidGam = _idGam -- copy rule (down) _derivingsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _derivingsOnmLev = _nmLev -- copy rule (down) _derivingsOopts = _lhsIopts -- copy rule (from local) _derivingsOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _derivingsOpragmas = _lhsIpragmas -- copy rule (chain) _derivingsOtopInstanceNmL = _constructorsItopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL ( _constructorsIconAndFldrefnames,_constructorsIconrefnames,_constructorsIeh,_constructorsIerrSq,_constructorsIfreeTvarS,_constructorsIgUniq,_constructorsIhasFlds,_constructorsIidUseOccGam,_constructorsIpp,_constructorsIppWrap,_constructorsItopInstanceNmL,_constructorsIundefOccGam) = constructors_ _constructorsOfixityGam _constructorsOgUniq _constructorsOidGam _constructorsOmoduleNm _constructorsOnmLev _constructorsOopts _constructorsOpatchEhNmInInstance _constructorsOtopInstanceNmL ( _derivingsIerrSq,_derivingsIgUniq,_derivingsIgathFixityGam,_derivingsIgathPragmas,_derivingsIidDefOccGam,_derivingsIidDpdMp,_derivingsIidOccDefs,_derivingsIidTySigDefOccGam,_derivingsIidUseOccGam,_derivingsIneedsError,_derivingsIpp,_derivingsIppL,_derivingsIppWrap,_derivingsItopInstanceNmL,_derivingsIundefOccGam) = derivings_ _derivingsOehDataTyExpr _derivingsOfixityGam _derivingsOgUniq _derivingsOgenerDerivMp _derivingsOidGam _derivingsOidOccDefData _derivingsOmoduleNm _derivingsOnmLev _derivingsOopts _derivingsOpatchEhNmInInstance _derivingsOpragmas _derivingsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_GADT :: Range -> T_ContextItems -> T_TypeLeftHandSide -> T_Constructors -> T_Derivings -> T_Declaration sem_Declaration_GADT range_ context_ typelefthandside_ constructors_ derivings_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _derivingsOidOccDefData :: IdOcc _lhsOeh :: ([EH.Decl]) _derivingsOehDataTyExpr :: (EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _constructorsOfixityGam :: FixityGam _constructorsOgUniq :: UID _constructorsOidGam :: IdDefOccGam _constructorsOmoduleNm :: HsName _constructorsOnmLev :: NmLev _constructorsOopts :: EHCOpts _constructorsOpatchEhNmInInstance :: PatchEhNmInInstance _constructorsOtopInstanceNmL :: ([HsName]) _derivingsOfixityGam :: FixityGam _derivingsOgUniq :: UID _derivingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _derivingsOidGam :: IdDefOccGam _derivingsOmoduleNm :: HsName _derivingsOnmLev :: NmLev _derivingsOopts :: EHCOpts _derivingsOpatchEhNmInInstance :: PatchEhNmInInstance _derivingsOpragmas :: (Set.Set Pragma.Pragma) _derivingsOtopInstanceNmL :: ([HsName]) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam _typelefthandsideIeh :: ([EH.TyVar]) _typelefthandsideIerrSq :: ErrSq _typelefthandsideIfreeTvarS :: HsNameS _typelefthandsideIgUniq :: UID _typelefthandsideIidDefOccGam :: IdDefOccGam _typelefthandsideIidOccDefs :: ([IdOcc]) _typelefthandsideIidUseOccGam :: IdUseOccGam _typelefthandsideIname :: Name _typelefthandsideIpp :: PP_Doc _typelefthandsideIppWrap :: (PP_Doc -> PP_Doc) _typelefthandsideIrange :: Range _typelefthandsideItopInstanceNmL :: ([HsName]) _typelefthandsideItypevariables :: Names _typelefthandsideIundefOccGam :: IdUseOccGam _constructorsIconAndFldrefnames :: (AssocL Name Names) _constructorsIconrefnames :: Names _constructorsIeh :: ([EH.DataConstr]) _constructorsIerrSq :: ErrSq _constructorsIfreeTvarS :: HsNameS _constructorsIgUniq :: UID _constructorsIhasFlds :: Bool _constructorsIidUseOccGam :: IdUseOccGam _constructorsIpp :: PP_Doc _constructorsIppWrap :: (PP_Doc -> PP_Doc) _constructorsItopInstanceNmL :: ([HsName]) _constructorsIundefOccGam :: IdUseOccGam _derivingsIerrSq :: ErrSq _derivingsIgUniq :: UID _derivingsIgathFixityGam :: FixityGam _derivingsIgathPragmas :: (Set.Set Pragma.Pragma) _derivingsIidDefOccGam :: IdDefOccGam _derivingsIidDpdMp :: IdDpdMp _derivingsIidOccDefs :: ([IdOcc]) _derivingsIidTySigDefOccGam :: IdDefOccGam _derivingsIidUseOccGam :: IdUseOccGam _derivingsIneedsError :: Bool _derivingsIpp :: PP_Doc _derivingsIppL :: ([PP_Doc]) _derivingsIppWrap :: (PP_Doc -> PP_Doc) _derivingsItopInstanceNmL :: ([HsName]) _derivingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamType = tvarS2IdDefOccGam _nmLev _typelefthandsideIrange _constructorsIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamType2 = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamConstrs = mkDefOccGam _lhsInmLev _typelefthandsideIrange IdAsp_Val_Con _idOccDefsCon `gamAddGam` mkDefOccGam'' _lhsInmLev _typelefthandsideIrange (\c _ -> IdAsp_Val_Fld _typerefname c) (concat [ [(c,IdOcc n IdOcc_Val), (c,IdOcc n IdOcc_Fld)] | (c,ns) <- _constructorsIconAndFldrefnames, n <- ns ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGamGener = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def _ehGener) _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 145, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def _eh) [_idOccDef] `gamAddGam` _idDefOccGamConstrs `gamAddGam` _derivingsIidDefOccGam `gamAddGam` _idDefOccGamGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 191, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 370, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 662, column 29) (_,_,_idUseOccGamVal,_errIdUseVal) = mkUseOccGam _lhsIopts _lhsIidGam [] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 675, column 29) (_,_,_idUseOccGamClass,_errIdUseClass) = mkUseOccGam _lhsIopts _lhsIidGam (if ehcOptGenGenerics _lhsIopts then builtinGenerClassNmL else []) IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 757, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [ _constructorsIidUseOccGam , _idUseOccGamVal , _contextIidUseOccGam , _idUseOccGamClass ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 757, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamConstrs [_idOccDef] `idDpdMpUnion` _derivingsIidDpdMp `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 873, column 9) _derivingsOidOccDefData = _idOccDef -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 18, column 9) _typerefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm _typelefthandsideIname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDef = IdOcc _typerefname IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsCon = [ IdOcc n IdOcc_Val | n <- _constructorsIconrefnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsFld = concat [ [IdOcc n IdOcc_Val, IdOcc n IdOcc_Fld] | (_,ns) <- _constructorsIconAndFldrefnames, n <- ns ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _generMaxRemArity = length _typelefthandsideItypevariables `min` 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefsGener = if ehcOptGenGenerics _lhsIopts then [ IdOcc (hsnNm2GenerReprSyn arity _typerefname) IdOcc_Type | arity <- [0 .. _generMaxRemArity] ] else [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 123, column 9) _idOccDefs = [_idOccDef] ++ _idOccDefsCon ++ _idOccDefsFld ++ _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 20, column 9) _nmLev = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 117, column 9) _errDupIntro = idDefOccGamCheckDupNames _idDefOccGamType2 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 72, column 9) _locErrs = Seq.empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 77, column 9) _errSq = Seq.unions [ _locErrs , _typelefthandsideIerrSq , Seq.fromList _errDupIntro , Seq.fromList _errIdUseVal , _constructorsIerrSq , _contextIerrSq , _derivingsIerrSq , Seq.fromList _errIdUseClass ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 47, column 9) _pp = "data" >#< _typelefthandsideIpp >#< "where" >-< indent 2 (_constructorsIpp >-< ppParensCommas _derivingsIppL ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 89, column 9) _eh = rngLift range_ EH.Decl_Data False _typerefname (map (rngLift range_ EH.TyVar_Var) _typelefthandsideItypevariables) _constructorsIeh (if ehcOptGenGenerics _lhsIopts then Just _generMaxRemArity else Nothing) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 91, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 97, column 9) _ehGener = rngLift range_ EH.Decl_GenerRep _generMaxRemArity _typerefname _constructorsIconrefnames _constructorsIconAndFldrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 164, column 9) _derivingsOehDataTyExpr = appTopApp (rngLift range_ EH.TyExpr_Con _typerefname : map (rngLift range_ EH.TyExpr_Var) _typelefthandsideItypevariables) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _derivingsIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _derivingsIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _derivingsIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = _derivingsIneedsError -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _contextIppWrap . _typelefthandsideIppWrap . _constructorsIppWrap . _derivingsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _undefOccGam -- copy rule (up) _lhsOgUniq = _derivingsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _derivingsItopInstanceNmL -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (down) _contextOgUniq = _lhsIgUniq -- copy rule (from local) _contextOidGam = _idGam -- copy rule (from local) _contextOnmLev = _nmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (from local) _contextOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _contextOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _typelefthandsideOfixityGam = _lhsIfixityGam -- copy rule (chain) _typelefthandsideOgUniq = _contextIgUniq -- copy rule (from local) _typelefthandsideOidGam = _idGam -- copy rule (down) _typelefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (from local) _typelefthandsideOnmLev = _nmLev -- copy rule (down) _typelefthandsideOopts = _lhsIopts -- copy rule (from local) _typelefthandsideOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _typelefthandsideOtopInstanceNmL = _contextItopInstanceNmL -- copy rule (down) _constructorsOfixityGam = _lhsIfixityGam -- copy rule (chain) _constructorsOgUniq = _typelefthandsideIgUniq -- copy rule (from local) _constructorsOidGam = _idGam -- copy rule (down) _constructorsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _constructorsOnmLev = _nmLev -- copy rule (down) _constructorsOopts = _lhsIopts -- copy rule (from local) _constructorsOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _constructorsOtopInstanceNmL = _typelefthandsideItopInstanceNmL -- copy rule (down) _derivingsOfixityGam = _lhsIfixityGam -- copy rule (chain) _derivingsOgUniq = _constructorsIgUniq -- copy rule (down) _derivingsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _derivingsOidGam = _idGam -- copy rule (down) _derivingsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _derivingsOnmLev = _nmLev -- copy rule (down) _derivingsOopts = _lhsIopts -- copy rule (from local) _derivingsOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _derivingsOpragmas = _lhsIpragmas -- copy rule (chain) _derivingsOtopInstanceNmL = _constructorsItopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL ( _constructorsIconAndFldrefnames,_constructorsIconrefnames,_constructorsIeh,_constructorsIerrSq,_constructorsIfreeTvarS,_constructorsIgUniq,_constructorsIhasFlds,_constructorsIidUseOccGam,_constructorsIpp,_constructorsIppWrap,_constructorsItopInstanceNmL,_constructorsIundefOccGam) = constructors_ _constructorsOfixityGam _constructorsOgUniq _constructorsOidGam _constructorsOmoduleNm _constructorsOnmLev _constructorsOopts _constructorsOpatchEhNmInInstance _constructorsOtopInstanceNmL ( _derivingsIerrSq,_derivingsIgUniq,_derivingsIgathFixityGam,_derivingsIgathPragmas,_derivingsIidDefOccGam,_derivingsIidDpdMp,_derivingsIidOccDefs,_derivingsIidTySigDefOccGam,_derivingsIidUseOccGam,_derivingsIneedsError,_derivingsIpp,_derivingsIppL,_derivingsIppWrap,_derivingsItopInstanceNmL,_derivingsIundefOccGam) = derivings_ _derivingsOehDataTyExpr _derivingsOfixityGam _derivingsOgUniq _derivingsOgenerDerivMp _derivingsOidGam _derivingsOidOccDefData _derivingsOmoduleNm _derivingsOnmLev _derivingsOopts _derivingsOpatchEhNmInInstance _derivingsOpragmas _derivingsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_KindSignature :: Range -> Names -> T_Kind -> T_Declaration sem_Declaration_KindSignature range_ names_ kind_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _kindOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _kindOgUniq :: UID _kindOnmLev :: NmLev _kindOopts :: EHCOpts _kindOpatchEhNmInInstance :: PatchEhNmInInstance _kindOtopInstanceNmL :: ([HsName]) _kindIconNm :: Name _kindIeh :: (EH.KiExpr) _kindIerrSq :: ErrSq _kindIfreeTvarS :: HsNameS _kindIgUniq :: UID _kindIidUseOccGam :: IdUseOccGam _kindIpp :: PP_Doc _kindIppWrap :: (PP_Doc -> PP_Doc) _kindItopInstanceNmL :: ([HsName]) _kindIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 163, column 9) _idDefOccGam = mkDefOccGam' _lhsInmLev range_ (\o -> IdAsp_Type_Sig (_mkEHSig (ioccNm o))) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 163, column 9) _idDefOccGamKind = kvarS2IdDefOccGam _nmLev range_ _kindIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 372, column 9) _kindOidGam = gamUnion _idDefOccGamKind _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 775, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _kindIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 775, column 9) _idDpdMp = idToOccL2DpdMp (gamKeys _idDefOccGam) _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 778, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_kindIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 16, column 9) _refnames = map (hsnSetLevQual _lhsInmLev _lhsImoduleNm) names_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 137, column 9) _idOccDefs = [ IdOcc n IdOcc_Type | n <- _refnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 22, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 53, column 9) _pp = ppCommas' names_ >#< "::" >#< _kindIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 105, column 9) _mkEHSig = \n -> rngLift range_ EH.Decl_KiSig n _kindIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 106, column 9) _lhsOeh = map _mkEHSig _refnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _kindIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _kindIppWrap -- copy rule (up) _lhsOgUniq = _kindIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _kindItopInstanceNmL -- copy rule (down) _kindOgUniq = _lhsIgUniq -- copy rule (from local) _kindOnmLev = _nmLev -- copy rule (down) _kindOopts = _lhsIopts -- copy rule (from local) _kindOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _kindOtopInstanceNmL = _lhsItopInstanceNmL ( _kindIconNm,_kindIeh,_kindIerrSq,_kindIfreeTvarS,_kindIgUniq,_kindIidUseOccGam,_kindIpp,_kindIppWrap,_kindItopInstanceNmL,_kindIundefOccGam) = kind_ _kindOgUniq _kindOidGam _kindOnmLev _kindOopts _kindOpatchEhNmInInstance _kindOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_ForeignImport :: Range -> FFIWay -> (Maybe String) -> (Maybe String) -> Name -> T_Type -> T_Declaration sem_Declaration_ForeignImport range_ callconvention_ safety_ importname_ name_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _typeOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 195, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 199, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Foreign _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 366, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 780, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _typeIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 780, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 783, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typeIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 20, column 9) _refname = hsnSetLevQual _lhsInmLev _lhsImoduleNm name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 157, column 9) _idOccDef = IdOcc _refname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 157, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 24, column 9) _errFFIWay = if maybe False (callconvention_ `elem`) $ fmap targiAllowedFFI $ Map.lookup (ehcOptTarget _lhsIopts) allTargetInfoMp then [] else [rngLift range_ Err_IllegalFFIWay callconvention_] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 147, column 9) _errSq = Seq.unions [ Seq.fromList (rngLift range_ mkNestErr (pp ("Parse of foreign entity '" ++ _nmForParse ++ "'")) _entErrs) , _typeIerrSq ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 55, column 9) _pp = "foreign import" >#< callconvention_ >#< safety_ >#< maybe empty (pp.show) importname_ >#< name_ >#< "::" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 108, column 9) _eh = rngLift range_ EH.Decl_FFI callconvention_ (maybe "safe" id safety_) _ent _refname _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 109, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 328, column 9) _nmForParse = maybe "" id importname_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 329, column 25) (_ent,_entErrs) = parseForeignEnt ForeignDirection_Import callconvention_ (Just $ show name_) _nmForParse -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (from local) _typeOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_ForeignExport :: Range -> FFIWay -> (Maybe String) -> Name -> T_Type -> T_Declaration sem_Declaration_ForeignExport range_ callconvention_ exportname_ name_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _typeOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 195, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 199, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Foreign _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 366, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 670, column 29) (_refname,_,_idUseOccGamExport,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 826, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamExport,_typeIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 826, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 830, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typeIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 32, column 9) _exportrefname = hsnUniqify HsNameUniqifier_FFE name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 160, column 9) _idOccDef = IdOcc _exportrefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 160, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 24, column 9) _errFFIWay = if maybe False (callconvention_ `elem`) $ fmap targiAllowedFFI $ Map.lookup (ehcOptTarget _lhsIopts) allTargetInfoMp then [] else [rngLift range_ Err_IllegalFFIWay callconvention_] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 151, column 9) _errSq = Seq.unions [ Seq.fromList _errIdUse , Seq.fromList (rngLift range_ mkNestErr (pp ("Parse of foreign entity '" ++ _nmForParse ++ "'")) _entErrs) , _typeIerrSq ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 83, column 9) _pp = "foreign export" >#< callconvention_ >#< exportname_ >#< name_ >#< "::" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 141, column 9) _nmForParse = maybe "" id exportname_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 142, column 25) (_ent,_entErrs) = parseForeignEnt ForeignDirection_Export callconvention_ (Just $ show name_) _nmForParse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 141, column 9) _eh = rngLift range_ EH.Decl_FFE _exportrefname callconvention_ _ent (rngLift range_ EH.Expr_Var _refname) _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 145, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (from local) _typeOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Class :: Range -> T_ContextItems -> T_TypeLeftHandSide -> T_FunctionalDependencies -> T_MaybeDeclarations -> T_Declaration sem_Declaration_Class range_ context_ typelefthandside_ dependencies_ where_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOtopInstanceNmL :: ([HsName]) _contextOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _contextOfixityGam :: FixityGam _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _dependenciesOfixityGam :: FixityGam _dependenciesOgUniq :: UID _dependenciesOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _dependenciesOidGam :: IdDefOccGam _dependenciesOmoduleNm :: HsName _dependenciesOnmLev :: NmLev _dependenciesOopts :: EHCOpts _dependenciesOpatchEhNmInInstance :: PatchEhNmInInstance _dependenciesOpragmas :: (Set.Set Pragma.Pragma) _dependenciesOtopInstanceNmL :: ([HsName]) _whereOcaseId :: UID _whereOfixityGam :: FixityGam _whereOgUniq :: UID _whereOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _whereOidGam :: IdDefOccGam _whereOmoduleNm :: HsName _whereOnmLev :: NmLev _whereOopts :: EHCOpts _whereOpatchEhNmInInstance :: PatchEhNmInInstance _whereOpragmas :: (Set.Set Pragma.Pragma) _whereOtopInstanceNmL :: ([HsName]) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam _typelefthandsideIeh :: ([EH.TyVar]) _typelefthandsideIerrSq :: ErrSq _typelefthandsideIfreeTvarS :: HsNameS _typelefthandsideIgUniq :: UID _typelefthandsideIidDefOccGam :: IdDefOccGam _typelefthandsideIidOccDefs :: ([IdOcc]) _typelefthandsideIidUseOccGam :: IdUseOccGam _typelefthandsideIname :: Name _typelefthandsideIpp :: PP_Doc _typelefthandsideIppWrap :: (PP_Doc -> PP_Doc) _typelefthandsideIrange :: Range _typelefthandsideItopInstanceNmL :: ([HsName]) _typelefthandsideItypevariables :: Names _typelefthandsideIundefOccGam :: IdUseOccGam _dependenciesIeh :: ([EH.FuncDep]) _dependenciesIerrSq :: ErrSq _dependenciesIgUniq :: UID _dependenciesIgathFixityGam :: FixityGam _dependenciesIgathPragmas :: (Set.Set Pragma.Pragma) _dependenciesIidDefOccGam :: IdDefOccGam _dependenciesIidDpdMp :: IdDpdMp _dependenciesIidOccDefs :: ([IdOcc]) _dependenciesIidTySigDefOccGam :: IdDefOccGam _dependenciesIidUseOccGam :: IdUseOccGam _dependenciesIneedsError :: Bool _dependenciesIpp :: PP_Doc _dependenciesIppWrap :: (PP_Doc -> PP_Doc) _dependenciesItopInstanceNmL :: ([HsName]) _dependenciesIundefOccGam :: IdUseOccGam _whereIeh :: (Maybe [EH.Decl]) _whereIerrSq :: ErrSq _whereIgUniq :: UID _whereIgathFixityGam :: FixityGam _whereIgathPragmas :: (Set.Set Pragma.Pragma) _whereIidDefOccGam :: IdDefOccGam _whereIidDpdMp :: IdDpdMp _whereIidOccDefs :: ([IdOcc]) _whereIidTySigDefOccGam :: IdDefOccGam _whereIidUseOccGam :: IdUseOccGam _whereIneedsError :: Bool _whereIpp :: PP_Doc _whereIppWrap :: (PP_Doc -> PP_Doc) _whereItopInstanceNmL :: ([HsName]) _whereIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 167, column 9) _idDefOccGamType = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 167, column 9) _idDefOccGamSigAsVar = _whereIidTySigDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 167, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Class_Def _eh _ehInst) [_idOccDef] `gamUnion` _idDefOccGamSigAsVar -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 191, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 375, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 375, column 9) _idDefOccGamInstForClass = fst $ gamPartition (\_ d -> case doccAsp d of {IdAsp_Inst_Def _ n | n == _classrefname -> True ; _ -> False}) $ _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 690, column 29) (_,_,_idUseOccGamExtra,_errIdUseExtra) = mkUseOccGam _lhsIopts _lhsIidGam _extranames IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 785, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [ _contextIidUseOccGam,_whereIidUseOccGam , _idUseOccGamExtra ]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 785, column 9) _idDpdMp = idDpdMpUnions [ idToOccL2DpdMp [_idOccDef] _idUseHereOccL , idToOccGam2DpdMp [_idOccDef] _idDefOccGamSigAsVar , idFrOccGam2DpdMp _idDefOccGamSigAsVar [_idOccDef] , idFrOccGam2DpdMp _idDefOccGamSigAsVar (gamKeys _idDefOccGamInstForClass) , _whereIidDpdMp ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 798, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_whereIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1036, column 29) (_,_ehReorderedDecls,_errReorder) = mkIdOccSccEH range_ False _whereIidDefOccGam Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 22, column 9) _instancerefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm $ maybe _instancename id _mbPrevInstancename -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 26, column 9) _classrefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm _typelefthandsideIname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 96, column 17) _extranames = [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 139, column 9) _idOccDef = IdOcc _classrefname IdOcc_Class -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 139, column 9) _idOccDefVal = IdOcc _instancerefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 139, column 9) _idOccDefsSig = _whereIidOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 139, column 9) _idOccDefs = [_idOccDef] ++ _idOccDefsSig -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 235, column 9) _instancename = hsnUniqifyUID HsNameUniqifier_Class _lUniq (mkHNm _typelefthandsideIname) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 24, column 9) _nmLev = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 131, column 9) _errDupIntro = idDefOccGamCheckDupNames _idDefOccGamType -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 129, column 9) _errSq = Seq.unions [ Seq.fromList _errDupIntro, Seq.fromList _errReorder, _contextIerrSq, _typelefthandsideIerrSq , _dependenciesIerrSq , Seq.fromList _errIdUseExtra , _whereIerrSq ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 57, column 9) _pp = "class" >#< ppParens _contextIpp >#< "=>" >#< _typelefthandsideIpp >#< "|" >#< _dependenciesIpp >-< indent 2 _whereIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 111, column 25) (_eh,_ehInst) = let h = rngLift range_ EH.TyExpr_Pred $ rngLift range_ EH.PrExpr_Class _classrefname (map (rngLift range_ EH.TyExpr_Var) _typelefthandsideItypevariables) c = map (rngLift range_ EH.TyExpr_Pred) _contextIeh a = appArr c h (vals,sigs) = partition EH.ehIsDeclVal $ concat _ehReorderedDecls in ( rngLift range_ EH.Decl_Class a _dependenciesIeh (Just _instancerefname) sigs _generDerivInfoL , rngLift range_ EH.Decl_Instance (Just (_instancerefname,False)) InstDefault a vals ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 122, column 9) _lhsOeh = [_eh,_ehInst] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 293, column 9) (_mbPrevInstancename,_lhsOtopInstanceNmL) = extrTopInstanceNm _lhsItopInstanceNmL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 323, column 9) _generDerivInfoL = Map.findWithDefault [] _classrefname _lhsIgenerDerivMp -- -- generated by the unique rule mechanism. (_contextOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _dependenciesIgathFixityGam `gamAddGam` _whereIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _dependenciesIgathPragmas `Set.union` _whereIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _dependenciesIidTySigDefOccGam `gamAddGam` _whereIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = _dependenciesIneedsError || _whereIneedsError -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _contextIppWrap . _typelefthandsideIppWrap . _dependenciesIppWrap . _whereIppWrap -- copy rule (up) _lhsOgUniq = _whereIgUniq -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (from local) _contextOidGam = _idGam -- copy rule (from local) _contextOnmLev = _nmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (from local) _contextOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _contextOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _typelefthandsideOfixityGam = _lhsIfixityGam -- copy rule (chain) _typelefthandsideOgUniq = _contextIgUniq -- copy rule (from local) _typelefthandsideOidGam = _idGam -- copy rule (down) _typelefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (from local) _typelefthandsideOnmLev = _nmLev -- copy rule (down) _typelefthandsideOopts = _lhsIopts -- copy rule (from local) _typelefthandsideOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _typelefthandsideOtopInstanceNmL = _contextItopInstanceNmL -- copy rule (down) _dependenciesOfixityGam = _lhsIfixityGam -- copy rule (chain) _dependenciesOgUniq = _typelefthandsideIgUniq -- copy rule (down) _dependenciesOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _dependenciesOidGam = _idGam -- copy rule (down) _dependenciesOmoduleNm = _lhsImoduleNm -- copy rule (from local) _dependenciesOnmLev = _nmLev -- copy rule (down) _dependenciesOopts = _lhsIopts -- copy rule (from local) _dependenciesOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _dependenciesOpragmas = _lhsIpragmas -- copy rule (chain) _dependenciesOtopInstanceNmL = _typelefthandsideItopInstanceNmL -- copy rule (down) _whereOcaseId = _lhsIcaseId -- copy rule (down) _whereOfixityGam = _lhsIfixityGam -- copy rule (chain) _whereOgUniq = _dependenciesIgUniq -- copy rule (down) _whereOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _whereOidGam = _idGam -- copy rule (down) _whereOmoduleNm = _lhsImoduleNm -- copy rule (from local) _whereOnmLev = _nmLev -- copy rule (down) _whereOopts = _lhsIopts -- copy rule (from local) _whereOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _whereOpragmas = _lhsIpragmas -- copy rule (chain) _whereOtopInstanceNmL = _dependenciesItopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL ( _dependenciesIeh,_dependenciesIerrSq,_dependenciesIgUniq,_dependenciesIgathFixityGam,_dependenciesIgathPragmas,_dependenciesIidDefOccGam,_dependenciesIidDpdMp,_dependenciesIidOccDefs,_dependenciesIidTySigDefOccGam,_dependenciesIidUseOccGam,_dependenciesIneedsError,_dependenciesIpp,_dependenciesIppWrap,_dependenciesItopInstanceNmL,_dependenciesIundefOccGam) = dependencies_ _dependenciesOfixityGam _dependenciesOgUniq _dependenciesOgenerDerivMp _dependenciesOidGam _dependenciesOmoduleNm _dependenciesOnmLev _dependenciesOopts _dependenciesOpatchEhNmInInstance _dependenciesOpragmas _dependenciesOtopInstanceNmL ( _whereIeh,_whereIerrSq,_whereIgUniq,_whereIgathFixityGam,_whereIgathPragmas,_whereIidDefOccGam,_whereIidDpdMp,_whereIidOccDefs,_whereIidTySigDefOccGam,_whereIidUseOccGam,_whereIneedsError,_whereIpp,_whereIppWrap,_whereItopInstanceNmL,_whereIundefOccGam) = where_ _whereOcaseId _whereOfixityGam _whereOgUniq _whereOgenerDerivMp _whereOidGam _whereOmoduleNm _whereOnmLev _whereOopts _whereOpatchEhNmInInstance _whereOpragmas _whereOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Instance :: Range -> InstVariant -> MaybeName -> Bool -> T_ContextItems -> T_Type -> T_MaybeDeclarations -> T_Declaration sem_Declaration_Instance range_ instVariant_ maybeinstancename_ useimplicitly_ context_ type_ where_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOundefOccGam :: IdUseOccGam _whereOpatchEhNmInInstance :: PatchEhNmInInstance _lhsOeh :: ([EH.Decl]) _lhsOtopInstanceNmL :: ([HsName]) _contextOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _contextOfixityGam :: FixityGam _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _whereOcaseId :: UID _whereOfixityGam :: FixityGam _whereOgUniq :: UID _whereOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _whereOidGam :: IdDefOccGam _whereOmoduleNm :: HsName _whereOnmLev :: NmLev _whereOopts :: EHCOpts _whereOpragmas :: (Set.Set Pragma.Pragma) _whereOtopInstanceNmL :: ([HsName]) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam _whereIeh :: (Maybe [EH.Decl]) _whereIerrSq :: ErrSq _whereIgUniq :: UID _whereIgathFixityGam :: FixityGam _whereIgathPragmas :: (Set.Set Pragma.Pragma) _whereIidDefOccGam :: IdDefOccGam _whereIidDpdMp :: IdDpdMp _whereIidOccDefs :: ([IdOcc]) _whereIidTySigDefOccGam :: IdDefOccGam _whereIidUseOccGam :: IdUseOccGam _whereIneedsError :: Bool _whereIpp :: PP_Doc _whereIppWrap :: (PP_Doc -> PP_Doc) _whereItopInstanceNmL :: ([HsName]) _whereIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 175, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 175, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Inst_Def _eh _classrefname) [_idOccDef] `gamUnion` mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var [_idOccDefVal] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 379, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 623, column 29) (_classrefname,_,_idUseOccGamInst,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [_typeIconNm] IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 800, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamInst,_contextIidUseOccGam,_typeIidUseOccGam ,_whereIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 800, column 9) _idDpdMp = idDpdMpUnions [ idToOccL2DpdMp [_idOccDef] _idUseHereOccL , idDpdMpSingleton _idOccDefVal _idOccDef , _whereIidDpdMp ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 808, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_whereIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1036, column 29) (_,_ehReorderedDecls,_errReorder) = mkIdOccSccEH range_ False _whereIidDefOccGam Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1071, column 9) _whereOpatchEhNmInInstance = hsnSetQual (panicJust "Declaration.Instance.patchEhNmInInstance" $ hsnQualifier _classrefname) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 22, column 9) _instancerefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm $ maybe _instancename id _mbPrevInstancename -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 144, column 9) _idOccDef = IdOcc _instancerefname IdOcc_Inst -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 144, column 9) _idOccDefVal = IdOcc _instancerefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 144, column 9) _idOccDefs = [_idOccDef,_idOccDefVal] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 233, column 9) _instancename = maybe (hsnUniqifyUID HsNameUniqifier_ClassDict _lUniq (_typeIconNm)) id maybeinstancename_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 26, column 9) _nmLev = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 135, column 9) _errSq = Seq.firstNotEmpty [Seq.fromList _errIdUse, _contextIerrSq, _typeIerrSq, _whereIerrSq, Seq.fromList _errReorder] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 61, column 9) _pp = "instance" >|< ppInstNm useimplicitly_ maybeinstancename_ >#< ppParens _contextIpp >#< "=>" >#< _typeIpp >-< indent 2 _whereIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 124, column 9) _eh = let h = rngLift range_ EH.TyExpr_Pred $ panicJust "HS.ToEH.Instance.eh.type.ehMbAsPr" _typeIehMbAsPr c = map (rngLift range_ EH.TyExpr_Pred) _contextIeh in rngLift range_ EH.Decl_Instance (Just (_instancerefname,useimplicitly_)) instVariant_ (appArr c h) (concat _ehReorderedDecls) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 128, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 182, column 9) _isAsPred = True -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 293, column 9) (_mbPrevInstancename,_lhsOtopInstanceNmL) = extrTopInstanceNm _lhsItopInstanceNmL -- -- generated by the unique rule mechanism. (_contextOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _whereIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _whereIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _whereIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = _whereIneedsError -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _contextIppWrap . _typeIppWrap . _whereIppWrap -- copy rule (up) _lhsOgUniq = _whereIgUniq -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (from local) _contextOidGam = _idGam -- copy rule (from local) _contextOnmLev = _nmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (down) _contextOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _contextOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (chain) _typeOgUniq = _contextIgUniq -- copy rule (from local) _typeOidGam = _idGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (from local) _typeOnmLev = _nmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _typeOtopInstanceNmL = _contextItopInstanceNmL -- copy rule (down) _whereOcaseId = _lhsIcaseId -- copy rule (down) _whereOfixityGam = _lhsIfixityGam -- copy rule (chain) _whereOgUniq = _typeIgUniq -- copy rule (down) _whereOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _whereOidGam = _idGam -- copy rule (down) _whereOmoduleNm = _lhsImoduleNm -- copy rule (from local) _whereOnmLev = _nmLev -- copy rule (down) _whereOopts = _lhsIopts -- copy rule (down) _whereOpragmas = _lhsIpragmas -- copy rule (chain) _whereOtopInstanceNmL = _typeItopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL ( _whereIeh,_whereIerrSq,_whereIgUniq,_whereIgathFixityGam,_whereIgathPragmas,_whereIidDefOccGam,_whereIidDpdMp,_whereIidOccDefs,_whereIidTySigDefOccGam,_whereIidUseOccGam,_whereIneedsError,_whereIpp,_whereIppWrap,_whereItopInstanceNmL,_whereIundefOccGam) = where_ _whereOcaseId _whereOfixityGam _whereOgUniq _whereOgenerDerivMp _whereOidGam _whereOmoduleNm _whereOnmLev _whereOopts _whereOpatchEhNmInInstance _whereOpragmas _whereOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_InstanceUseImplicitly :: Range -> T_Expression -> Name -> T_Types -> T_Declaration sem_Declaration_InstanceUseImplicitly range_ expression_ name_ types_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOtopInstanceNmL :: ([HsName]) _expressionOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _typesOfixityGam :: FixityGam _typesOgUniq :: UID _typesOidGam :: IdDefOccGam _typesOisAsPred :: Bool _typesOnmLev :: NmLev _typesOopts :: EHCOpts _typesOpatchEhNmInInstance :: PatchEhNmInInstance _typesOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam _typesIeh :: ([EH.TyExpr]) _typesIerrSq :: ErrSq _typesIfreeTvarS :: HsNameS _typesIgUniq :: UID _typesIidUseOccGam :: IdUseOccGam _typesIpp :: PP_Doc _typesIppL :: ([PP_Doc]) _typesIppWrap :: (PP_Doc -> PP_Doc) _typesItopInstanceNmL :: ([HsName]) _typesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 180, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Inst_Def _eh _classrefname) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 627, column 29) (_classrefname,_,_idUseOccGamInst,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 810, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamInst,_typesIidUseOccGam,_expressionIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 810, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 22, column 9) _instancerefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm $ maybe _instancename id _mbPrevInstancename -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 148, column 9) _idOccDef = IdOcc _instancerefname IdOcc_Inst -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 148, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 237, column 9) _instancename = mkHNm _lUniq -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 24, column 9) _nmLev = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 137, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _expressionIerrSq, _typesIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 65, column 9) _pp = "instance" >#< _expressionIpp >#< "<:" >#< name_ >#< ppSpaces _typesIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 130, column 9) _eh = let h = rngLift range_ EH.PrExpr_Class _classrefname _typesIeh in rngLift range_ EH.Decl_InstanceIntro (Just _instancerefname) _expressionIeh h -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 132, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 293, column 9) (_mbPrevInstancename,_lhsOtopInstanceNmL) = extrTopInstanceNm _lhsItopInstanceNmL -- -- generated by the unique rule mechanism. (_expressionOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap . _typesIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _undefOccGam -- copy rule (up) _lhsOgUniq = _typesIgUniq -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (from local) _expressionOnmLev = _nmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (from local) _expressionOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _typesOfixityGam = _lhsIfixityGam -- copy rule (chain) _typesOgUniq = _expressionIgUniq -- copy rule (down) _typesOidGam = _lhsIidGam -- copy rule (from local) _typesOisAsPred = _isAsPred -- copy rule (from local) _typesOnmLev = _nmLev -- copy rule (down) _typesOopts = _lhsIopts -- copy rule (from local) _typesOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _typesOtopInstanceNmL = _expressionItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL ( _typesIeh,_typesIerrSq,_typesIfreeTvarS,_typesIgUniq,_typesIidUseOccGam,_typesIpp,_typesIppL,_typesIppWrap,_typesItopInstanceNmL,_typesIundefOccGam) = types_ _typesOfixityGam _typesOgUniq _typesOidGam _typesOisAsPred _typesOnmLev _typesOopts _typesOpatchEhNmInInstance _typesOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Default :: Range -> MaybeName -> T_Types -> T_Declaration sem_Declaration_Default range_ name_ types_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _typesOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typesOfixityGam :: FixityGam _typesOidGam :: IdDefOccGam _typesOisAsPred :: Bool _typesOnmLev :: NmLev _typesOopts :: EHCOpts _typesOpatchEhNmInInstance :: PatchEhNmInInstance _typesOtopInstanceNmL :: ([HsName]) _typesIeh :: ([EH.TyExpr]) _typesIerrSq :: ErrSq _typesIfreeTvarS :: HsNameS _typesIgUniq :: UID _typesIidUseOccGam :: IdUseOccGam _typesIpp :: PP_Doc _typesIppL :: ([PP_Doc]) _typesIppWrap :: (PP_Doc -> PP_Doc) _typesItopInstanceNmL :: ([HsName]) _typesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Dflt_Def _eh _ignoredecl) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 630, column 29) (_classrefname,_classrefnames,_idUseOccGamDflt,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam (catMaybes [name_]) IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 815, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamDflt,_typesIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 815, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 819, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typesIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 151, column 9) _idOccDef = IdOcc _defaultname IdOcc_Dflt -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 151, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 239, column 9) _defaultname = mkHNm _lUniq -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 24, column 9) _nmLev = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 139, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _typesIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 67, column 9) _pp = "default" >#< maybe empty pp name_ >#< ppParensCommas _typesIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 134, column 9) _ignoredecl = null _classrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 134, column 9) _eh = rngLift range_ EH.Decl_Default _classrefname _typesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 136, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- -- generated by the unique rule mechanism. (_typesOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typesIppWrap -- copy rule (up) _lhsOgUniq = _typesIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typesItopInstanceNmL -- copy rule (down) _typesOfixityGam = _lhsIfixityGam -- copy rule (down) _typesOidGam = _lhsIidGam -- copy rule (from local) _typesOisAsPred = _isAsPred -- copy rule (from local) _typesOnmLev = _nmLev -- copy rule (down) _typesOopts = _lhsIopts -- copy rule (from local) _typesOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _typesOtopInstanceNmL = _lhsItopInstanceNmL ( _typesIeh,_typesIerrSq,_typesIfreeTvarS,_typesIgUniq,_typesIidUseOccGam,_typesIpp,_typesIppL,_typesIppWrap,_typesItopInstanceNmL,_typesIundefOccGam) = types_ _typesOfixityGam _typesOgUniq _typesOidGam _typesOisAsPred _typesOnmLev _typesOopts _typesOpatchEhNmInInstance _typesOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Type :: Range -> T_TypeLeftHandSide -> T_Type -> T_Declaration sem_Declaration_Type range_ typelefthandside_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typelefthandsideIeh :: ([EH.TyVar]) _typelefthandsideIerrSq :: ErrSq _typelefthandsideIfreeTvarS :: HsNameS _typelefthandsideIgUniq :: UID _typelefthandsideIidDefOccGam :: IdDefOccGam _typelefthandsideIidOccDefs :: ([IdOcc]) _typelefthandsideIidUseOccGam :: IdUseOccGam _typelefthandsideIname :: Name _typelefthandsideIpp :: PP_Doc _typelefthandsideIppWrap :: (PP_Doc -> PP_Doc) _typelefthandsideIrange :: Range _typelefthandsideItopInstanceNmL :: ([HsName]) _typelefthandsideItypevariables :: Names _typelefthandsideIundefOccGam :: IdUseOccGam _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 184, column 9) _idDefOccGamType = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 184, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 191, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 370, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 821, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _typeIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 821, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 824, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typeIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 28, column 9) _typerefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm _typelefthandsideIname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 154, column 9) _idOccDef = IdOcc _typerefname IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 154, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 29, column 9) _nmLev = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 141, column 9) _errDupIntro = idDefOccGamCheckDupNames _idDefOccGamType -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 143, column 9) _errSq = Seq.unions [ Seq.fromList _errDupIntro, _typelefthandsideIerrSq, _typeIerrSq ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 69, column 9) _pp = "type" >#< _typelefthandsideIpp >#< "=" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 138, column 9) _eh = rngLift range_ EH.Decl_Type _typerefname (foldr (rngLift range_ EH.TyExpr_Lam) _typeIeh _typelefthandsideItypevariables) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 139, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typelefthandsideIppWrap . _typeIppWrap -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _typelefthandsideOfixityGam = _lhsIfixityGam -- copy rule (down) _typelefthandsideOgUniq = _lhsIgUniq -- copy rule (from local) _typelefthandsideOidGam = _idGam -- copy rule (down) _typelefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (from local) _typelefthandsideOnmLev = _nmLev -- copy rule (down) _typelefthandsideOopts = _lhsIopts -- copy rule (from local) _typelefthandsideOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _typelefthandsideOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (chain) _typeOgUniq = _typelefthandsideIgUniq -- copy rule (from local) _typeOidGam = _idGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (from local) _typeOnmLev = _nmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (from local) _typeOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _typeOtopInstanceNmL = _typelefthandsideItopInstanceNmL ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Pragma :: Range -> T_Pragma -> T_Declaration sem_Declaration_Pragma range_ pragma_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _pragmaOgUniq :: UID _pragmaOidGam :: IdDefOccGam _pragmaOnmLev :: NmLev _pragmaOopts :: EHCOpts _pragmaOpatchEhNmInInstance :: PatchEhNmInInstance _pragmaOtopInstanceNmL :: ([HsName]) _pragmaIerrSq :: ErrSq _pragmaIgUniq :: UID _pragmaIgathPragmas :: (Set.Set Pragma.Pragma) _pragmaIidUseOccGam :: IdUseOccGam _pragmaIpp :: PP_Doc _pragmaIppWrap :: (PP_Doc -> PP_Doc) _pragmaItopInstanceNmL :: ([HsName]) _pragmaIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 75, column 9) _pp = "{-#" >#< _pragmaIpp >#< "#-}" -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 147, column 9) _eh = undefined -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 148, column 9) _lhsOeh = [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _pragmaIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _pragmaIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _pragmaIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _pragmaIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _pragmaIundefOccGam -- copy rule (up) _lhsOgUniq = _pragmaIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _pragmaItopInstanceNmL -- copy rule (down) _pragmaOgUniq = _lhsIgUniq -- copy rule (down) _pragmaOidGam = _lhsIidGam -- copy rule (down) _pragmaOnmLev = _lhsInmLev -- copy rule (down) _pragmaOopts = _lhsIopts -- copy rule (from local) _pragmaOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _pragmaOtopInstanceNmL = _lhsItopInstanceNmL ( _pragmaIerrSq,_pragmaIgUniq,_pragmaIgathPragmas,_pragmaIidUseOccGam,_pragmaIpp,_pragmaIppWrap,_pragmaItopInstanceNmL,_pragmaIundefOccGam) = pragma_ _pragmaOgUniq _pragmaOidGam _pragmaOnmLev _pragmaOopts _pragmaOpatchEhNmInInstance _pragmaOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declaration_Module :: Range -> MaybeName -> T_MaybeExports -> T_Declaration sem_Declaration_Module range_ name_ exports_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _exportsOfixityGam :: FixityGam _exportsOgUniq :: UID _exportsOidGam :: IdDefOccGam _exportsOisMainMod :: Bool _exportsOisTopMod :: Bool _exportsOmoduleNm :: HsName _exportsOnmLev :: NmLev _exportsOopts :: EHCOpts _exportsOpatchEhNmInInstance :: PatchEhNmInInstance _exportsOtopInstanceNmL :: ([HsName]) _exportsIerrSq :: ErrSq _exportsIgUniq :: UID _exportsIgathFixityGam :: FixityGam _exportsIidUseOccGam :: IdUseOccGam _exportsIpp :: PP_Doc _exportsIppWrap :: (PP_Doc -> PP_Doc) _exportsItopInstanceNmL :: ([HsName]) _exportsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1077, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 147, column 9) _eh = undefined -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 148, column 9) _lhsOeh = [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 184, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 222, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 253, column 9) _isMainMod = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 253, column 9) _isTopMod = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _exportsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _exportsIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _exportsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _exportsIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _exportsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _exportsIundefOccGam -- copy rule (up) _lhsOgUniq = _exportsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _exportsItopInstanceNmL -- copy rule (down) _exportsOfixityGam = _lhsIfixityGam -- copy rule (down) _exportsOgUniq = _lhsIgUniq -- copy rule (down) _exportsOidGam = _lhsIidGam -- copy rule (from local) _exportsOisMainMod = _isMainMod -- copy rule (from local) _exportsOisTopMod = _isTopMod -- copy rule (down) _exportsOmoduleNm = _lhsImoduleNm -- copy rule (down) _exportsOnmLev = _lhsInmLev -- copy rule (down) _exportsOopts = _lhsIopts -- copy rule (from local) _exportsOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _exportsOtopInstanceNmL = _lhsItopInstanceNmL ( _exportsIerrSq,_exportsIgUniq,_exportsIgathFixityGam,_exportsIidUseOccGam,_exportsIpp,_exportsIppWrap,_exportsItopInstanceNmL,_exportsIundefOccGam) = exports_ _exportsOfixityGam _exportsOgUniq _exportsOidGam _exportsOisMainMod _exportsOisTopMod _exportsOmoduleNm _exportsOnmLev _exportsOopts _exportsOpatchEhNmInInstance _exportsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Declarations ------------------------------------------------ {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.Decl] errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idTySigDefOccGam : IdDefOccGam idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Declaration child tl : Declarations alternative Nil: -} -- cata sem_Declarations :: Declarations -> T_Declarations sem_Declarations list = (Prelude.foldr sem_Declarations_Cons sem_Declarations_Nil (Prelude.map sem_Declaration list)) -- semantic domain type T_Declarations = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.Decl]),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,([IdOcc]),IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Declarations_Cons :: T_Declaration -> T_Declarations -> T_Declarations sem_Declarations_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: ([EH.Decl]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIgathPragmas :: (Set.Set Pragma.Pragma) _hdIidDefOccGam :: IdDefOccGam _hdIidDpdMp :: IdDpdMp _hdIidOccDefs :: ([IdOcc]) _hdIidTySigDefOccGam :: IdDefOccGam _hdIidUseOccGam :: IdUseOccGam _hdIneedsError :: Bool _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.Decl]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIgathPragmas :: (Set.Set Pragma.Pragma) _tlIidDefOccGam :: IdDefOccGam _tlIidDpdMp :: IdDpdMp _tlIidOccDefs :: ([IdOcc]) _tlIidTySigDefOccGam :: IdDefOccGam _tlIidUseOccGam :: IdUseOccGam _tlIneedsError :: Bool _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 66, column 28) _lhsOeh = _hdIeh ++ _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _hdIgathFixityGam `gamAddGam` _tlIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _hdIgathPragmas `Set.union` _tlIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _hdIidDpdMp `idDpdMpUnion` _tlIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _hdIidTySigDefOccGam `gamAddGam` _tlIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = _hdIneedsError || _tlIneedsError -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIgathPragmas,_hdIidDefOccGam,_hdIidDpdMp,_hdIidOccDefs,_hdIidTySigDefOccGam,_hdIidUseOccGam,_hdIneedsError,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIgathPragmas,_tlIidDefOccGam,_tlIidDpdMp,_tlIidOccDefs,_tlIidTySigDefOccGam,_tlIidUseOccGam,_tlIneedsError,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Declarations_Nil :: T_Declarations sem_Declarations_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 66, column 28) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Deriving ---------------------------------------------------- {- visit 0: inherited attributes: ehDataTyExpr : EH.TyExpr fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam idOccDefData : IdOcc moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idTySigDefOccGam : IdDefOccGam idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Deriving: child range : {Range} child maybeinstancename : {MaybeName} child useimplicitly : {Bool} child name : {Name} visit 0: local idDefOccGam : _ local refname : _ local idUseOccGam : _ local errIdUse : _ local instancerefname : _ local idOccDef : _ local idOccDefVal : _ local idOccDefs : _ local instancename : _ local errSq : _ local pp : _ local eh : _ local mbPrevInstancename : _ local lUniq : {UID} -} -- cata sem_Deriving :: Deriving -> T_Deriving sem_Deriving (Deriving_Deriving _range _maybeinstancename _useimplicitly _name) = (sem_Deriving_Deriving _range _maybeinstancename _useimplicitly _name) -- semantic domain type T_Deriving = (EH.TyExpr) -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> IdOcc -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,([IdOcc]),IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Deriving_Deriving :: Range -> MaybeName -> Bool -> Name -> T_Deriving sem_Deriving_Deriving range_ maybeinstancename_ useimplicitly_ name_ = (\ _lhsIehDataTyExpr _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsIidOccDefData _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidDpdMp :: IdDpdMp _lhsOtopInstanceNmL :: ([HsName]) _lhsOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 264, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Inst_Def _eh _refname) [_idOccDef] `gamUnion` mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var [_idOccDefVal] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 635, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 854, column 9) _lhsOidDpdMp = idDpdMpUnions [ idDpdMpSingleton _idOccDef _lhsIidOccDefData , idDpdMpSingleton _idOccDefVal _idOccDef ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 37, column 9) _instancerefname = hsnSetLevQual _lhsInmLev _lhsImoduleNm $ maybe _instancename id _mbPrevInstancename -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 192, column 9) _idOccDef = IdOcc _instancerefname IdOcc_Inst -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 192, column 9) _idOccDefVal = IdOcc _instancerefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 192, column 9) _idOccDefs = [_idOccDef,_idOccDefVal] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 247, column 9) _instancename = maybe (mkHNm _lUniq) id maybeinstancename_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 162, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 87, column 9) _pp = ppInstNm useimplicitly_ maybeinstancename_ >#< name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 168, column 9) _eh = let h = rngLift range_ EH.TyExpr_Pred $ rngLift range_ EH.PrExpr_Class _refname [rngLift range_ EH.TyExpr_Parens _lhsIehDataTyExpr] in rngLift range_ EH.Decl_Instance (Just (_instancerefname,useimplicitly_)) (InstDeriving InstDerivingFrom_Datatype) h [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 298, column 9) (_mbPrevInstancename,_lhsOtopInstanceNmL) = extrTopInstanceNm _lhsItopInstanceNmL -- -- generated by the unique rule mechanism. (_lhsOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Derivings --------------------------------------------------- {- visit 0: inherited attributes: ehDataTyExpr : EH.TyExpr fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam idOccDefData : IdOcc moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idTySigDefOccGam : IdDefOccGam idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Deriving child tl : Derivings alternative Nil: -} -- cata sem_Derivings :: Derivings -> T_Derivings sem_Derivings list = (Prelude.foldr sem_Derivings_Cons sem_Derivings_Nil (Prelude.map sem_Deriving list)) -- semantic domain type T_Derivings = (EH.TyExpr) -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> IdOcc -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,([IdOcc]),IdDefOccGam,IdUseOccGam,Bool,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Derivings_Cons :: T_Deriving -> T_Derivings -> T_Derivings sem_Derivings_Cons hd_ tl_ = (\ _lhsIehDataTyExpr _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsIidOccDefData _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOehDataTyExpr :: (EH.TyExpr) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOidOccDefData :: IdOcc _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOehDataTyExpr :: (EH.TyExpr) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOidOccDefData :: IdOcc _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIgathPragmas :: (Set.Set Pragma.Pragma) _hdIidDefOccGam :: IdDefOccGam _hdIidDpdMp :: IdDpdMp _hdIidOccDefs :: ([IdOcc]) _hdIidTySigDefOccGam :: IdDefOccGam _hdIidUseOccGam :: IdUseOccGam _hdIneedsError :: Bool _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIgathPragmas :: (Set.Set Pragma.Pragma) _tlIidDefOccGam :: IdDefOccGam _tlIidDpdMp :: IdDpdMp _tlIidOccDefs :: ([IdOcc]) _tlIidTySigDefOccGam :: IdDefOccGam _tlIidUseOccGam :: IdUseOccGam _tlIneedsError :: Bool _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 528, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _hdIgathFixityGam `gamAddGam` _tlIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _hdIgathPragmas `Set.union` _tlIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _hdIidDpdMp `idDpdMpUnion` _tlIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _hdIidTySigDefOccGam `gamAddGam` _tlIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = _hdIneedsError || _tlIneedsError -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOehDataTyExpr = _lhsIehDataTyExpr -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOidOccDefData = _lhsIidOccDefData -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOehDataTyExpr = _lhsIehDataTyExpr -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOidOccDefData = _lhsIidOccDefData -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIgathPragmas,_hdIidDefOccGam,_hdIidDpdMp,_hdIidOccDefs,_hdIidTySigDefOccGam,_hdIidUseOccGam,_hdIneedsError,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOehDataTyExpr _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOidOccDefData _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIgathPragmas,_tlIidDefOccGam,_tlIidDpdMp,_tlIidOccDefs,_tlIidTySigDefOccGam,_tlIidUseOccGam,_tlIneedsError,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOehDataTyExpr _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOidOccDefData _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Derivings_Nil :: T_Derivings sem_Derivings_Nil = (\ _lhsIehDataTyExpr _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsIidOccDefData _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 530, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Export ------------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Variable: child range : {Range} child name : {Name} alternative TypeOrClass: child range : {Range} child name : {Name} child names : {MaybeNames} alternative TypeOrClassComplete: child range : {Range} child name : {Name} alternative Module: child range : {Range} child name : {Name} -} -- cata sem_Export :: Export -> T_Export sem_Export (Export_Variable _range _name) = (sem_Export_Variable _range _name) sem_Export (Export_TypeOrClass _range _name _names) = (sem_Export_TypeOrClass _range _name _names) sem_Export (Export_TypeOrClassComplete _range _name) = (sem_Export_TypeOrClassComplete _range _name) sem_Export (Export_Module _range _name) = (sem_Export_Module _range _name) -- semantic domain type T_Export = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Export_Variable :: Range -> Name -> T_Export sem_Export_Variable range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Export_TypeOrClass :: Range -> Name -> MaybeNames -> T_Export sem_Export_TypeOrClass range_ name_ names_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Export_TypeOrClassComplete :: Range -> Name -> T_Export sem_Export_TypeOrClassComplete range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Export_Module :: Range -> Name -> T_Export sem_Export_Module range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Exports ----------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Export child tl : Exports alternative Nil: -} -- cata sem_Exports :: Exports -> T_Exports sem_Exports list = (Prelude.foldr sem_Exports_Cons sem_Exports_Nil (Prelude.map sem_Export list)) -- semantic domain type T_Exports = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Exports_Cons :: T_Export -> T_Exports -> T_Exports sem_Exports_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOisMainMod :: Bool _hdOisTopMod :: Bool _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisMainMod :: Bool _tlOisTopMod :: Bool _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _hdIgathFixityGam `gamAddGam` _tlIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOisMainMod = _lhsIisMainMod -- copy rule (down) _hdOisTopMod = _lhsIisTopMod -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOisMainMod = _lhsIisMainMod -- copy rule (down) _tlOisTopMod = _lhsIisTopMod -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOisMainMod _hdOisTopMod _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOisMainMod _tlOisTopMod _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Exports_Nil :: T_Exports sem_Exports_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Expression -------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: conNm : Name eh : EH.Expr errSq : ErrSq idUseOccGam : IdUseOccGam opChain : OpChain EH.Expr operatorName : MaybeName pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Literal: child range : {Range} child literal : Literal visit 0: local litnames : _ local litrefname : _ local litrefnames : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local eh : _ local isAsPred : _ alternative Variable: child range : {Range} child name : {Name} visit 0: local idAsp : _ local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ alternative Constructor: child range : {Range} child name : {Name} visit 0: local idAsp : _ local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ alternative TupleConstructor: child range : {Range} child arity : {Int} visit 0: local pp : _ local eh : _ local isAsPred : _ alternative Parenthesized: child range : {Range} child expression : Expression visit 0: local pp : _ local eh : _ local isAsPred : _ alternative NormalApplication: child range : {Range} child function : Expression child arguments : Expressions visit 0: local pp : _ local eh : _ local isAsPred : _ alternative SectionApplication: child range : {Range} child leftExpression : MaybeExpression child operator : Expression child rightExpression : MaybeExpression visit 0: local pp : _ local eh : _ local isAsPred : _ local lUniq_1_nm : {UID} alternative InfixApplication: child range : {Range} child leftExpression : Expression child operator : Expression child rightExpression : Expression visit 0: local pp : _ local fgi : _ local eh : _ local isAsPred : _ alternative InfixApplicationChainTop: child range : {Range} child expression : Expression visit 0: local errSq : _ local ehRearrOpChain : _ local errRearr : _ local ehFromOpChain : _ local eh : _ local isAsPred : _ alternative Lambda: child range : {Range} child patterns : Patterns child expression : Expression visit 0: local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ alternative Let: child range : {Range} child isStrict : {Bool} child declarations : Declarations child expression : Expression visit 0: local idGam : _ local sccOrder : _ local mkSccLet : _ local errReorder : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ local ppExtra : _ local fixityGam : _ local eh : _ local isAsPred : _ alternative Tuple: child range : {Range} child expressions : Expressions visit 0: local pp : _ local eh : _ local isAsPred : _ alternative Typed: child range : {Range} child expression : Expression child type : Type visit 0: local idDefOccGamType : _ local pp : _ local eh : _ local isAsPred : _ local doGenVarWild : _ alternative Negate: child range : {Range} child expression : Expression visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ alternative Annotate: child range : {Range} child annotation : ExpressionAnnotation child expression : Expression visit 0: local eh : _ local isAsPred : _ alternative ImpredicativeApplication: child range : {Range} child function : Expression child arguments : Expressions visit 0: local pp : _ local eh : _ local isAsPred : _ alternative If: child range : {Range} child guardExpression : Expression child thenExpression : Expression child elseExpression : Expression visit 0: local valrefnames : _ local idUseOccGamVal : _ local errIdUseVal : _ local typerefname : _ local idUseOccGamType : _ local errIdUseType : _ local idUseOccGam : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ alternative Case: child range : {Range} child expression : Expression child alternatives : Alternatives visit 0: local pp : _ local eh : _ local caseId : _ local isAsPred : _ local lUniq : {UID} alternative List: child range : {Range} child expressions : Expressions visit 0: local refnames : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ alternative Enum: child range : {Range} child from : Expression child then : MaybeExpression child to : MaybeExpression visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local enumNm : _ local eh : _ local isAsPred : _ alternative Comprehension: child range : {Range} child expression : Expression child qualifiers : Qualifiers visit 0: local pp : _ local eh : _ local isAsPred : _ alternative RecordConstruction: child range : {Range} child name : {Name} child recordExpressionBindings : RecordExpressionBindings visit 0: local idAsp : _ local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ alternative RecordUpdate: child range : {Range} child expression : Expression child recordExpressionBindings : RecordExpressionBindings visit 0: local pp : _ local eh : _ local isAsPred : _ alternative RowRecordUpdate: child range : {Range} child expression : Expression child rowRecordExpressionUpdates : RowRecordExpressionUpdates visit 0: local pp : _ local eh : _ local isAsPred : _ alternative RowRecordEmpty: child range : {Range} visit 0: local pp : _ local eh : _ local isAsPred : _ alternative RowRecordSelect: child range : {Range} child expression : Expression child name : {Name} visit 0: local pp : _ local eh : _ local isAsPred : _ alternative Do: child range : {Range} child statements : Statements visit 0: local pp : _ local eh : _ local isAsPred : _ alternative ImplicitApplication: child range : {Range} child function : Expression child arguments : ContextedExpressions visit 0: local pp : _ local eh : _ local isAsPred : _ alternative ImplicitLambda: child range : {Range} child patterns : ContextedPatterns child expression : Expression visit 0: local idDefOccGamType : _ local idGam : _ local errDupIntro : _ local errSq : _ local pp : _ local eh : _ local isAsPred : _ -} -- cata sem_Expression :: Expression -> T_Expression sem_Expression (Expression_Literal _range _literal) = (sem_Expression_Literal _range (sem_Literal _literal)) sem_Expression (Expression_Variable _range _name) = (sem_Expression_Variable _range _name) sem_Expression (Expression_Constructor _range _name) = (sem_Expression_Constructor _range _name) sem_Expression (Expression_TupleConstructor _range _arity) = (sem_Expression_TupleConstructor _range _arity) sem_Expression (Expression_Parenthesized _range _expression) = (sem_Expression_Parenthesized _range (sem_Expression _expression)) sem_Expression (Expression_NormalApplication _range _function _arguments) = (sem_Expression_NormalApplication _range (sem_Expression _function) (sem_Expressions _arguments)) sem_Expression (Expression_SectionApplication _range _leftExpression _operator _rightExpression) = (sem_Expression_SectionApplication _range (sem_MaybeExpression _leftExpression) (sem_Expression _operator) (sem_MaybeExpression _rightExpression)) sem_Expression (Expression_InfixApplication _range _leftExpression _operator _rightExpression) = (sem_Expression_InfixApplication _range (sem_Expression _leftExpression) (sem_Expression _operator) (sem_Expression _rightExpression)) sem_Expression (Expression_InfixApplicationChainTop _range _expression) = (sem_Expression_InfixApplicationChainTop _range (sem_Expression _expression)) sem_Expression (Expression_Lambda _range _patterns _expression) = (sem_Expression_Lambda _range (sem_Patterns _patterns) (sem_Expression _expression)) sem_Expression (Expression_Let _range _isStrict _declarations _expression) = (sem_Expression_Let _range _isStrict (sem_Declarations _declarations) (sem_Expression _expression)) sem_Expression (Expression_Tuple _range _expressions) = (sem_Expression_Tuple _range (sem_Expressions _expressions)) sem_Expression (Expression_Typed _range _expression _type) = (sem_Expression_Typed _range (sem_Expression _expression) (sem_Type _type)) sem_Expression (Expression_Negate _range _expression) = (sem_Expression_Negate _range (sem_Expression _expression)) sem_Expression (Expression_Annotate _range _annotation _expression) = (sem_Expression_Annotate _range (sem_ExpressionAnnotation _annotation) (sem_Expression _expression)) sem_Expression (Expression_ImpredicativeApplication _range _function _arguments) = (sem_Expression_ImpredicativeApplication _range (sem_Expression _function) (sem_Expressions _arguments)) sem_Expression (Expression_If _range _guardExpression _thenExpression _elseExpression) = (sem_Expression_If _range (sem_Expression _guardExpression) (sem_Expression _thenExpression) (sem_Expression _elseExpression)) sem_Expression (Expression_Case _range _expression _alternatives) = (sem_Expression_Case _range (sem_Expression _expression) (sem_Alternatives _alternatives)) sem_Expression (Expression_List _range _expressions) = (sem_Expression_List _range (sem_Expressions _expressions)) sem_Expression (Expression_Enum _range _from _then _to) = (sem_Expression_Enum _range (sem_Expression _from) (sem_MaybeExpression _then) (sem_MaybeExpression _to)) sem_Expression (Expression_Comprehension _range _expression _qualifiers) = (sem_Expression_Comprehension _range (sem_Expression _expression) (sem_Qualifiers _qualifiers)) sem_Expression (Expression_RecordConstruction _range _name _recordExpressionBindings) = (sem_Expression_RecordConstruction _range _name (sem_RecordExpressionBindings _recordExpressionBindings)) sem_Expression (Expression_RecordUpdate _range _expression _recordExpressionBindings) = (sem_Expression_RecordUpdate _range (sem_Expression _expression) (sem_RecordExpressionBindings _recordExpressionBindings)) sem_Expression (Expression_RowRecordUpdate _range _expression _rowRecordExpressionUpdates) = (sem_Expression_RowRecordUpdate _range (sem_Expression _expression) (sem_RowRecordExpressionUpdates _rowRecordExpressionUpdates)) sem_Expression (Expression_RowRecordEmpty _range) = (sem_Expression_RowRecordEmpty _range) sem_Expression (Expression_RowRecordSelect _range _expression _name) = (sem_Expression_RowRecordSelect _range (sem_Expression _expression) _name) sem_Expression (Expression_Do _range _statements) = (sem_Expression_Do _range (sem_Statements _statements)) sem_Expression (Expression_ImplicitApplication _range _function _arguments) = (sem_Expression_ImplicitApplication _range (sem_Expression _function) (sem_ContextedExpressions _arguments)) sem_Expression (Expression_ImplicitLambda _range _patterns _expression) = (sem_Expression_ImplicitLambda _range (sem_ContextedPatterns _patterns) (sem_Expression _expression)) -- semantic domain type T_Expression = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( Name,(EH.Expr),ErrSq,UID,IdUseOccGam,(OpChain EH.Expr),MaybeName,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Expression_Literal :: Range -> T_Literal -> T_Expression sem_Expression_Literal range_ literal_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _literalOgUniq :: UID _literalOidGam :: IdDefOccGam _literalOnmLev :: NmLev _literalOopts :: EHCOpts _literalOpatchEhNmInInstance :: PatchEhNmInInstance _literalOtopInstanceNmL :: ([HsName]) _literalIeh :: Literal _literalIerrSq :: ErrSq _literalIgUniq :: UID _literalIidUseOccGam :: IdUseOccGam _literalIpp :: PP_Doc _literalIppWrap :: (PP_Doc -> PP_Doc) _literalItopInstanceNmL :: ([HsName]) _literalIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 475, column 9) _litnames = litNames _lhsIopts _literalIeh False 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 476, column 29) (_litrefname,_litrefnames,_idUseOccGam,_errIdUse) = mkUseOccGam' _lhsIopts _lhsIidGam _litnames range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 478, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam, _literalIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 13, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _literalIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 466, column 9) _eh = case _literalIeh of Literal_Int r b s -> fst $ ehExpLitInt r b s 1 _litrefnames Literal_Char r s -> rngLift r EH.Expr_CConst (head s) Literal_String r s -> fst $ ehExpLitString _lhsIopts r s _litrefnames Literal_Float r s -> fst $ ehExpLitFloat r s 1 _litrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _literalIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _literalIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _literalIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _literalIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _literalItopInstanceNmL -- copy rule (down) _literalOgUniq = _lhsIgUniq -- copy rule (down) _literalOidGam = _lhsIidGam -- copy rule (down) _literalOnmLev = _lhsInmLev -- copy rule (down) _literalOopts = _lhsIopts -- copy rule (down) _literalOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _literalOtopInstanceNmL = _lhsItopInstanceNmL ( _literalIeh,_literalIerrSq,_literalIgUniq,_literalIidUseOccGam,_literalIpp,_literalIppWrap,_literalItopInstanceNmL,_literalIundefOccGam) = literal_ _literalOgUniq _literalOidGam _literalOnmLev _literalOopts _literalOpatchEhNmInInstance _literalOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Variable :: Range -> Name -> T_Expression sem_Expression_Variable range_ name_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 480, column 9) _idAsp = IdAsp_Val_Var -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 486, column 29) (_refname,_,_idUseOccGam,_errIdUse) = let x@(n,_,_,_) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Val _idAsp range_ dbgnm = mkHNm "putStrLn" dbgoc = IdOcc dbgnm IdOcc_Val in x -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 15, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 194, column 9) _pp = pp name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 50, column 9) _lhsOoperatorName = Just _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 472, column 9) _eh = rngLift range_ EH.Expr_Var _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Constructor :: Range -> Name -> T_Expression sem_Expression_Constructor range_ name_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 483, column 9) _idAsp = IdAsp_Val_Con -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 486, column 29) (_refname,_,_idUseOccGam,_errIdUse) = let x@(n,_,_,_) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Val _idAsp range_ dbgnm = mkHNm "putStrLn" dbgoc = IdOcc dbgnm IdOcc_Val in x -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 263, column 9) _lhsOconNm = name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 15, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 196, column 9) _pp = ppCon name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 50, column 9) _lhsOoperatorName = Just _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 474, column 9) _eh = rngLift range_ EH.Expr_Con _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_TupleConstructor :: Range -> Int -> T_Expression sem_Expression_TupleConstructor range_ arity_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 198, column 9) _pp = ppParens (replicate (arity_ - 1) (',')) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 476, column 9) _eh = ehTupleConstructor range_ arity_ EH.Expr_Var EH.PatExpr_Var EH.Expr_Lam (\_ x -> x) EH.Expr_Rec EH.RecExpr_Ext EH.RecExpr_Empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Parenthesized :: Range -> T_Expression -> T_Expression sem_Expression_Parenthesized range_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 200, column 9) _pp = ppParens _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 479, column 9) _eh = rngLift range_ EH.Expr_Parens _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_NormalApplication :: Range -> T_Expression -> T_Expressions -> T_Expression sem_Expression_NormalApplication range_ function_ arguments_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _functionOcaseId :: UID _functionOfixityGam :: FixityGam _functionOgUniq :: UID _functionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _functionOidGam :: IdDefOccGam _functionOmoduleNm :: HsName _functionOnmLev :: NmLev _functionOopts :: EHCOpts _functionOpatchEhNmInInstance :: PatchEhNmInInstance _functionOpragmas :: (Set.Set Pragma.Pragma) _functionOtopInstanceNmL :: ([HsName]) _argumentsOcaseId :: UID _argumentsOfixityGam :: FixityGam _argumentsOgUniq :: UID _argumentsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _argumentsOidGam :: IdDefOccGam _argumentsOmoduleNm :: HsName _argumentsOnmLev :: NmLev _argumentsOopts :: EHCOpts _argumentsOpatchEhNmInInstance :: PatchEhNmInInstance _argumentsOpragmas :: (Set.Set Pragma.Pragma) _argumentsOtopInstanceNmL :: ([HsName]) _functionIconNm :: Name _functionIeh :: (EH.Expr) _functionIerrSq :: ErrSq _functionIgUniq :: UID _functionIidUseOccGam :: IdUseOccGam _functionIopChain :: (OpChain EH.Expr) _functionIoperatorName :: MaybeName _functionIpp :: PP_Doc _functionIppWrap :: (PP_Doc -> PP_Doc) _functionItopInstanceNmL :: ([HsName]) _functionIundefOccGam :: IdUseOccGam _argumentsIeh :: ([EH.Expr]) _argumentsIerrSq :: ErrSq _argumentsIgUniq :: UID _argumentsIidUseOccGam :: IdUseOccGam _argumentsIpp :: PP_Doc _argumentsIppL :: ([PP_Doc]) _argumentsIppWrap :: (PP_Doc -> PP_Doc) _argumentsItopInstanceNmL :: ([HsName]) _argumentsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 202, column 9) _pp = ppAppTop (_functionIconNm,_functionIpp) _argumentsIppL (_functionIpp >#< ppSpaces _argumentsIppL) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 481, column 9) _eh = appRngTopApp range_ (_functionIeh : _argumentsIeh) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _functionIerrSq `Seq.union` _argumentsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _functionIidUseOccGam `gamAddGam` _argumentsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _functionIppWrap . _argumentsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _functionIundefOccGam `gamUnion` _argumentsIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _argumentsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _argumentsItopInstanceNmL -- copy rule (down) _functionOcaseId = _lhsIcaseId -- copy rule (down) _functionOfixityGam = _lhsIfixityGam -- copy rule (down) _functionOgUniq = _lhsIgUniq -- copy rule (down) _functionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _functionOidGam = _lhsIidGam -- copy rule (down) _functionOmoduleNm = _lhsImoduleNm -- copy rule (down) _functionOnmLev = _lhsInmLev -- copy rule (down) _functionOopts = _lhsIopts -- copy rule (down) _functionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _functionOpragmas = _lhsIpragmas -- copy rule (down) _functionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _argumentsOcaseId = _lhsIcaseId -- copy rule (down) _argumentsOfixityGam = _lhsIfixityGam -- copy rule (chain) _argumentsOgUniq = _functionIgUniq -- copy rule (down) _argumentsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _argumentsOidGam = _lhsIidGam -- copy rule (down) _argumentsOmoduleNm = _lhsImoduleNm -- copy rule (down) _argumentsOnmLev = _lhsInmLev -- copy rule (down) _argumentsOopts = _lhsIopts -- copy rule (down) _argumentsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _argumentsOpragmas = _lhsIpragmas -- copy rule (chain) _argumentsOtopInstanceNmL = _functionItopInstanceNmL ( _functionIconNm,_functionIeh,_functionIerrSq,_functionIgUniq,_functionIidUseOccGam,_functionIopChain,_functionIoperatorName,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionIundefOccGam) = function_ _functionOcaseId _functionOfixityGam _functionOgUniq _functionOgenerDerivMp _functionOidGam _functionOmoduleNm _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOpragmas _functionOtopInstanceNmL ( _argumentsIeh,_argumentsIerrSq,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsIundefOccGam) = arguments_ _argumentsOcaseId _argumentsOfixityGam _argumentsOgUniq _argumentsOgenerDerivMp _argumentsOidGam _argumentsOmoduleNm _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOpragmas _argumentsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_SectionApplication :: Range -> T_MaybeExpression -> T_Expression -> T_MaybeExpression -> T_Expression sem_Expression_SectionApplication range_ leftExpression_ operator_ rightExpression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _leftExpressionOgUniq :: UID _lUniq_1_nm :: UID _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftExpressionOcaseId :: UID _leftExpressionOfixityGam :: FixityGam _leftExpressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _leftExpressionOidGam :: IdDefOccGam _leftExpressionOmoduleNm :: HsName _leftExpressionOnmLev :: NmLev _leftExpressionOopts :: EHCOpts _leftExpressionOpatchEhNmInInstance :: PatchEhNmInInstance _leftExpressionOpragmas :: (Set.Set Pragma.Pragma) _leftExpressionOtopInstanceNmL :: ([HsName]) _operatorOcaseId :: UID _operatorOfixityGam :: FixityGam _operatorOgUniq :: UID _operatorOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _operatorOidGam :: IdDefOccGam _operatorOmoduleNm :: HsName _operatorOnmLev :: NmLev _operatorOopts :: EHCOpts _operatorOpatchEhNmInInstance :: PatchEhNmInInstance _operatorOpragmas :: (Set.Set Pragma.Pragma) _operatorOtopInstanceNmL :: ([HsName]) _rightExpressionOcaseId :: UID _rightExpressionOfixityGam :: FixityGam _rightExpressionOgUniq :: UID _rightExpressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _rightExpressionOidGam :: IdDefOccGam _rightExpressionOmoduleNm :: HsName _rightExpressionOnmLev :: NmLev _rightExpressionOopts :: EHCOpts _rightExpressionOpatchEhNmInInstance :: PatchEhNmInInstance _rightExpressionOpragmas :: (Set.Set Pragma.Pragma) _rightExpressionOtopInstanceNmL :: ([HsName]) _leftExpressionIeh :: (Maybe EH.Expr) _leftExpressionIerrSq :: ErrSq _leftExpressionIgUniq :: UID _leftExpressionIidUseOccGam :: IdUseOccGam _leftExpressionIpp :: PP_Doc _leftExpressionIppMb :: (Maybe PP_Doc) _leftExpressionIppWrap :: (PP_Doc -> PP_Doc) _leftExpressionItopInstanceNmL :: ([HsName]) _leftExpressionIundefOccGam :: IdUseOccGam _operatorIconNm :: Name _operatorIeh :: (EH.Expr) _operatorIerrSq :: ErrSq _operatorIgUniq :: UID _operatorIidUseOccGam :: IdUseOccGam _operatorIopChain :: (OpChain EH.Expr) _operatorIoperatorName :: MaybeName _operatorIpp :: PP_Doc _operatorIppWrap :: (PP_Doc -> PP_Doc) _operatorItopInstanceNmL :: ([HsName]) _operatorIundefOccGam :: IdUseOccGam _rightExpressionIeh :: (Maybe EH.Expr) _rightExpressionIerrSq :: ErrSq _rightExpressionIgUniq :: UID _rightExpressionIidUseOccGam :: IdUseOccGam _rightExpressionIpp :: PP_Doc _rightExpressionIppMb :: (Maybe PP_Doc) _rightExpressionIppWrap :: (PP_Doc -> PP_Doc) _rightExpressionItopInstanceNmL :: ([HsName]) _rightExpressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 207, column 9) _pp = let e = case (_leftExpressionIppMb,_rightExpressionIppMb) of (Just l ,Nothing) -> l >#< _operatorIpp (Nothing,Just r ) -> _operatorIpp >#< r (Nothing,Nothing) -> _operatorIpp in ppParens e -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 487, column 9) _eh = ehSection _lUniq_1_nm range_ EH.Expr_Var EH.PatExpr_Var EH.Expr_Lam _leftExpressionIeh _operatorIeh _rightExpressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- -- generated by the unique rule mechanism. (_leftExpressionOgUniq,_lUniq_1_nm) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq_1_nm) -> (__cont,lUniq_1_nm)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _leftExpressionIerrSq `Seq.union` _operatorIerrSq `Seq.union` _rightExpressionIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _leftExpressionIidUseOccGam `gamAddGam` _operatorIidUseOccGam `gamAddGam` _rightExpressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftExpressionIppWrap . _operatorIppWrap . _rightExpressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftExpressionIundefOccGam `gamUnion` _operatorIundefOccGam `gamUnion` _rightExpressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _rightExpressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rightExpressionItopInstanceNmL -- copy rule (down) _leftExpressionOcaseId = _lhsIcaseId -- copy rule (down) _leftExpressionOfixityGam = _lhsIfixityGam -- copy rule (down) _leftExpressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _leftExpressionOidGam = _lhsIidGam -- copy rule (down) _leftExpressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _leftExpressionOnmLev = _lhsInmLev -- copy rule (down) _leftExpressionOopts = _lhsIopts -- copy rule (down) _leftExpressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _leftExpressionOpragmas = _lhsIpragmas -- copy rule (down) _leftExpressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _operatorOcaseId = _lhsIcaseId -- copy rule (down) _operatorOfixityGam = _lhsIfixityGam -- copy rule (chain) _operatorOgUniq = _leftExpressionIgUniq -- copy rule (down) _operatorOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _operatorOidGam = _lhsIidGam -- copy rule (down) _operatorOmoduleNm = _lhsImoduleNm -- copy rule (down) _operatorOnmLev = _lhsInmLev -- copy rule (down) _operatorOopts = _lhsIopts -- copy rule (down) _operatorOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _operatorOpragmas = _lhsIpragmas -- copy rule (chain) _operatorOtopInstanceNmL = _leftExpressionItopInstanceNmL -- copy rule (down) _rightExpressionOcaseId = _lhsIcaseId -- copy rule (down) _rightExpressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _rightExpressionOgUniq = _operatorIgUniq -- copy rule (down) _rightExpressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _rightExpressionOidGam = _lhsIidGam -- copy rule (down) _rightExpressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _rightExpressionOnmLev = _lhsInmLev -- copy rule (down) _rightExpressionOopts = _lhsIopts -- copy rule (down) _rightExpressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _rightExpressionOpragmas = _lhsIpragmas -- copy rule (chain) _rightExpressionOtopInstanceNmL = _operatorItopInstanceNmL ( _leftExpressionIeh,_leftExpressionIerrSq,_leftExpressionIgUniq,_leftExpressionIidUseOccGam,_leftExpressionIpp,_leftExpressionIppMb,_leftExpressionIppWrap,_leftExpressionItopInstanceNmL,_leftExpressionIundefOccGam) = leftExpression_ _leftExpressionOcaseId _leftExpressionOfixityGam _leftExpressionOgUniq _leftExpressionOgenerDerivMp _leftExpressionOidGam _leftExpressionOmoduleNm _leftExpressionOnmLev _leftExpressionOopts _leftExpressionOpatchEhNmInInstance _leftExpressionOpragmas _leftExpressionOtopInstanceNmL ( _operatorIconNm,_operatorIeh,_operatorIerrSq,_operatorIgUniq,_operatorIidUseOccGam,_operatorIopChain,_operatorIoperatorName,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorIundefOccGam) = operator_ _operatorOcaseId _operatorOfixityGam _operatorOgUniq _operatorOgenerDerivMp _operatorOidGam _operatorOmoduleNm _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOpragmas _operatorOtopInstanceNmL ( _rightExpressionIeh,_rightExpressionIerrSq,_rightExpressionIgUniq,_rightExpressionIidUseOccGam,_rightExpressionIpp,_rightExpressionIppMb,_rightExpressionIppWrap,_rightExpressionItopInstanceNmL,_rightExpressionIundefOccGam) = rightExpression_ _rightExpressionOcaseId _rightExpressionOfixityGam _rightExpressionOgUniq _rightExpressionOgenerDerivMp _rightExpressionOidGam _rightExpressionOmoduleNm _rightExpressionOnmLev _rightExpressionOopts _rightExpressionOpatchEhNmInInstance _rightExpressionOpragmas _rightExpressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_InfixApplication :: Range -> T_Expression -> T_Expression -> T_Expression -> T_Expression sem_Expression_InfixApplication range_ leftExpression_ operator_ rightExpression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftExpressionOcaseId :: UID _leftExpressionOfixityGam :: FixityGam _leftExpressionOgUniq :: UID _leftExpressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _leftExpressionOidGam :: IdDefOccGam _leftExpressionOmoduleNm :: HsName _leftExpressionOnmLev :: NmLev _leftExpressionOopts :: EHCOpts _leftExpressionOpatchEhNmInInstance :: PatchEhNmInInstance _leftExpressionOpragmas :: (Set.Set Pragma.Pragma) _leftExpressionOtopInstanceNmL :: ([HsName]) _operatorOcaseId :: UID _operatorOfixityGam :: FixityGam _operatorOgUniq :: UID _operatorOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _operatorOidGam :: IdDefOccGam _operatorOmoduleNm :: HsName _operatorOnmLev :: NmLev _operatorOopts :: EHCOpts _operatorOpatchEhNmInInstance :: PatchEhNmInInstance _operatorOpragmas :: (Set.Set Pragma.Pragma) _operatorOtopInstanceNmL :: ([HsName]) _rightExpressionOcaseId :: UID _rightExpressionOfixityGam :: FixityGam _rightExpressionOgUniq :: UID _rightExpressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _rightExpressionOidGam :: IdDefOccGam _rightExpressionOmoduleNm :: HsName _rightExpressionOnmLev :: NmLev _rightExpressionOopts :: EHCOpts _rightExpressionOpatchEhNmInInstance :: PatchEhNmInInstance _rightExpressionOpragmas :: (Set.Set Pragma.Pragma) _rightExpressionOtopInstanceNmL :: ([HsName]) _leftExpressionIconNm :: Name _leftExpressionIeh :: (EH.Expr) _leftExpressionIerrSq :: ErrSq _leftExpressionIgUniq :: UID _leftExpressionIidUseOccGam :: IdUseOccGam _leftExpressionIopChain :: (OpChain EH.Expr) _leftExpressionIoperatorName :: MaybeName _leftExpressionIpp :: PP_Doc _leftExpressionIppWrap :: (PP_Doc -> PP_Doc) _leftExpressionItopInstanceNmL :: ([HsName]) _leftExpressionIundefOccGam :: IdUseOccGam _operatorIconNm :: Name _operatorIeh :: (EH.Expr) _operatorIerrSq :: ErrSq _operatorIgUniq :: UID _operatorIidUseOccGam :: IdUseOccGam _operatorIopChain :: (OpChain EH.Expr) _operatorIoperatorName :: MaybeName _operatorIpp :: PP_Doc _operatorIppWrap :: (PP_Doc -> PP_Doc) _operatorItopInstanceNmL :: ([HsName]) _operatorIundefOccGam :: IdUseOccGam _rightExpressionIconNm :: Name _rightExpressionIeh :: (EH.Expr) _rightExpressionIerrSq :: ErrSq _rightExpressionIgUniq :: UID _rightExpressionIidUseOccGam :: IdUseOccGam _rightExpressionIopChain :: (OpChain EH.Expr) _rightExpressionIoperatorName :: MaybeName _rightExpressionIpp :: PP_Doc _rightExpressionIppWrap :: (PP_Doc -> PP_Doc) _rightExpressionItopInstanceNmL :: ([HsName]) _rightExpressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 205, column 9) _pp = _leftExpressionIpp >#< _operatorIpp >#< _rightExpressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 58, column 9) _fgi = case _operatorIoperatorName of Just n -> fixityGamLookup n _lhsIfixityGam _ -> defaultFixityGamInfo -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 100, column 9) _lhsOopChain = OpChain_Op _operatorIeh _operatorIpp (fgiFixity _fgi) (fgiPrio _fgi) range_ _leftExpressionIopChain _rightExpressionIopChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 483, column 9) _eh = appRngParApp range_ [_operatorIeh,_leftExpressionIeh,_rightExpressionIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _leftExpressionIerrSq `Seq.union` _operatorIerrSq `Seq.union` _rightExpressionIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _leftExpressionIidUseOccGam `gamAddGam` _operatorIidUseOccGam `gamAddGam` _rightExpressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftExpressionIppWrap . _operatorIppWrap . _rightExpressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftExpressionIundefOccGam `gamUnion` _operatorIundefOccGam `gamUnion` _rightExpressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _rightExpressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rightExpressionItopInstanceNmL -- copy rule (down) _leftExpressionOcaseId = _lhsIcaseId -- copy rule (down) _leftExpressionOfixityGam = _lhsIfixityGam -- copy rule (down) _leftExpressionOgUniq = _lhsIgUniq -- copy rule (down) _leftExpressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _leftExpressionOidGam = _lhsIidGam -- copy rule (down) _leftExpressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _leftExpressionOnmLev = _lhsInmLev -- copy rule (down) _leftExpressionOopts = _lhsIopts -- copy rule (down) _leftExpressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _leftExpressionOpragmas = _lhsIpragmas -- copy rule (down) _leftExpressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _operatorOcaseId = _lhsIcaseId -- copy rule (down) _operatorOfixityGam = _lhsIfixityGam -- copy rule (chain) _operatorOgUniq = _leftExpressionIgUniq -- copy rule (down) _operatorOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _operatorOidGam = _lhsIidGam -- copy rule (down) _operatorOmoduleNm = _lhsImoduleNm -- copy rule (down) _operatorOnmLev = _lhsInmLev -- copy rule (down) _operatorOopts = _lhsIopts -- copy rule (down) _operatorOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _operatorOpragmas = _lhsIpragmas -- copy rule (chain) _operatorOtopInstanceNmL = _leftExpressionItopInstanceNmL -- copy rule (down) _rightExpressionOcaseId = _lhsIcaseId -- copy rule (down) _rightExpressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _rightExpressionOgUniq = _operatorIgUniq -- copy rule (down) _rightExpressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _rightExpressionOidGam = _lhsIidGam -- copy rule (down) _rightExpressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _rightExpressionOnmLev = _lhsInmLev -- copy rule (down) _rightExpressionOopts = _lhsIopts -- copy rule (down) _rightExpressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _rightExpressionOpragmas = _lhsIpragmas -- copy rule (chain) _rightExpressionOtopInstanceNmL = _operatorItopInstanceNmL ( _leftExpressionIconNm,_leftExpressionIeh,_leftExpressionIerrSq,_leftExpressionIgUniq,_leftExpressionIidUseOccGam,_leftExpressionIopChain,_leftExpressionIoperatorName,_leftExpressionIpp,_leftExpressionIppWrap,_leftExpressionItopInstanceNmL,_leftExpressionIundefOccGam) = leftExpression_ _leftExpressionOcaseId _leftExpressionOfixityGam _leftExpressionOgUniq _leftExpressionOgenerDerivMp _leftExpressionOidGam _leftExpressionOmoduleNm _leftExpressionOnmLev _leftExpressionOopts _leftExpressionOpatchEhNmInInstance _leftExpressionOpragmas _leftExpressionOtopInstanceNmL ( _operatorIconNm,_operatorIeh,_operatorIerrSq,_operatorIgUniq,_operatorIidUseOccGam,_operatorIopChain,_operatorIoperatorName,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorIundefOccGam) = operator_ _operatorOcaseId _operatorOfixityGam _operatorOgUniq _operatorOgenerDerivMp _operatorOidGam _operatorOmoduleNm _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOpragmas _operatorOtopInstanceNmL ( _rightExpressionIconNm,_rightExpressionIeh,_rightExpressionIerrSq,_rightExpressionIgUniq,_rightExpressionIidUseOccGam,_rightExpressionIopChain,_rightExpressionIoperatorName,_rightExpressionIpp,_rightExpressionIppWrap,_rightExpressionItopInstanceNmL,_rightExpressionIundefOccGam) = rightExpression_ _rightExpressionOcaseId _rightExpressionOfixityGam _rightExpressionOgUniq _rightExpressionOgenerDerivMp _rightExpressionOidGam _rightExpressionOmoduleNm _rightExpressionOnmLev _rightExpressionOopts _rightExpressionOpatchEhNmInInstance _rightExpressionOpragmas _rightExpressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_InfixApplicationChainTop :: Range -> T_Expression -> T_Expression sem_Expression_InfixApplicationChainTop range_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 22, column 9) _errSq = Seq.unions [Seq.fromList _errRearr, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 106, column 25) (_ehRearrOpChain,_errRearr) = opChainReArrange _expressionIopChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 106, column 9) _ehFromOpChain = unOpChain _ehRearrOpChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 485, column 9) _eh = _ehFromOpChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _expressionIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Lambda :: Range -> T_Patterns -> T_Expression -> T_Expression sem_Expression_Lambda range_ patterns_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _expressionOidGam :: IdDefOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _patternsIeh :: ([EH.PatExpr]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidDefOccGam :: IdDefOccGam _patternsIidOccDefs :: ([IdOcc]) _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsIundefOccGam :: IdUseOccGam _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 344, column 9) _expressionOidGam = gamUnion _patternsIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 50, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 104, column 9) _errDupIntro = idDefOccGamCheckDupNames _patternsIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 20, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, _patternsIerrSq, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 213, column 9) _pp = "\\" >|< ppSpaces _patternsIppL >#< "->" >#< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 493, column 9) _eh = foldr (rngLift range_ EH.Expr_Lam) _expressionIeh _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternsIidUseOccGam `gamAddGam` _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternsIppWrap . _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternsIundefOccGam `gamUnion` _expressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _patternsOfixityGam = _lhsIfixityGam -- copy rule (down) _patternsOgUniq = _lhsIgUniq -- copy rule (down) _patternsOidGam = _lhsIidGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _patternsOnmLev = _nmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternsOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _expressionOgUniq = _patternsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (from local) _expressionOnmLev = _nmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (chain) _expressionOtopInstanceNmL = _patternsItopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Let :: Range -> Bool -> T_Declarations -> T_Expression -> T_Expression sem_Expression_Let range_ isStrict_ declarations_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _declarationsOcaseId :: UID _declarationsOfixityGam :: FixityGam _declarationsOgUniq :: UID _declarationsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _declarationsOidGam :: IdDefOccGam _declarationsOmoduleNm :: HsName _declarationsOnmLev :: NmLev _declarationsOopts :: EHCOpts _declarationsOpatchEhNmInInstance :: PatchEhNmInInstance _declarationsOpragmas :: (Set.Set Pragma.Pragma) _declarationsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _declarationsIeh :: ([EH.Decl]) _declarationsIerrSq :: ErrSq _declarationsIgUniq :: UID _declarationsIgathFixityGam :: FixityGam _declarationsIgathPragmas :: (Set.Set Pragma.Pragma) _declarationsIidDefOccGam :: IdDefOccGam _declarationsIidDpdMp :: IdDpdMp _declarationsIidOccDefs :: ([IdOcc]) _declarationsIidTySigDefOccGam :: IdDefOccGam _declarationsIidUseOccGam :: IdUseOccGam _declarationsIneedsError :: Bool _declarationsIpp :: PP_Doc _declarationsIppWrap :: (PP_Doc -> PP_Doc) _declarationsItopInstanceNmL :: ([HsName]) _declarationsIundefOccGam :: IdUseOccGam _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 342, column 9) _idGam = gamUnion _declarationsIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 890, column 9) _sccOrder = idDpdMp2SccOrder _declarationsIidDefOccGam _declarationsIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1020, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH range_ isStrict_ _declarationsIidDefOccGam (Just _sccOrder) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 50, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 101, column 9) _errDupIntro = idDefOccGamCheckDupNames _declarationsIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 17, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, Seq.fromList _errReorder, _declarationsIerrSq, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 215, column 9) _pp = "let" >|< (if isStrict_ then pp "!" else empty) >#< (_declarationsIpp >-< _ppExtra) >#< "in" >#< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 216, column 17) _ppExtra = empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 26, column 9) _fixityGam = _declarationsIgathFixityGam `gamUnion` _lhsIfixityGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 495, column 9) _eh = _mkSccLet _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _declarationsIidUseOccGam `gamAddGam` _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _declarationsIppWrap . _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _declarationsIundefOccGam `gamUnion` _expressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _declarationsOcaseId = _lhsIcaseId -- copy rule (from local) _declarationsOfixityGam = _fixityGam -- copy rule (down) _declarationsOgUniq = _lhsIgUniq -- copy rule (down) _declarationsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _declarationsOidGam = _idGam -- copy rule (down) _declarationsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _declarationsOnmLev = _nmLev -- copy rule (down) _declarationsOopts = _lhsIopts -- copy rule (down) _declarationsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _declarationsOpragmas = _lhsIpragmas -- copy rule (down) _declarationsOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (from local) _expressionOfixityGam = _fixityGam -- copy rule (chain) _expressionOgUniq = _declarationsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _expressionOidGam = _idGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (from local) _expressionOnmLev = _nmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (chain) _expressionOtopInstanceNmL = _declarationsItopInstanceNmL ( _declarationsIeh,_declarationsIerrSq,_declarationsIgUniq,_declarationsIgathFixityGam,_declarationsIgathPragmas,_declarationsIidDefOccGam,_declarationsIidDpdMp,_declarationsIidOccDefs,_declarationsIidTySigDefOccGam,_declarationsIidUseOccGam,_declarationsIneedsError,_declarationsIpp,_declarationsIppWrap,_declarationsItopInstanceNmL,_declarationsIundefOccGam) = declarations_ _declarationsOcaseId _declarationsOfixityGam _declarationsOgUniq _declarationsOgenerDerivMp _declarationsOidGam _declarationsOmoduleNm _declarationsOnmLev _declarationsOopts _declarationsOpatchEhNmInInstance _declarationsOpragmas _declarationsOtopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Tuple :: Range -> T_Expressions -> T_Expression sem_Expression_Tuple range_ expressions_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionsOcaseId :: UID _expressionsOfixityGam :: FixityGam _expressionsOgUniq :: UID _expressionsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionsOidGam :: IdDefOccGam _expressionsOmoduleNm :: HsName _expressionsOnmLev :: NmLev _expressionsOopts :: EHCOpts _expressionsOpatchEhNmInInstance :: PatchEhNmInInstance _expressionsOpragmas :: (Set.Set Pragma.Pragma) _expressionsOtopInstanceNmL :: ([HsName]) _expressionsIeh :: ([EH.Expr]) _expressionsIerrSq :: ErrSq _expressionsIgUniq :: UID _expressionsIidUseOccGam :: IdUseOccGam _expressionsIpp :: PP_Doc _expressionsIppL :: ([PP_Doc]) _expressionsIppWrap :: (PP_Doc -> PP_Doc) _expressionsItopInstanceNmL :: ([HsName]) _expressionsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 218, column 9) _pp = ppParensCommas _expressionsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 497, column 9) _eh = ehExpConApp range_ (hsnProd (length _expressionsIeh)) _expressionsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionsIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionsItopInstanceNmL -- copy rule (down) _expressionsOcaseId = _lhsIcaseId -- copy rule (down) _expressionsOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionsOgUniq = _lhsIgUniq -- copy rule (down) _expressionsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionsOidGam = _lhsIidGam -- copy rule (down) _expressionsOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionsOnmLev = _lhsInmLev -- copy rule (down) _expressionsOopts = _lhsIopts -- copy rule (down) _expressionsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionsOpragmas = _lhsIpragmas -- copy rule (down) _expressionsOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionsIeh,_expressionsIerrSq,_expressionsIgUniq,_expressionsIidUseOccGam,_expressionsIpp,_expressionsIppL,_expressionsIppWrap,_expressionsItopInstanceNmL,_expressionsIundefOccGam) = expressions_ _expressionsOcaseId _expressionsOfixityGam _expressionsOgUniq _expressionsOgenerDerivMp _expressionsOidGam _expressionsOmoduleNm _expressionsOnmLev _expressionsOopts _expressionsOpatchEhNmInInstance _expressionsOpragmas _expressionsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Typed :: Range -> T_Expression -> T_Type -> T_Expression sem_Expression_Typed range_ expression_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _typeOidGam :: IdDefOccGam _lhsOconNm :: Name _typeOnmLev :: NmLev _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 234, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 346, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 52, column 9) _typeOnmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 220, column 9) _pp = _expressionIpp >#< "::" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 499, column 9) _eh = rngLift range_ EH.Expr_TypeAs False _typeIeh _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 218, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq `Seq.union` _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam `gamAddGam` _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap . _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam `gamUnion` _typeIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (chain) _typeOgUniq = _expressionIgUniq -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _typeOtopInstanceNmL = _expressionItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Negate :: Range -> T_Expression -> T_Expression sem_Expression_Negate range_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 496, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [hsnNegate] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 498, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_expressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 24, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 222, column 9) _pp = "-" >#< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 501, column 9) _eh = ehExpVarApp range_ _refname [_expressionIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Annotate :: Range -> T_ExpressionAnnotation -> T_Expression -> T_Expression sem_Expression_Annotate range_ annotation_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _annotationOcaseId :: UID _annotationOfixityGam :: FixityGam _annotationOgUniq :: UID _annotationOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _annotationOidGam :: IdDefOccGam _annotationOmoduleNm :: HsName _annotationOnmLev :: NmLev _annotationOopts :: EHCOpts _annotationOpatchEhNmInInstance :: PatchEhNmInInstance _annotationOpragmas :: (Set.Set Pragma.Pragma) _annotationOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _annotationIeh :: (EH.ExprAnn) _annotationIerrSq :: ErrSq _annotationIgUniq :: UID _annotationIidUseOccGam :: IdUseOccGam _annotationIpp :: PP_Doc _annotationIppWrap :: (PP_Doc -> PP_Doc) _annotationItopInstanceNmL :: ([HsName]) _annotationIundefOccGam :: IdUseOccGam _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 503, column 17) _eh = rngLift range_ EH.Expr_Ann _annotationIeh _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _annotationIerrSq `Seq.union` _expressionIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _annotationIidUseOccGam `gamAddGam` _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _annotationIpp >-< _expressionIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _annotationIppWrap . _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _annotationIundefOccGam `gamUnion` _expressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _annotationOcaseId = _lhsIcaseId -- copy rule (down) _annotationOfixityGam = _lhsIfixityGam -- copy rule (down) _annotationOgUniq = _lhsIgUniq -- copy rule (down) _annotationOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _annotationOidGam = _lhsIidGam -- copy rule (down) _annotationOmoduleNm = _lhsImoduleNm -- copy rule (down) _annotationOnmLev = _lhsInmLev -- copy rule (down) _annotationOopts = _lhsIopts -- copy rule (down) _annotationOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _annotationOpragmas = _lhsIpragmas -- copy rule (down) _annotationOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _expressionOgUniq = _annotationIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (chain) _expressionOtopInstanceNmL = _annotationItopInstanceNmL ( _annotationIeh,_annotationIerrSq,_annotationIgUniq,_annotationIidUseOccGam,_annotationIpp,_annotationIppWrap,_annotationItopInstanceNmL,_annotationIundefOccGam) = annotation_ _annotationOcaseId _annotationOfixityGam _annotationOgUniq _annotationOgenerDerivMp _annotationOidGam _annotationOmoduleNm _annotationOnmLev _annotationOopts _annotationOpatchEhNmInInstance _annotationOpragmas _annotationOtopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_ImpredicativeApplication :: Range -> T_Expression -> T_Expressions -> T_Expression sem_Expression_ImpredicativeApplication range_ function_ arguments_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _functionOcaseId :: UID _functionOfixityGam :: FixityGam _functionOgUniq :: UID _functionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _functionOidGam :: IdDefOccGam _functionOmoduleNm :: HsName _functionOnmLev :: NmLev _functionOopts :: EHCOpts _functionOpatchEhNmInInstance :: PatchEhNmInInstance _functionOpragmas :: (Set.Set Pragma.Pragma) _functionOtopInstanceNmL :: ([HsName]) _argumentsOcaseId :: UID _argumentsOfixityGam :: FixityGam _argumentsOgUniq :: UID _argumentsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _argumentsOidGam :: IdDefOccGam _argumentsOmoduleNm :: HsName _argumentsOnmLev :: NmLev _argumentsOopts :: EHCOpts _argumentsOpatchEhNmInInstance :: PatchEhNmInInstance _argumentsOpragmas :: (Set.Set Pragma.Pragma) _argumentsOtopInstanceNmL :: ([HsName]) _functionIconNm :: Name _functionIeh :: (EH.Expr) _functionIerrSq :: ErrSq _functionIgUniq :: UID _functionIidUseOccGam :: IdUseOccGam _functionIopChain :: (OpChain EH.Expr) _functionIoperatorName :: MaybeName _functionIpp :: PP_Doc _functionIppWrap :: (PP_Doc -> PP_Doc) _functionItopInstanceNmL :: ([HsName]) _functionIundefOccGam :: IdUseOccGam _argumentsIeh :: ([EH.Expr]) _argumentsIerrSq :: ErrSq _argumentsIgUniq :: UID _argumentsIidUseOccGam :: IdUseOccGam _argumentsIpp :: PP_Doc _argumentsIppL :: ([PP_Doc]) _argumentsIppWrap :: (PP_Doc -> PP_Doc) _argumentsItopInstanceNmL :: ([HsName]) _argumentsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 224, column 9) _pp = _functionIpp >#< "~" >|< _argumentsIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 505, column 9) _eh = ehExpApp' (rngLift range_ EH.Expr_AppImpred) range_ _functionIeh _argumentsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _functionIerrSq `Seq.union` _argumentsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _functionIidUseOccGam `gamAddGam` _argumentsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _functionIppWrap . _argumentsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _functionIundefOccGam `gamUnion` _argumentsIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _argumentsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _argumentsItopInstanceNmL -- copy rule (down) _functionOcaseId = _lhsIcaseId -- copy rule (down) _functionOfixityGam = _lhsIfixityGam -- copy rule (down) _functionOgUniq = _lhsIgUniq -- copy rule (down) _functionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _functionOidGam = _lhsIidGam -- copy rule (down) _functionOmoduleNm = _lhsImoduleNm -- copy rule (down) _functionOnmLev = _lhsInmLev -- copy rule (down) _functionOopts = _lhsIopts -- copy rule (down) _functionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _functionOpragmas = _lhsIpragmas -- copy rule (down) _functionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _argumentsOcaseId = _lhsIcaseId -- copy rule (down) _argumentsOfixityGam = _lhsIfixityGam -- copy rule (chain) _argumentsOgUniq = _functionIgUniq -- copy rule (down) _argumentsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _argumentsOidGam = _lhsIidGam -- copy rule (down) _argumentsOmoduleNm = _lhsImoduleNm -- copy rule (down) _argumentsOnmLev = _lhsInmLev -- copy rule (down) _argumentsOopts = _lhsIopts -- copy rule (down) _argumentsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _argumentsOpragmas = _lhsIpragmas -- copy rule (chain) _argumentsOtopInstanceNmL = _functionItopInstanceNmL ( _functionIconNm,_functionIeh,_functionIerrSq,_functionIgUniq,_functionIidUseOccGam,_functionIopChain,_functionIoperatorName,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionIundefOccGam) = function_ _functionOcaseId _functionOfixityGam _functionOgUniq _functionOgenerDerivMp _functionOidGam _functionOmoduleNm _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOpragmas _functionOtopInstanceNmL ( _argumentsIeh,_argumentsIerrSq,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsIundefOccGam) = arguments_ _argumentsOcaseId _argumentsOfixityGam _argumentsOgUniq _argumentsOgenerDerivMp _argumentsOidGam _argumentsOmoduleNm _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOpragmas _argumentsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_If :: Range -> T_Expression -> T_Expression -> T_Expression -> T_Expression sem_Expression_If range_ guardExpression_ thenExpression_ elseExpression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _guardExpressionOcaseId :: UID _guardExpressionOfixityGam :: FixityGam _guardExpressionOgUniq :: UID _guardExpressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _guardExpressionOidGam :: IdDefOccGam _guardExpressionOmoduleNm :: HsName _guardExpressionOnmLev :: NmLev _guardExpressionOopts :: EHCOpts _guardExpressionOpatchEhNmInInstance :: PatchEhNmInInstance _guardExpressionOpragmas :: (Set.Set Pragma.Pragma) _guardExpressionOtopInstanceNmL :: ([HsName]) _thenExpressionOcaseId :: UID _thenExpressionOfixityGam :: FixityGam _thenExpressionOgUniq :: UID _thenExpressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _thenExpressionOidGam :: IdDefOccGam _thenExpressionOmoduleNm :: HsName _thenExpressionOnmLev :: NmLev _thenExpressionOopts :: EHCOpts _thenExpressionOpatchEhNmInInstance :: PatchEhNmInInstance _thenExpressionOpragmas :: (Set.Set Pragma.Pragma) _thenExpressionOtopInstanceNmL :: ([HsName]) _elseExpressionOcaseId :: UID _elseExpressionOfixityGam :: FixityGam _elseExpressionOgUniq :: UID _elseExpressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _elseExpressionOidGam :: IdDefOccGam _elseExpressionOmoduleNm :: HsName _elseExpressionOnmLev :: NmLev _elseExpressionOopts :: EHCOpts _elseExpressionOpatchEhNmInInstance :: PatchEhNmInInstance _elseExpressionOpragmas :: (Set.Set Pragma.Pragma) _elseExpressionOtopInstanceNmL :: ([HsName]) _guardExpressionIconNm :: Name _guardExpressionIeh :: (EH.Expr) _guardExpressionIerrSq :: ErrSq _guardExpressionIgUniq :: UID _guardExpressionIidUseOccGam :: IdUseOccGam _guardExpressionIopChain :: (OpChain EH.Expr) _guardExpressionIoperatorName :: MaybeName _guardExpressionIpp :: PP_Doc _guardExpressionIppWrap :: (PP_Doc -> PP_Doc) _guardExpressionItopInstanceNmL :: ([HsName]) _guardExpressionIundefOccGam :: IdUseOccGam _thenExpressionIconNm :: Name _thenExpressionIeh :: (EH.Expr) _thenExpressionIerrSq :: ErrSq _thenExpressionIgUniq :: UID _thenExpressionIidUseOccGam :: IdUseOccGam _thenExpressionIopChain :: (OpChain EH.Expr) _thenExpressionIoperatorName :: MaybeName _thenExpressionIpp :: PP_Doc _thenExpressionIppWrap :: (PP_Doc -> PP_Doc) _thenExpressionItopInstanceNmL :: ([HsName]) _thenExpressionIundefOccGam :: IdUseOccGam _elseExpressionIconNm :: Name _elseExpressionIeh :: (EH.Expr) _elseExpressionIerrSq :: ErrSq _elseExpressionIgUniq :: UID _elseExpressionIidUseOccGam :: IdUseOccGam _elseExpressionIopChain :: (OpChain EH.Expr) _elseExpressionIoperatorName :: MaybeName _elseExpressionIpp :: PP_Doc _elseExpressionIppWrap :: (PP_Doc -> PP_Doc) _elseExpressionItopInstanceNmL :: ([HsName]) _elseExpressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 508, column 29) (_,_valrefnames,_idUseOccGamVal,_errIdUseVal) = mkUseOccGam _lhsIopts _lhsIidGam [hsnTrue,hsnFalse] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 510, column 29) (_typerefname,_,_idUseOccGamType,_errIdUseType) = mkUseOccGam _lhsIopts _lhsIidGam [hsnBool] IdOcc_Type IdAsp_Type_Con range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 508, column 9) _idUseOccGam = gamUnions [_idUseOccGamVal,_idUseOccGamType] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 513, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_guardExpressionIidUseOccGam,_thenExpressionIidUseOccGam,_elseExpressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 30, column 9) _errSq = Seq.unions [Seq.fromList _errIdUseVal, Seq.fromList _errIdUseType, _guardExpressionIerrSq, _thenExpressionIerrSq, _elseExpressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 226, column 9) _pp = "if" >#< _guardExpressionIpp >-< "then" >#< _thenExpressionIpp >-< "else" >#< _elseExpressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 507, column 9) _eh = EH.mkIf' (_typerefname : _valrefnames) range_ _guardExpressionIeh _thenExpressionIeh _elseExpressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _guardExpressionIppWrap . _thenExpressionIppWrap . _elseExpressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _guardExpressionIundefOccGam `gamUnion` _thenExpressionIundefOccGam `gamUnion` _elseExpressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _elseExpressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _elseExpressionItopInstanceNmL -- copy rule (down) _guardExpressionOcaseId = _lhsIcaseId -- copy rule (down) _guardExpressionOfixityGam = _lhsIfixityGam -- copy rule (down) _guardExpressionOgUniq = _lhsIgUniq -- copy rule (down) _guardExpressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _guardExpressionOidGam = _lhsIidGam -- copy rule (down) _guardExpressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _guardExpressionOnmLev = _lhsInmLev -- copy rule (down) _guardExpressionOopts = _lhsIopts -- copy rule (down) _guardExpressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _guardExpressionOpragmas = _lhsIpragmas -- copy rule (down) _guardExpressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _thenExpressionOcaseId = _lhsIcaseId -- copy rule (down) _thenExpressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _thenExpressionOgUniq = _guardExpressionIgUniq -- copy rule (down) _thenExpressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _thenExpressionOidGam = _lhsIidGam -- copy rule (down) _thenExpressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _thenExpressionOnmLev = _lhsInmLev -- copy rule (down) _thenExpressionOopts = _lhsIopts -- copy rule (down) _thenExpressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _thenExpressionOpragmas = _lhsIpragmas -- copy rule (chain) _thenExpressionOtopInstanceNmL = _guardExpressionItopInstanceNmL -- copy rule (down) _elseExpressionOcaseId = _lhsIcaseId -- copy rule (down) _elseExpressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _elseExpressionOgUniq = _thenExpressionIgUniq -- copy rule (down) _elseExpressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _elseExpressionOidGam = _lhsIidGam -- copy rule (down) _elseExpressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _elseExpressionOnmLev = _lhsInmLev -- copy rule (down) _elseExpressionOopts = _lhsIopts -- copy rule (down) _elseExpressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _elseExpressionOpragmas = _lhsIpragmas -- copy rule (chain) _elseExpressionOtopInstanceNmL = _thenExpressionItopInstanceNmL ( _guardExpressionIconNm,_guardExpressionIeh,_guardExpressionIerrSq,_guardExpressionIgUniq,_guardExpressionIidUseOccGam,_guardExpressionIopChain,_guardExpressionIoperatorName,_guardExpressionIpp,_guardExpressionIppWrap,_guardExpressionItopInstanceNmL,_guardExpressionIundefOccGam) = guardExpression_ _guardExpressionOcaseId _guardExpressionOfixityGam _guardExpressionOgUniq _guardExpressionOgenerDerivMp _guardExpressionOidGam _guardExpressionOmoduleNm _guardExpressionOnmLev _guardExpressionOopts _guardExpressionOpatchEhNmInInstance _guardExpressionOpragmas _guardExpressionOtopInstanceNmL ( _thenExpressionIconNm,_thenExpressionIeh,_thenExpressionIerrSq,_thenExpressionIgUniq,_thenExpressionIidUseOccGam,_thenExpressionIopChain,_thenExpressionIoperatorName,_thenExpressionIpp,_thenExpressionIppWrap,_thenExpressionItopInstanceNmL,_thenExpressionIundefOccGam) = thenExpression_ _thenExpressionOcaseId _thenExpressionOfixityGam _thenExpressionOgUniq _thenExpressionOgenerDerivMp _thenExpressionOidGam _thenExpressionOmoduleNm _thenExpressionOnmLev _thenExpressionOopts _thenExpressionOpatchEhNmInInstance _thenExpressionOpragmas _thenExpressionOtopInstanceNmL ( _elseExpressionIconNm,_elseExpressionIeh,_elseExpressionIerrSq,_elseExpressionIgUniq,_elseExpressionIidUseOccGam,_elseExpressionIopChain,_elseExpressionIoperatorName,_elseExpressionIpp,_elseExpressionIppWrap,_elseExpressionItopInstanceNmL,_elseExpressionIundefOccGam) = elseExpression_ _elseExpressionOcaseId _elseExpressionOfixityGam _elseExpressionOgUniq _elseExpressionOgenerDerivMp _elseExpressionOidGam _elseExpressionOmoduleNm _elseExpressionOnmLev _elseExpressionOopts _elseExpressionOpatchEhNmInInstance _elseExpressionOpragmas _elseExpressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Case :: Range -> T_Expression -> T_Alternatives -> T_Expression sem_Expression_Case range_ expression_ alternatives_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _expressionOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _alternativesOcaseId :: UID _alternativesOfixityGam :: FixityGam _alternativesOgUniq :: UID _alternativesOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _alternativesOidGam :: IdDefOccGam _alternativesOmoduleNm :: HsName _alternativesOnmLev :: NmLev _alternativesOopts :: EHCOpts _alternativesOpatchEhNmInInstance :: PatchEhNmInInstance _alternativesOpragmas :: (Set.Set Pragma.Pragma) _alternativesOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam _alternativesIeh :: ([EH.CaseAlt]) _alternativesIerrSq :: ErrSq _alternativesIgUniq :: UID _alternativesIidUseOccGam :: IdUseOccGam _alternativesIpp :: PP_Doc _alternativesIppWrap :: (PP_Doc -> PP_Doc) _alternativesItopInstanceNmL :: ([HsName]) _alternativesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 228, column 9) _pp = "case" >#< _expressionIpp >#< "of" >-< indent 2 _alternativesIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 509, column 9) _eh = EH.mkCase' range_ _expressionIeh (Just $ Set.singleton _caseId) Set.empty False _alternativesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 868, column 9) _caseId = _lUniq -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- -- generated by the unique rule mechanism. (_expressionOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq `Seq.union` _alternativesIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam `gamAddGam` _alternativesIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap . _alternativesIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam `gamUnion` _alternativesIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _alternativesIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _alternativesItopInstanceNmL -- copy rule (from local) _expressionOcaseId = _caseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _alternativesOcaseId = _caseId -- copy rule (down) _alternativesOfixityGam = _lhsIfixityGam -- copy rule (chain) _alternativesOgUniq = _expressionIgUniq -- copy rule (down) _alternativesOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _alternativesOidGam = _lhsIidGam -- copy rule (down) _alternativesOmoduleNm = _lhsImoduleNm -- copy rule (down) _alternativesOnmLev = _lhsInmLev -- copy rule (down) _alternativesOopts = _lhsIopts -- copy rule (down) _alternativesOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _alternativesOpragmas = _lhsIpragmas -- copy rule (chain) _alternativesOtopInstanceNmL = _expressionItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL ( _alternativesIeh,_alternativesIerrSq,_alternativesIgUniq,_alternativesIidUseOccGam,_alternativesIpp,_alternativesIppWrap,_alternativesItopInstanceNmL,_alternativesIundefOccGam) = alternatives_ _alternativesOcaseId _alternativesOfixityGam _alternativesOgUniq _alternativesOgenerDerivMp _alternativesOidGam _alternativesOmoduleNm _alternativesOnmLev _alternativesOopts _alternativesOpatchEhNmInInstance _alternativesOpragmas _alternativesOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_List :: Range -> T_Expressions -> T_Expression sem_Expression_List range_ expressions_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionsOcaseId :: UID _expressionsOfixityGam :: FixityGam _expressionsOgUniq :: UID _expressionsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionsOidGam :: IdDefOccGam _expressionsOmoduleNm :: HsName _expressionsOnmLev :: NmLev _expressionsOopts :: EHCOpts _expressionsOpatchEhNmInInstance :: PatchEhNmInInstance _expressionsOpragmas :: (Set.Set Pragma.Pragma) _expressionsOtopInstanceNmL :: ([HsName]) _expressionsIeh :: ([EH.Expr]) _expressionsIerrSq :: ErrSq _expressionsIgUniq :: UID _expressionsIidUseOccGam :: IdUseOccGam _expressionsIpp :: PP_Doc _expressionsIppL :: ([PP_Doc]) _expressionsIppWrap :: (PP_Doc -> PP_Doc) _expressionsItopInstanceNmL :: ([HsName]) _expressionsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 500, column 29) (_,_refnames,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [hsnDataListAltCons,hsnDataListAltNil] IdOcc_Val IdAsp_Val_Con range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 502, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_expressionsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 26, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _expressionsIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 230, column 9) _pp = ppBracketsCommas _expressionsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 511, column 9) _eh = foldr (\l r -> ehExpConApp range_ (_refnames !! 0) [l,r]) (rngLift range_ EH.Expr_Con (_refnames !! 1)) _expressionsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionsIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionsItopInstanceNmL -- copy rule (down) _expressionsOcaseId = _lhsIcaseId -- copy rule (down) _expressionsOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionsOgUniq = _lhsIgUniq -- copy rule (down) _expressionsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionsOidGam = _lhsIidGam -- copy rule (down) _expressionsOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionsOnmLev = _lhsInmLev -- copy rule (down) _expressionsOopts = _lhsIopts -- copy rule (down) _expressionsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionsOpragmas = _lhsIpragmas -- copy rule (down) _expressionsOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionsIeh,_expressionsIerrSq,_expressionsIgUniq,_expressionsIidUseOccGam,_expressionsIpp,_expressionsIppL,_expressionsIppWrap,_expressionsItopInstanceNmL,_expressionsIundefOccGam) = expressions_ _expressionsOcaseId _expressionsOfixityGam _expressionsOgUniq _expressionsOgenerDerivMp _expressionsOidGam _expressionsOmoduleNm _expressionsOnmLev _expressionsOopts _expressionsOpatchEhNmInInstance _expressionsOpragmas _expressionsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Enum :: Range -> T_Expression -> T_MaybeExpression -> T_MaybeExpression -> T_Expression sem_Expression_Enum range_ from_ then_ to_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _fromOcaseId :: UID _fromOfixityGam :: FixityGam _fromOgUniq :: UID _fromOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _fromOidGam :: IdDefOccGam _fromOmoduleNm :: HsName _fromOnmLev :: NmLev _fromOopts :: EHCOpts _fromOpatchEhNmInInstance :: PatchEhNmInInstance _fromOpragmas :: (Set.Set Pragma.Pragma) _fromOtopInstanceNmL :: ([HsName]) _thenOcaseId :: UID _thenOfixityGam :: FixityGam _thenOgUniq :: UID _thenOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _thenOidGam :: IdDefOccGam _thenOmoduleNm :: HsName _thenOnmLev :: NmLev _thenOopts :: EHCOpts _thenOpatchEhNmInInstance :: PatchEhNmInInstance _thenOpragmas :: (Set.Set Pragma.Pragma) _thenOtopInstanceNmL :: ([HsName]) _toOcaseId :: UID _toOfixityGam :: FixityGam _toOgUniq :: UID _toOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _toOidGam :: IdDefOccGam _toOmoduleNm :: HsName _toOnmLev :: NmLev _toOopts :: EHCOpts _toOpatchEhNmInInstance :: PatchEhNmInInstance _toOpragmas :: (Set.Set Pragma.Pragma) _toOtopInstanceNmL :: ([HsName]) _fromIconNm :: Name _fromIeh :: (EH.Expr) _fromIerrSq :: ErrSq _fromIgUniq :: UID _fromIidUseOccGam :: IdUseOccGam _fromIopChain :: (OpChain EH.Expr) _fromIoperatorName :: MaybeName _fromIpp :: PP_Doc _fromIppWrap :: (PP_Doc -> PP_Doc) _fromItopInstanceNmL :: ([HsName]) _fromIundefOccGam :: IdUseOccGam _thenIeh :: (Maybe EH.Expr) _thenIerrSq :: ErrSq _thenIgUniq :: UID _thenIidUseOccGam :: IdUseOccGam _thenIpp :: PP_Doc _thenIppMb :: (Maybe PP_Doc) _thenIppWrap :: (PP_Doc -> PP_Doc) _thenItopInstanceNmL :: ([HsName]) _thenIundefOccGam :: IdUseOccGam _toIeh :: (Maybe EH.Expr) _toIerrSq :: ErrSq _toIgUniq :: UID _toIidUseOccGam :: IdUseOccGam _toIpp :: PP_Doc _toIppMb :: (Maybe PP_Doc) _toIppWrap :: (PP_Doc -> PP_Doc) _toItopInstanceNmL :: ([HsName]) _toIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 504, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [_enumNm] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 506, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_fromIidUseOccGam,_thenIidUseOccGam,_toIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 28, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _fromIerrSq, _thenIerrSq, _toIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 232, column 9) _pp = case (_fromIpp,_thenIppMb,_toIppMb) of (fr,Just th,Just to) -> ppBrackets (fr >|< "," >#< th >#< ".." >#< to) (fr,Just th,Nothing) -> ppBrackets (fr >|< "," >#< th >#< ".." ) (fr,Nothing,Just to) -> ppBrackets (fr >#< ".." >#< to ) (fr,Nothing,Nothing) -> ppBrackets (fr >#< ".." ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 513, column 9) _enumNm = case (_fromIeh,_thenIeh,_toIeh) of (fr,Just th,Just to) -> hsnEnumFromThenTo (fr,Just th,Nothing) -> hsnEnumFromThen (fr,Nothing,Just to) -> hsnEnumFromTo (fr,Nothing,Nothing) -> hsnEnumFrom -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 513, column 9) _eh = case (_fromIeh,_thenIeh,_toIeh) of (fr,Just th,Just to) -> ehExpVarApp range_ _refname [fr,th,to] (fr,Just th,Nothing) -> ehExpVarApp range_ _refname [fr,th ] (fr,Nothing,Just to) -> ehExpVarApp range_ _refname [fr ,to] (fr,Nothing,Nothing) -> ehExpVarApp range_ _refname [fr ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _fromIppWrap . _thenIppWrap . _toIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _fromIundefOccGam `gamUnion` _thenIundefOccGam `gamUnion` _toIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _toIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _toItopInstanceNmL -- copy rule (down) _fromOcaseId = _lhsIcaseId -- copy rule (down) _fromOfixityGam = _lhsIfixityGam -- copy rule (down) _fromOgUniq = _lhsIgUniq -- copy rule (down) _fromOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _fromOidGam = _lhsIidGam -- copy rule (down) _fromOmoduleNm = _lhsImoduleNm -- copy rule (down) _fromOnmLev = _lhsInmLev -- copy rule (down) _fromOopts = _lhsIopts -- copy rule (down) _fromOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _fromOpragmas = _lhsIpragmas -- copy rule (down) _fromOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _thenOcaseId = _lhsIcaseId -- copy rule (down) _thenOfixityGam = _lhsIfixityGam -- copy rule (chain) _thenOgUniq = _fromIgUniq -- copy rule (down) _thenOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _thenOidGam = _lhsIidGam -- copy rule (down) _thenOmoduleNm = _lhsImoduleNm -- copy rule (down) _thenOnmLev = _lhsInmLev -- copy rule (down) _thenOopts = _lhsIopts -- copy rule (down) _thenOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _thenOpragmas = _lhsIpragmas -- copy rule (chain) _thenOtopInstanceNmL = _fromItopInstanceNmL -- copy rule (down) _toOcaseId = _lhsIcaseId -- copy rule (down) _toOfixityGam = _lhsIfixityGam -- copy rule (chain) _toOgUniq = _thenIgUniq -- copy rule (down) _toOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _toOidGam = _lhsIidGam -- copy rule (down) _toOmoduleNm = _lhsImoduleNm -- copy rule (down) _toOnmLev = _lhsInmLev -- copy rule (down) _toOopts = _lhsIopts -- copy rule (down) _toOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _toOpragmas = _lhsIpragmas -- copy rule (chain) _toOtopInstanceNmL = _thenItopInstanceNmL ( _fromIconNm,_fromIeh,_fromIerrSq,_fromIgUniq,_fromIidUseOccGam,_fromIopChain,_fromIoperatorName,_fromIpp,_fromIppWrap,_fromItopInstanceNmL,_fromIundefOccGam) = from_ _fromOcaseId _fromOfixityGam _fromOgUniq _fromOgenerDerivMp _fromOidGam _fromOmoduleNm _fromOnmLev _fromOopts _fromOpatchEhNmInInstance _fromOpragmas _fromOtopInstanceNmL ( _thenIeh,_thenIerrSq,_thenIgUniq,_thenIidUseOccGam,_thenIpp,_thenIppMb,_thenIppWrap,_thenItopInstanceNmL,_thenIundefOccGam) = then_ _thenOcaseId _thenOfixityGam _thenOgUniq _thenOgenerDerivMp _thenOidGam _thenOmoduleNm _thenOnmLev _thenOopts _thenOpatchEhNmInInstance _thenOpragmas _thenOtopInstanceNmL ( _toIeh,_toIerrSq,_toIgUniq,_toIidUseOccGam,_toIpp,_toIppMb,_toIppWrap,_toItopInstanceNmL,_toIundefOccGam) = to_ _toOcaseId _toOfixityGam _toOgUniq _toOgenerDerivMp _toOidGam _toOmoduleNm _toOnmLev _toOopts _toOpatchEhNmInInstance _toOpragmas _toOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Comprehension :: Range -> T_Expression -> T_Qualifiers -> T_Expression sem_Expression_Comprehension range_ expression_ qualifiers_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _expressionOidGam :: IdDefOccGam _qualifiersOidGam :: IdDefOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _qualifiersOcaseId :: UID _qualifiersOfixityGam :: FixityGam _qualifiersOgUniq :: UID _qualifiersOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _qualifiersOmoduleNm :: HsName _qualifiersOnmLev :: NmLev _qualifiersOopts :: EHCOpts _qualifiersOpatchEhNmInInstance :: PatchEhNmInInstance _qualifiersOpragmas :: (Set.Set Pragma.Pragma) _qualifiersOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam _qualifiersIeh :: ([EH.Expr -> EH.Expr]) _qualifiersIerrSq :: ErrSq _qualifiersIgUniq :: UID _qualifiersIidGam :: IdDefOccGam _qualifiersIidUseOccGam :: IdUseOccGam _qualifiersIpp :: PP_Doc _qualifiersIppL :: ([PP_Doc]) _qualifiersIppWrap :: (PP_Doc -> PP_Doc) _qualifiersItopInstanceNmL :: ([HsName]) _qualifiersIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 348, column 9) _expressionOidGam = _qualifiersIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 349, column 9) _qualifiersOidGam = _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 238, column 9) _pp = ppBrackets (_expressionIpp >#< "|" >#< ppCommas' _qualifiersIppL) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 524, column 9) _eh = foldr ($) _expressionIeh _qualifiersIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq `Seq.union` _qualifiersIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam `gamAddGam` _qualifiersIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap . _qualifiersIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam `gamUnion` _qualifiersIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _qualifiersIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _qualifiersItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _qualifiersOcaseId = _lhsIcaseId -- copy rule (down) _qualifiersOfixityGam = _lhsIfixityGam -- copy rule (chain) _qualifiersOgUniq = _expressionIgUniq -- copy rule (down) _qualifiersOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _qualifiersOmoduleNm = _lhsImoduleNm -- copy rule (down) _qualifiersOnmLev = _lhsInmLev -- copy rule (down) _qualifiersOopts = _lhsIopts -- copy rule (down) _qualifiersOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _qualifiersOpragmas = _lhsIpragmas -- copy rule (chain) _qualifiersOtopInstanceNmL = _expressionItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL ( _qualifiersIeh,_qualifiersIerrSq,_qualifiersIgUniq,_qualifiersIidGam,_qualifiersIidUseOccGam,_qualifiersIpp,_qualifiersIppL,_qualifiersIppWrap,_qualifiersItopInstanceNmL,_qualifiersIundefOccGam) = qualifiers_ _qualifiersOcaseId _qualifiersOfixityGam _qualifiersOgUniq _qualifiersOgenerDerivMp _qualifiersOidGam _qualifiersOmoduleNm _qualifiersOnmLev _qualifiersOopts _qualifiersOpatchEhNmInInstance _qualifiersOpragmas _qualifiersOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_RecordConstruction :: Range -> Name -> T_RecordExpressionBindings -> T_Expression sem_Expression_RecordConstruction range_ name_ recordExpressionBindings_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _recordExpressionBindingsOcaseId :: UID _recordExpressionBindingsOfixityGam :: FixityGam _recordExpressionBindingsOgUniq :: UID _recordExpressionBindingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _recordExpressionBindingsOidGam :: IdDefOccGam _recordExpressionBindingsOmoduleNm :: HsName _recordExpressionBindingsOnmLev :: NmLev _recordExpressionBindingsOopts :: EHCOpts _recordExpressionBindingsOpatchEhNmInInstance :: PatchEhNmInInstance _recordExpressionBindingsOpragmas :: (Set.Set Pragma.Pragma) _recordExpressionBindingsOtopInstanceNmL :: ([HsName]) _recordExpressionBindingsIeh :: ([EH.DataFieldExpr -> EH.DataFieldExpr]) _recordExpressionBindingsIerrSq :: ErrSq _recordExpressionBindingsIgUniq :: UID _recordExpressionBindingsIidUseOccGam :: IdUseOccGam _recordExpressionBindingsIpp :: PP_Doc _recordExpressionBindingsIppL :: ([PP_Doc]) _recordExpressionBindingsIppWrap :: (PP_Doc -> PP_Doc) _recordExpressionBindingsItopInstanceNmL :: ([HsName]) _recordExpressionBindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 483, column 9) _idAsp = IdAsp_Val_Con -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 486, column 29) (_refname,_,_idUseOccGam,_errIdUse) = let x@(n,_,_,_) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Val _idAsp range_ dbgnm = mkHNm "putStrLn" dbgoc = IdOcc dbgnm IdOcc_Val in x -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 494, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_recordExpressionBindingsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 32, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _recordExpressionBindingsIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 240, column 9) _pp = name_ >#< ppCurlysCommas' _recordExpressionBindingsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 526, column 9) _eh = rngLift range_ EH.Expr_DataFields $ foldl (flip ($)) (rngLift range_ EH.DataFieldExpr_Con _refname) _recordExpressionBindingsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _recordExpressionBindingsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _recordExpressionBindingsIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _recordExpressionBindingsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _recordExpressionBindingsItopInstanceNmL -- copy rule (down) _recordExpressionBindingsOcaseId = _lhsIcaseId -- copy rule (down) _recordExpressionBindingsOfixityGam = _lhsIfixityGam -- copy rule (down) _recordExpressionBindingsOgUniq = _lhsIgUniq -- copy rule (down) _recordExpressionBindingsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _recordExpressionBindingsOidGam = _lhsIidGam -- copy rule (down) _recordExpressionBindingsOmoduleNm = _lhsImoduleNm -- copy rule (down) _recordExpressionBindingsOnmLev = _lhsInmLev -- copy rule (down) _recordExpressionBindingsOopts = _lhsIopts -- copy rule (down) _recordExpressionBindingsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _recordExpressionBindingsOpragmas = _lhsIpragmas -- copy rule (down) _recordExpressionBindingsOtopInstanceNmL = _lhsItopInstanceNmL ( _recordExpressionBindingsIeh,_recordExpressionBindingsIerrSq,_recordExpressionBindingsIgUniq,_recordExpressionBindingsIidUseOccGam,_recordExpressionBindingsIpp,_recordExpressionBindingsIppL,_recordExpressionBindingsIppWrap,_recordExpressionBindingsItopInstanceNmL,_recordExpressionBindingsIundefOccGam) = recordExpressionBindings_ _recordExpressionBindingsOcaseId _recordExpressionBindingsOfixityGam _recordExpressionBindingsOgUniq _recordExpressionBindingsOgenerDerivMp _recordExpressionBindingsOidGam _recordExpressionBindingsOmoduleNm _recordExpressionBindingsOnmLev _recordExpressionBindingsOopts _recordExpressionBindingsOpatchEhNmInInstance _recordExpressionBindingsOpragmas _recordExpressionBindingsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_RecordUpdate :: Range -> T_Expression -> T_RecordExpressionBindings -> T_Expression sem_Expression_RecordUpdate range_ expression_ recordExpressionBindings_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _recordExpressionBindingsOcaseId :: UID _recordExpressionBindingsOfixityGam :: FixityGam _recordExpressionBindingsOgUniq :: UID _recordExpressionBindingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _recordExpressionBindingsOidGam :: IdDefOccGam _recordExpressionBindingsOmoduleNm :: HsName _recordExpressionBindingsOnmLev :: NmLev _recordExpressionBindingsOopts :: EHCOpts _recordExpressionBindingsOpatchEhNmInInstance :: PatchEhNmInInstance _recordExpressionBindingsOpragmas :: (Set.Set Pragma.Pragma) _recordExpressionBindingsOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam _recordExpressionBindingsIeh :: ([EH.DataFieldExpr -> EH.DataFieldExpr]) _recordExpressionBindingsIerrSq :: ErrSq _recordExpressionBindingsIgUniq :: UID _recordExpressionBindingsIidUseOccGam :: IdUseOccGam _recordExpressionBindingsIpp :: PP_Doc _recordExpressionBindingsIppL :: ([PP_Doc]) _recordExpressionBindingsIppWrap :: (PP_Doc -> PP_Doc) _recordExpressionBindingsItopInstanceNmL :: ([HsName]) _recordExpressionBindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 242, column 9) _pp = _expressionIpp >#< ppCurlysCommas' _recordExpressionBindingsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 528, column 9) _eh = case _recordExpressionBindingsIeh of b@(_:_) -> rngLift range_ EH.Expr_DataFields $ foldl (flip ($)) (rngLift range_ EH.DataFieldExpr_Expr _expressionIeh) b _ -> _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq `Seq.union` _recordExpressionBindingsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam `gamAddGam` _recordExpressionBindingsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap . _recordExpressionBindingsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam `gamUnion` _recordExpressionBindingsIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _recordExpressionBindingsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _recordExpressionBindingsItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _recordExpressionBindingsOcaseId = _lhsIcaseId -- copy rule (down) _recordExpressionBindingsOfixityGam = _lhsIfixityGam -- copy rule (chain) _recordExpressionBindingsOgUniq = _expressionIgUniq -- copy rule (down) _recordExpressionBindingsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _recordExpressionBindingsOidGam = _lhsIidGam -- copy rule (down) _recordExpressionBindingsOmoduleNm = _lhsImoduleNm -- copy rule (down) _recordExpressionBindingsOnmLev = _lhsInmLev -- copy rule (down) _recordExpressionBindingsOopts = _lhsIopts -- copy rule (down) _recordExpressionBindingsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _recordExpressionBindingsOpragmas = _lhsIpragmas -- copy rule (chain) _recordExpressionBindingsOtopInstanceNmL = _expressionItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL ( _recordExpressionBindingsIeh,_recordExpressionBindingsIerrSq,_recordExpressionBindingsIgUniq,_recordExpressionBindingsIidUseOccGam,_recordExpressionBindingsIpp,_recordExpressionBindingsIppL,_recordExpressionBindingsIppWrap,_recordExpressionBindingsItopInstanceNmL,_recordExpressionBindingsIundefOccGam) = recordExpressionBindings_ _recordExpressionBindingsOcaseId _recordExpressionBindingsOfixityGam _recordExpressionBindingsOgUniq _recordExpressionBindingsOgenerDerivMp _recordExpressionBindingsOidGam _recordExpressionBindingsOmoduleNm _recordExpressionBindingsOnmLev _recordExpressionBindingsOopts _recordExpressionBindingsOpatchEhNmInInstance _recordExpressionBindingsOpragmas _recordExpressionBindingsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_RowRecordUpdate :: Range -> T_Expression -> T_RowRecordExpressionUpdates -> T_Expression sem_Expression_RowRecordUpdate range_ expression_ rowRecordExpressionUpdates_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _rowRecordExpressionUpdatesOcaseId :: UID _rowRecordExpressionUpdatesOfixityGam :: FixityGam _rowRecordExpressionUpdatesOgUniq :: UID _rowRecordExpressionUpdatesOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _rowRecordExpressionUpdatesOidGam :: IdDefOccGam _rowRecordExpressionUpdatesOmoduleNm :: HsName _rowRecordExpressionUpdatesOnmLev :: NmLev _rowRecordExpressionUpdatesOopts :: EHCOpts _rowRecordExpressionUpdatesOpatchEhNmInInstance :: PatchEhNmInInstance _rowRecordExpressionUpdatesOpragmas :: (Set.Set Pragma.Pragma) _rowRecordExpressionUpdatesOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam _rowRecordExpressionUpdatesIeh :: ([EH.Expr -> EH.Expr]) _rowRecordExpressionUpdatesIerrSq :: ErrSq _rowRecordExpressionUpdatesIgUniq :: UID _rowRecordExpressionUpdatesIidUseOccGam :: IdUseOccGam _rowRecordExpressionUpdatesIpp :: PP_Doc _rowRecordExpressionUpdatesIppL :: ([PP_Doc]) _rowRecordExpressionUpdatesIppWrap :: (PP_Doc -> PP_Doc) _rowRecordExpressionUpdatesItopInstanceNmL :: ([HsName]) _rowRecordExpressionUpdatesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 244, column 9) _pp = ppAppTop (hsnRec,mkPPAppFun hsnRowEmpty _expressionIpp) _rowRecordExpressionUpdatesIppL _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 532, column 9) _eh = foldl (flip ($)) _expressionIeh _rowRecordExpressionUpdatesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq `Seq.union` _rowRecordExpressionUpdatesIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam `gamAddGam` _rowRecordExpressionUpdatesIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap . _rowRecordExpressionUpdatesIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam `gamUnion` _rowRecordExpressionUpdatesIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _rowRecordExpressionUpdatesIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rowRecordExpressionUpdatesItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _rowRecordExpressionUpdatesOcaseId = _lhsIcaseId -- copy rule (down) _rowRecordExpressionUpdatesOfixityGam = _lhsIfixityGam -- copy rule (chain) _rowRecordExpressionUpdatesOgUniq = _expressionIgUniq -- copy rule (down) _rowRecordExpressionUpdatesOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _rowRecordExpressionUpdatesOidGam = _lhsIidGam -- copy rule (down) _rowRecordExpressionUpdatesOmoduleNm = _lhsImoduleNm -- copy rule (down) _rowRecordExpressionUpdatesOnmLev = _lhsInmLev -- copy rule (down) _rowRecordExpressionUpdatesOopts = _lhsIopts -- copy rule (down) _rowRecordExpressionUpdatesOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _rowRecordExpressionUpdatesOpragmas = _lhsIpragmas -- copy rule (chain) _rowRecordExpressionUpdatesOtopInstanceNmL = _expressionItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL ( _rowRecordExpressionUpdatesIeh,_rowRecordExpressionUpdatesIerrSq,_rowRecordExpressionUpdatesIgUniq,_rowRecordExpressionUpdatesIidUseOccGam,_rowRecordExpressionUpdatesIpp,_rowRecordExpressionUpdatesIppL,_rowRecordExpressionUpdatesIppWrap,_rowRecordExpressionUpdatesItopInstanceNmL,_rowRecordExpressionUpdatesIundefOccGam) = rowRecordExpressionUpdates_ _rowRecordExpressionUpdatesOcaseId _rowRecordExpressionUpdatesOfixityGam _rowRecordExpressionUpdatesOgUniq _rowRecordExpressionUpdatesOgenerDerivMp _rowRecordExpressionUpdatesOidGam _rowRecordExpressionUpdatesOmoduleNm _rowRecordExpressionUpdatesOnmLev _rowRecordExpressionUpdatesOopts _rowRecordExpressionUpdatesOpatchEhNmInInstance _rowRecordExpressionUpdatesOpragmas _rowRecordExpressionUpdatesOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_RowRecordEmpty :: Range -> T_Expression sem_Expression_RowRecordEmpty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 247, column 9) _pp = hsnORec >|< hsnCRec -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 534, column 9) _eh = rngLift range_ EH.Expr_Rec (rngLift range_ EH.RecExpr_Empty) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_RowRecordSelect :: Range -> T_Expression -> Name -> T_Expression sem_Expression_RowRecordSelect range_ expression_ name_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 249, column 9) _pp = _expressionIpp >|< "->" >|< name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 536, column 9) _eh = rngLift range_ EH.Expr_Sel _expressionIeh name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_Do :: Range -> T_Statements -> T_Expression sem_Expression_Do range_ statements_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _statementsOcaseId :: UID _statementsOfixityGam :: FixityGam _statementsOgUniq :: UID _statementsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _statementsOidGam :: IdDefOccGam _statementsOmoduleNm :: HsName _statementsOnmLev :: NmLev _statementsOopts :: EHCOpts _statementsOpatchEhNmInInstance :: PatchEhNmInInstance _statementsOpragmas :: (Set.Set Pragma.Pragma) _statementsOtopInstanceNmL :: ([HsName]) _statementsIeh :: ([(EH.Expr,EH.Expr -> EH.Expr)]) _statementsIerrSq :: ErrSq _statementsIgUniq :: UID _statementsIidUseOccGam :: IdUseOccGam _statementsIpp :: PP_Doc _statementsIppL :: ([PP_Doc]) _statementsIppWrap :: (PP_Doc -> PP_Doc) _statementsItopInstanceNmL :: ([HsName]) _statementsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 251, column 9) _pp = "do" >#< vlist _statementsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 538, column 25) (_eh,_) = foldr1 (\(_,s) (e,_) -> (s e,undefined)) _statementsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _statementsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _statementsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _statementsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _statementsIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _statementsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _statementsItopInstanceNmL -- copy rule (down) _statementsOcaseId = _lhsIcaseId -- copy rule (down) _statementsOfixityGam = _lhsIfixityGam -- copy rule (down) _statementsOgUniq = _lhsIgUniq -- copy rule (down) _statementsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _statementsOidGam = _lhsIidGam -- copy rule (down) _statementsOmoduleNm = _lhsImoduleNm -- copy rule (down) _statementsOnmLev = _lhsInmLev -- copy rule (down) _statementsOopts = _lhsIopts -- copy rule (down) _statementsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _statementsOpragmas = _lhsIpragmas -- copy rule (down) _statementsOtopInstanceNmL = _lhsItopInstanceNmL ( _statementsIeh,_statementsIerrSq,_statementsIgUniq,_statementsIidUseOccGam,_statementsIpp,_statementsIppL,_statementsIppWrap,_statementsItopInstanceNmL,_statementsIundefOccGam) = statements_ _statementsOcaseId _statementsOfixityGam _statementsOgUniq _statementsOgenerDerivMp _statementsOidGam _statementsOmoduleNm _statementsOnmLev _statementsOopts _statementsOpatchEhNmInInstance _statementsOpragmas _statementsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_ImplicitApplication :: Range -> T_Expression -> T_ContextedExpressions -> T_Expression sem_Expression_ImplicitApplication range_ function_ arguments_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _functionOcaseId :: UID _functionOfixityGam :: FixityGam _functionOgUniq :: UID _functionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _functionOidGam :: IdDefOccGam _functionOmoduleNm :: HsName _functionOnmLev :: NmLev _functionOopts :: EHCOpts _functionOpatchEhNmInInstance :: PatchEhNmInInstance _functionOpragmas :: (Set.Set Pragma.Pragma) _functionOtopInstanceNmL :: ([HsName]) _argumentsOcaseId :: UID _argumentsOfixityGam :: FixityGam _argumentsOgUniq :: UID _argumentsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _argumentsOidGam :: IdDefOccGam _argumentsOmoduleNm :: HsName _argumentsOnmLev :: NmLev _argumentsOopts :: EHCOpts _argumentsOpatchEhNmInInstance :: PatchEhNmInInstance _argumentsOpragmas :: (Set.Set Pragma.Pragma) _argumentsOtopInstanceNmL :: ([HsName]) _functionIconNm :: Name _functionIeh :: (EH.Expr) _functionIerrSq :: ErrSq _functionIgUniq :: UID _functionIidUseOccGam :: IdUseOccGam _functionIopChain :: (OpChain EH.Expr) _functionIoperatorName :: MaybeName _functionIpp :: PP_Doc _functionIppWrap :: (PP_Doc -> PP_Doc) _functionItopInstanceNmL :: ([HsName]) _functionIundefOccGam :: IdUseOccGam _argumentsIeh :: ([(EH.Expr,EH.PrExpr)]) _argumentsIerrSq :: ErrSq _argumentsIgUniq :: UID _argumentsIidUseOccGam :: IdUseOccGam _argumentsIpp :: PP_Doc _argumentsIppL :: ([PP_Doc]) _argumentsIppWrap :: (PP_Doc -> PP_Doc) _argumentsItopInstanceNmL :: ([HsName]) _argumentsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 253, column 9) _pp = _functionIpp >#< ppListSep hsnOImpl hsnCImpl ", " _argumentsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 540, column 9) _eh = ehExpApp' (\f (e,p) -> rngLift range_ EH.Expr_AppImpl f p e) range_ _functionIeh _argumentsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _functionIerrSq `Seq.union` _argumentsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _functionIidUseOccGam `gamAddGam` _argumentsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _functionIppWrap . _argumentsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _functionIundefOccGam `gamUnion` _argumentsIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _argumentsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _argumentsItopInstanceNmL -- copy rule (down) _functionOcaseId = _lhsIcaseId -- copy rule (down) _functionOfixityGam = _lhsIfixityGam -- copy rule (down) _functionOgUniq = _lhsIgUniq -- copy rule (down) _functionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _functionOidGam = _lhsIidGam -- copy rule (down) _functionOmoduleNm = _lhsImoduleNm -- copy rule (down) _functionOnmLev = _lhsInmLev -- copy rule (down) _functionOopts = _lhsIopts -- copy rule (down) _functionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _functionOpragmas = _lhsIpragmas -- copy rule (down) _functionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _argumentsOcaseId = _lhsIcaseId -- copy rule (down) _argumentsOfixityGam = _lhsIfixityGam -- copy rule (chain) _argumentsOgUniq = _functionIgUniq -- copy rule (down) _argumentsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _argumentsOidGam = _lhsIidGam -- copy rule (down) _argumentsOmoduleNm = _lhsImoduleNm -- copy rule (down) _argumentsOnmLev = _lhsInmLev -- copy rule (down) _argumentsOopts = _lhsIopts -- copy rule (down) _argumentsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _argumentsOpragmas = _lhsIpragmas -- copy rule (chain) _argumentsOtopInstanceNmL = _functionItopInstanceNmL ( _functionIconNm,_functionIeh,_functionIerrSq,_functionIgUniq,_functionIidUseOccGam,_functionIopChain,_functionIoperatorName,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionIundefOccGam) = function_ _functionOcaseId _functionOfixityGam _functionOgUniq _functionOgenerDerivMp _functionOidGam _functionOmoduleNm _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOpragmas _functionOtopInstanceNmL ( _argumentsIeh,_argumentsIerrSq,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsIundefOccGam) = arguments_ _argumentsOcaseId _argumentsOfixityGam _argumentsOgUniq _argumentsOgenerDerivMp _argumentsOidGam _argumentsOmoduleNm _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOpragmas _argumentsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expression_ImplicitLambda :: Range -> T_ContextedPatterns -> T_Expression -> T_Expression sem_Expression_ImplicitLambda range_ patterns_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _expressionOidGam :: IdDefOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _patternsIeh :: ([(EH.PatExpr,EH.PrExpr)]) _patternsIerrSq :: ErrSq _patternsIfreeTvarS :: HsNameS _patternsIgUniq :: UID _patternsIidDefOccGam :: IdDefOccGam _patternsIidOccDefs :: ([IdOcc]) _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsIundefOccGam :: IdUseOccGam _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 237, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _patternsIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 351, column 9) _idGam = gamUnions [_idDefOccGamType, _lhsIidGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 352, column 9) _expressionOidGam = gamUnions [_patternsIidDefOccGam, _idGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 265, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 104, column 9) _errDupIntro = idDefOccGamCheckDupNames _patternsIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 20, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, _patternsIerrSq, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 255, column 9) _pp = "\\" >|< ppListSep hsnOImpl hsnCImpl ", " _patternsIppL >#< "->" >#< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 102, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 542, column 9) _eh = foldr (\(p,c) e -> rngLift range_ EH.Expr_LamImpl c p e) _expressionIeh _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternsIidUseOccGam `gamAddGam` _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternsIppWrap . _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternsIundefOccGam `gamUnion` _expressionIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _patternsOfixityGam = _lhsIfixityGam -- copy rule (down) _patternsOgUniq = _lhsIgUniq -- copy rule (from local) _patternsOidGam = _idGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternsOnmLev = _lhsInmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternsOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _expressionOgUniq = _patternsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (chain) _expressionOtopInstanceNmL = _patternsItopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIfreeTvarS,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ExpressionAnnotation ---------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.ExprAnn errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Empty: visit 0: local eh : _ -} -- cata sem_ExpressionAnnotation :: ExpressionAnnotation -> T_ExpressionAnnotation sem_ExpressionAnnotation (ExpressionAnnotation_Empty) = (sem_ExpressionAnnotation_Empty) -- semantic domain type T_ExpressionAnnotation = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (EH.ExprAnn),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ExpressionAnnotation_Empty :: T_ExpressionAnnotation sem_ExpressionAnnotation_Empty = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.ExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 908, column 17) _eh = EH.ExprAnn_Empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Expressions ------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.Expr] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Expression child tl : Expressions alternative Nil: -} -- cata sem_Expressions :: Expressions -> T_Expressions sem_Expressions list = (Prelude.foldr sem_Expressions_Cons sem_Expressions_Nil (Prelude.map sem_Expression list)) -- semantic domain type T_Expressions = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.Expr]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Expressions_Cons :: T_Expression -> T_Expressions -> T_Expressions sem_Expressions_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIconNm :: Name _hdIeh :: (EH.Expr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIopChain :: (OpChain EH.Expr) _hdIoperatorName :: MaybeName _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.Expr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 420, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 454, column 27) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIconNm,_hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIopChain,_hdIoperatorName,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Expressions_Nil :: T_Expressions sem_Expressions_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 422, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 454, column 27) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- FieldDeclaration -------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.DataField errSq : ErrSq fldrefnames : Names freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative FieldDeclaration: child range : {Range} child names : {Names} child type : Type visit 0: local fldrefnames : _ local nmLev : _ local pp : _ local isAsPred : _ local doGenVarWild : _ -} -- cata sem_FieldDeclaration :: FieldDeclaration -> T_FieldDeclaration sem_FieldDeclaration (FieldDeclaration_FieldDeclaration _range _names _type) = (sem_FieldDeclaration_FieldDeclaration _range _names (sem_Type _type)) -- semantic domain type T_FieldDeclaration = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.DataField),ErrSq,Names,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_FieldDeclaration_FieldDeclaration :: Range -> Names -> T_Type -> T_FieldDeclaration sem_FieldDeclaration_FieldDeclaration range_ names_ type_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.DataField) _lhsOerrSq :: ErrSq _lhsOfldrefnames :: Names _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 83, column 9) _fldrefnames = map (hsnSetLevQual _lhsInmLev _lhsImoduleNm) names_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 42, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 190, column 9) _pp = ppCommas' names_ >#< "::" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 340, column 9) _lhsOeh = rngLift range_ EH.DataField_Field (Just _fldrefnames) _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 178, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 231, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 78, column 44) _lhsOfldrefnames = _fldrefnames -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (from local) _typeOnmLev = _nmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfldrefnames,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- FieldDeclarations ------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.DataField] errSq : ErrSq fldrefnames : Names freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : FieldDeclaration child tl : FieldDeclarations alternative Nil: -} -- cata sem_FieldDeclarations :: FieldDeclarations -> T_FieldDeclarations sem_FieldDeclarations list = (Prelude.foldr sem_FieldDeclarations_Cons sem_FieldDeclarations_Nil (Prelude.map sem_FieldDeclaration list)) -- semantic domain type T_FieldDeclarations = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.DataField]),ErrSq,Names,HsNameS,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_FieldDeclarations_Cons :: T_FieldDeclaration -> T_FieldDeclarations -> T_FieldDeclarations sem_FieldDeclarations_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataField]) _lhsOerrSq :: ErrSq _lhsOfldrefnames :: Names _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.DataField) _hdIerrSq :: ErrSq _hdIfldrefnames :: Names _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.DataField]) _tlIerrSq :: ErrSq _tlIfldrefnames :: Names _tlIfreeTvarS :: HsNameS _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 478, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 334, column 33) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 78, column 44) _lhsOfldrefnames = _hdIfldrefnames ++ _tlIfldrefnames -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIfldrefnames,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIfldrefnames,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfldrefnames,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_FieldDeclarations_Nil :: T_FieldDeclarations sem_FieldDeclarations_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataField]) _lhsOerrSq :: ErrSq _lhsOfldrefnames :: Names _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 480, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 334, column 33) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 78, column 44) _lhsOfldrefnames = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfldrefnames,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- FunctionBinding --------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.Decl errSq : ErrSq idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative FunctionBinding: child range : {Range} child lefthandside : LeftHandSide child righthandside : RightHandSide visit 0: local idDefOccGam : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local idOccDef : _ local idOccDefs : _ local nmLev : _ local nmLevFun : _ local errDupIntro : _ local errSq : _ local pp : _ local caseId : _ local lUniq : {UID} -} -- cata sem_FunctionBinding :: FunctionBinding -> T_FunctionBinding sem_FunctionBinding (FunctionBinding_FunctionBinding _range _lefthandside _righthandside) = (sem_FunctionBinding_FunctionBinding _range (sem_LeftHandSide _lefthandside) (sem_RightHandSide _righthandside)) -- semantic domain type T_FunctionBinding = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (EH.Decl),ErrSq,UID,IdDefOccGam,IdDpdMp,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_FunctionBinding_FunctionBinding :: Range -> T_LeftHandSide -> T_RightHandSide -> T_FunctionBinding sem_FunctionBinding_FunctionBinding range_ lefthandside_ righthandside_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _righthandsideOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _righthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _righthandsideOsepPP :: PP_Doc _lhsOeh :: (EH.Decl) _righthandsideOmustBeMono :: Bool _lefthandsideOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _lefthandsideOcaseId :: UID _lefthandsideOfixityGam :: FixityGam _lefthandsideOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _lefthandsideOidGam :: IdDefOccGam _lefthandsideOmoduleNm :: HsName _lefthandsideOnmLev :: NmLev _lefthandsideOnmLevFun :: NmLev _lefthandsideOopts :: EHCOpts _lefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _lefthandsideOpragmas :: (Set.Set Pragma.Pragma) _lefthandsideOtopInstanceNmL :: ([HsName]) _righthandsideOcaseId :: UID _righthandsideOfixityGam :: FixityGam _righthandsideOgUniq :: UID _righthandsideOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _righthandsideOmoduleNm :: HsName _righthandsideOnmLev :: NmLev _righthandsideOopts :: EHCOpts _righthandsideOpragmas :: (Set.Set Pragma.Pragma) _righthandsideOtopInstanceNmL :: ([HsName]) _lefthandsideIeh :: ([EH.PatExpr]) _lefthandsideIehTyMk :: (EH.Expr -> EH.Expr) _lefthandsideIerrSq :: ErrSq _lefthandsideIgUniq :: UID _lefthandsideIidDefOccGam :: IdDefOccGam _lefthandsideIidOccDefs :: ([IdOcc]) _lefthandsideIidUseOccGam :: IdUseOccGam _lefthandsideIpp :: PP_Doc _lefthandsideIppWrap :: (PP_Doc -> PP_Doc) _lefthandsideIrefname :: HsName _lefthandsideItopInstanceNmL :: ([HsName]) _lefthandsideIundefOccGam :: IdUseOccGam _righthandsideIeh :: (EH.Expr) _righthandsideIerrSq :: ErrSq _righthandsideIgUniq :: UID _righthandsideIidUseOccGam :: IdUseOccGam _righthandsideIpp :: PP_Doc _righthandsideIppWrap :: (PP_Doc -> PP_Doc) _righthandsideItopInstanceNmL :: ([HsName]) _righthandsideIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 207, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Fun _lefthandsideIeh (_lefthandsideIehTyMk _righthandsideIeh) _lUniq) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 383, column 9) _righthandsideOidGam = gamUnion _lefthandsideIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 733, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [_lefthandsideIidUseOccGam,_righthandsideIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 733, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 737, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_lefthandsideIundefOccGam,_righthandsideIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1082, column 9) _righthandsideOpatchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 169, column 9) _idOccDef = IdOcc _lefthandsideIrefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 169, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 64, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 64, column 9) _nmLevFun = _lhsInmLev -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 108, column 9) _errDupIntro = idDefOccGamCheckDupNames _lefthandsideIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 40, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, _lefthandsideIerrSq, _righthandsideIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 311, column 9) _pp = _lefthandsideIpp >#< _righthandsideIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 312, column 9) _righthandsideOsepPP = pp "=" -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 718, column 9) _lhsOeh = let (h,t) = hdAndTl _lefthandsideIeh in rngLift range_ EH.Decl_Val h (foldr (rngLift range_ EH.Expr_Lam) (_lefthandsideIehTyMk _righthandsideIeh) t) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 873, column 9) _caseId = _lUniq -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 274, column 9) _righthandsideOmustBeMono = False -- -- generated by the unique rule mechanism. (_lefthandsideOgUniq,_lUniq) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq) -> (__cont,lUniq)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _lefthandsideIppWrap . _righthandsideIppWrap -- copy rule (up) _lhsOgUniq = _righthandsideIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _righthandsideItopInstanceNmL -- copy rule (from local) _lefthandsideOcaseId = _caseId -- copy rule (down) _lefthandsideOfixityGam = _lhsIfixityGam -- copy rule (down) _lefthandsideOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _lefthandsideOidGam = _lhsIidGam -- copy rule (down) _lefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (from local) _lefthandsideOnmLev = _nmLev -- copy rule (from local) _lefthandsideOnmLevFun = _nmLevFun -- copy rule (down) _lefthandsideOopts = _lhsIopts -- copy rule (down) _lefthandsideOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _lefthandsideOpragmas = _lhsIpragmas -- copy rule (down) _lefthandsideOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _righthandsideOcaseId = _caseId -- copy rule (down) _righthandsideOfixityGam = _lhsIfixityGam -- copy rule (chain) _righthandsideOgUniq = _lefthandsideIgUniq -- copy rule (down) _righthandsideOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _righthandsideOmoduleNm = _lhsImoduleNm -- copy rule (from local) _righthandsideOnmLev = _nmLev -- copy rule (down) _righthandsideOopts = _lhsIopts -- copy rule (down) _righthandsideOpragmas = _lhsIpragmas -- copy rule (chain) _righthandsideOtopInstanceNmL = _lefthandsideItopInstanceNmL ( _lefthandsideIeh,_lefthandsideIehTyMk,_lefthandsideIerrSq,_lefthandsideIgUniq,_lefthandsideIidDefOccGam,_lefthandsideIidOccDefs,_lefthandsideIidUseOccGam,_lefthandsideIpp,_lefthandsideIppWrap,_lefthandsideIrefname,_lefthandsideItopInstanceNmL,_lefthandsideIundefOccGam) = lefthandside_ _lefthandsideOcaseId _lefthandsideOfixityGam _lefthandsideOgUniq _lefthandsideOgenerDerivMp _lefthandsideOidGam _lefthandsideOmoduleNm _lefthandsideOnmLev _lefthandsideOnmLevFun _lefthandsideOopts _lefthandsideOpatchEhNmInInstance _lefthandsideOpragmas _lefthandsideOtopInstanceNmL ( _righthandsideIeh,_righthandsideIerrSq,_righthandsideIgUniq,_righthandsideIidUseOccGam,_righthandsideIpp,_righthandsideIppWrap,_righthandsideItopInstanceNmL,_righthandsideIundefOccGam) = righthandside_ _righthandsideOcaseId _righthandsideOfixityGam _righthandsideOgUniq _righthandsideOgenerDerivMp _righthandsideOidGam _righthandsideOmoduleNm _righthandsideOmustBeMono _righthandsideOnmLev _righthandsideOopts _righthandsideOpatchEhNmInInstance _righthandsideOpragmas _righthandsideOsepPP _righthandsideOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- FunctionBindings -------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.Decl] errSq : ErrSq idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : FunctionBinding child tl : FunctionBindings alternative Nil: -} -- cata sem_FunctionBindings :: FunctionBindings -> T_FunctionBindings sem_FunctionBindings list = (Prelude.foldr sem_FunctionBindings_Cons sem_FunctionBindings_Nil (Prelude.map sem_FunctionBinding list)) -- semantic domain type T_FunctionBindings = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.Decl]),ErrSq,UID,IdDefOccGam,IdDpdMp,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_FunctionBindings_Cons :: T_FunctionBinding -> T_FunctionBindings -> T_FunctionBindings sem_FunctionBindings_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.Decl) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidDefOccGam :: IdDefOccGam _hdIidDpdMp :: IdDpdMp _hdIidOccDefs :: ([IdOcc]) _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.Decl]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidDefOccGam :: IdDefOccGam _tlIidDpdMp :: IdDpdMp _tlIidOccDefs :: ([IdOcc]) _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 712, column 32) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _hdIidDpdMp `idDpdMpUnion` _tlIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidDefOccGam,_hdIidDpdMp,_hdIidOccDefs,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidDefOccGam,_tlIidDpdMp,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_FunctionBindings_Nil :: T_FunctionBindings sem_FunctionBindings_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 712, column 32) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- FunctionalDependencies -------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.FuncDep] errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idTySigDefOccGam : IdDefOccGam idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : FunctionalDependency child tl : FunctionalDependencies alternative Nil: -} -- cata sem_FunctionalDependencies :: FunctionalDependencies -> T_FunctionalDependencies sem_FunctionalDependencies list = (Prelude.foldr sem_FunctionalDependencies_Cons sem_FunctionalDependencies_Nil (Prelude.map sem_FunctionalDependency list)) -- semantic domain type T_FunctionalDependencies = FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.FuncDep]),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,([IdOcc]),IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_FunctionalDependencies_Cons :: T_FunctionalDependency -> T_FunctionalDependencies -> T_FunctionalDependencies sem_FunctionalDependencies_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.FuncDep]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.FuncDep) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIgathPragmas :: (Set.Set Pragma.Pragma) _hdIidDefOccGam :: IdDefOccGam _hdIidDpdMp :: IdDpdMp _hdIidOccDefs :: ([IdOcc]) _hdIidTySigDefOccGam :: IdDefOccGam _hdIidUseOccGam :: IdUseOccGam _hdIneedsError :: Bool _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.FuncDep]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIgathPragmas :: (Set.Set Pragma.Pragma) _tlIidDefOccGam :: IdDefOccGam _tlIidDpdMp :: IdDpdMp _tlIidOccDefs :: ([IdOcc]) _tlIidTySigDefOccGam :: IdDefOccGam _tlIidUseOccGam :: IdUseOccGam _tlIneedsError :: Bool _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 150, column 38) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _hdIgathFixityGam `gamAddGam` _tlIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _hdIgathPragmas `Set.union` _tlIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _hdIidDpdMp `idDpdMpUnion` _tlIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _hdIidTySigDefOccGam `gamAddGam` _tlIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = _hdIneedsError || _tlIneedsError -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIgathPragmas,_hdIidDefOccGam,_hdIidDpdMp,_hdIidOccDefs,_hdIidTySigDefOccGam,_hdIidUseOccGam,_hdIneedsError,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIgathPragmas,_tlIidDefOccGam,_tlIidDpdMp,_tlIidOccDefs,_tlIidTySigDefOccGam,_tlIidUseOccGam,_tlIneedsError,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_FunctionalDependencies_Nil :: T_FunctionalDependencies sem_FunctionalDependencies_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.FuncDep]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 150, column 38) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- FunctionalDependency ---------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.FuncDep errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idTySigDefOccGam : IdDefOccGam idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Dependency: child range : {Range} child fromtypevariables : {Names} child totypevariables : {Names} visit 0: local pp : _ -} -- cata sem_FunctionalDependency :: FunctionalDependency -> T_FunctionalDependency sem_FunctionalDependency (FunctionalDependency_Dependency _range _fromtypevariables _totypevariables) = (sem_FunctionalDependency_Dependency _range _fromtypevariables _totypevariables) -- semantic domain type T_FunctionalDependency = FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (EH.FuncDep),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,([IdOcc]),IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_FunctionalDependency_Dependency :: Range -> Names -> Names -> T_FunctionalDependency sem_FunctionalDependency_Dependency range_ fromtypevariables_ totypevariables_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.FuncDep) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 79, column 9) _pp = ppSpaces fromtypevariables_ >#< "->" >#< totypevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 156, column 9) _lhsOeh = rngLift range_ EH.FuncDep_Dep (map (rngLift range_ EH.TyVar_Var) fromtypevariables_) (map (rngLift range_ EH.TyVar_Var) totypevariables_) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- GuardedExpression ------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName mustBeMono : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma sepPP : PP_Doc chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : UIDS -> EH.Expr -> EH.Expr errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative GuardedExpression: child range : {Range} child guard : Expression child expression : Expression visit 0: local valrefnames : _ local idUseOccGamVal : _ local errIdUseVal : _ local typerefname : _ local idUseOccGamType : _ local errIdUseType : _ local idUseOccGam : _ local errSq : _ local pp : _ -} -- cata sem_GuardedExpression :: GuardedExpression -> T_GuardedExpression sem_GuardedExpression (GuardedExpression_GuardedExpression _range _guard _expression) = (sem_GuardedExpression_GuardedExpression _range (sem_Expression _guard) (sem_Expression _expression)) -- semantic domain type T_GuardedExpression = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> Bool -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> PP_Doc -> ([HsName]) -> ( (UIDS -> EH.Expr -> EH.Expr),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_GuardedExpression_GuardedExpression :: Range -> T_Expression -> T_Expression -> T_GuardedExpression sem_GuardedExpression_GuardedExpression range_ guard_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsImustBeMono _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsIsepPP _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (UIDS -> EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _guardOcaseId :: UID _guardOfixityGam :: FixityGam _guardOgUniq :: UID _guardOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _guardOidGam :: IdDefOccGam _guardOmoduleNm :: HsName _guardOnmLev :: NmLev _guardOopts :: EHCOpts _guardOpatchEhNmInInstance :: PatchEhNmInInstance _guardOpragmas :: (Set.Set Pragma.Pragma) _guardOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _guardIconNm :: Name _guardIeh :: (EH.Expr) _guardIerrSq :: ErrSq _guardIgUniq :: UID _guardIidUseOccGam :: IdUseOccGam _guardIopChain :: (OpChain EH.Expr) _guardIoperatorName :: MaybeName _guardIpp :: PP_Doc _guardIppWrap :: (PP_Doc -> PP_Doc) _guardItopInstanceNmL :: ([HsName]) _guardIundefOccGam :: IdUseOccGam _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 548, column 29) (_,_valrefnames,_idUseOccGamVal,_errIdUseVal) = mkUseOccGam _lhsIopts _lhsIidGam [hsnTrue,hsnFalse] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 29) (_typerefname,_,_idUseOccGamType,_errIdUseType) = mkUseOccGam _lhsIopts _lhsIidGam [hsnBool] IdOcc_Type IdAsp_Type_Con range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 548, column 9) _idUseOccGam = gamUnions [_idUseOccGamVal,_idUseOccGamType] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 553, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_guardIidUseOccGam,_expressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 89, column 9) _errSq = Seq.unions [Seq.fromList _errIdUseVal, Seq.fromList _errIdUseType, _guardIerrSq, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 281, column 9) _pp = "|" >#< _guardIpp >#< _lhsIsepPP >#< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 634, column 9) _lhsOeh = \failS e -> EH.mkIf'' (_typerefname : _valrefnames) range_ _guardIeh (ehMkEnforceMono range_ _lhsImustBeMono _expressionIeh) e Nothing failS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _guardIppWrap . _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _guardIundefOccGam `gamUnion` _expressionIundefOccGam -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _guardOcaseId = _lhsIcaseId -- copy rule (down) _guardOfixityGam = _lhsIfixityGam -- copy rule (down) _guardOgUniq = _lhsIgUniq -- copy rule (down) _guardOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _guardOidGam = _lhsIidGam -- copy rule (down) _guardOmoduleNm = _lhsImoduleNm -- copy rule (down) _guardOnmLev = _lhsInmLev -- copy rule (down) _guardOopts = _lhsIopts -- copy rule (down) _guardOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _guardOpragmas = _lhsIpragmas -- copy rule (down) _guardOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _expressionOgUniq = _guardIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (chain) _expressionOtopInstanceNmL = _guardItopInstanceNmL ( _guardIconNm,_guardIeh,_guardIerrSq,_guardIgUniq,_guardIidUseOccGam,_guardIopChain,_guardIoperatorName,_guardIpp,_guardIppWrap,_guardItopInstanceNmL,_guardIundefOccGam) = guard_ _guardOcaseId _guardOfixityGam _guardOgUniq _guardOgenerDerivMp _guardOidGam _guardOmoduleNm _guardOnmLev _guardOopts _guardOpatchEhNmInInstance _guardOpragmas _guardOtopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- GuardedExpressions ------------------------------------------ {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName mustBeMono : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma sepPP : PP_Doc chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [UIDS -> EH.Expr -> EH.Expr] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : GuardedExpression child tl : GuardedExpressions alternative Nil: -} -- cata sem_GuardedExpressions :: GuardedExpressions -> T_GuardedExpressions sem_GuardedExpressions list = (Prelude.foldr sem_GuardedExpressions_Cons sem_GuardedExpressions_Nil (Prelude.map sem_GuardedExpression list)) -- semantic domain type T_GuardedExpressions = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> Bool -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> PP_Doc -> ([HsName]) -> ( ([UIDS -> EH.Expr -> EH.Expr]),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_GuardedExpressions_Cons :: T_GuardedExpression -> T_GuardedExpressions -> T_GuardedExpressions sem_GuardedExpressions_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsImustBeMono _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsIsepPP _lhsItopInstanceNmL -> (let _lhsOeh :: ([UIDS -> EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOmustBeMono :: Bool _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOsepPP :: PP_Doc _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOmustBeMono :: Bool _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOsepPP :: PP_Doc _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (UIDS -> EH.Expr -> EH.Expr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([UIDS -> EH.Expr -> EH.Expr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 629, column 34) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOmustBeMono = _lhsImustBeMono -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOsepPP = _lhsIsepPP -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOmustBeMono = _lhsImustBeMono -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (down) _tlOsepPP = _lhsIsepPP -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOmustBeMono _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOsepPP _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOmustBeMono _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOsepPP _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_GuardedExpressions_Nil :: T_GuardedExpressions sem_GuardedExpressions_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsImustBeMono _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsIsepPP _lhsItopInstanceNmL -> (let _lhsOeh :: ([UIDS -> EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 629, column 34) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Import ------------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Variable: child range : {Range} child name : {Name} alternative TypeOrClass: child range : {Range} child name : {Name} child names : {MaybeNames} alternative TypeOrClassComplete: child range : {Range} child name : {Name} -} -- cata sem_Import :: Import -> T_Import sem_Import (Import_Variable _range _name) = (sem_Import_Variable _range _name) sem_Import (Import_TypeOrClass _range _name _names) = (sem_Import_TypeOrClass _range _name _names) sem_Import (Import_TypeOrClassComplete _range _name) = (sem_Import_TypeOrClassComplete _range _name) -- semantic domain type T_Import = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Import_Variable :: Range -> Name -> T_Import sem_Import_Variable range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Import_TypeOrClass :: Range -> Name -> MaybeNames -> T_Import sem_Import_TypeOrClass range_ name_ names_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Import_TypeOrClassComplete :: Range -> Name -> T_Import sem_Import_TypeOrClassComplete range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ImportDeclaration ------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam modAsMp : Map.Map HsName HsName pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Import: child range : {Range} child qualified : {Bool} child name : {Name} child asname : {MaybeName} child importspecification : MaybeImportSpecification alternative Empty: child range : {Range} -} -- cata sem_ImportDeclaration :: ImportDeclaration -> T_ImportDeclaration sem_ImportDeclaration (ImportDeclaration_Import _range _qualified _name _asname _importspecification) = (sem_ImportDeclaration_Import _range _qualified _name _asname (sem_MaybeImportSpecification _importspecification)) sem_ImportDeclaration (ImportDeclaration_Empty _range) = (sem_ImportDeclaration_Empty _range) -- semantic domain type T_ImportDeclaration = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,(Map.Map HsName HsName),PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ImportDeclaration_Import :: Range -> Bool -> Name -> MaybeName -> T_MaybeImportSpecification -> T_ImportDeclaration sem_ImportDeclaration_Import range_ qualified_ name_ asname_ importspecification_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmodAsMp :: (Map.Map HsName HsName) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _importspecificationOfixityGam :: FixityGam _importspecificationOgUniq :: UID _importspecificationOidGam :: IdDefOccGam _importspecificationOisMainMod :: Bool _importspecificationOisTopMod :: Bool _importspecificationOmoduleNm :: HsName _importspecificationOnmLev :: NmLev _importspecificationOopts :: EHCOpts _importspecificationOpatchEhNmInInstance :: PatchEhNmInInstance _importspecificationOtopInstanceNmL :: ([HsName]) _importspecificationIerrSq :: ErrSq _importspecificationIgUniq :: UID _importspecificationIgathFixityGam :: FixityGam _importspecificationIidUseOccGam :: IdUseOccGam _importspecificationIpp :: PP_Doc _importspecificationIppWrap :: (PP_Doc -> PP_Doc) _importspecificationItopInstanceNmL :: ([HsName]) _importspecificationIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1048, column 9) _lhsOmodAsMp = maybe Map.empty (Map.singleton name_) asname_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _importspecificationIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _importspecificationIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _importspecificationIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _importspecificationIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _importspecificationIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _importspecificationIundefOccGam -- copy rule (up) _lhsOgUniq = _importspecificationIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _importspecificationItopInstanceNmL -- copy rule (down) _importspecificationOfixityGam = _lhsIfixityGam -- copy rule (down) _importspecificationOgUniq = _lhsIgUniq -- copy rule (down) _importspecificationOidGam = _lhsIidGam -- copy rule (down) _importspecificationOisMainMod = _lhsIisMainMod -- copy rule (down) _importspecificationOisTopMod = _lhsIisTopMod -- copy rule (down) _importspecificationOmoduleNm = _lhsImoduleNm -- copy rule (down) _importspecificationOnmLev = _lhsInmLev -- copy rule (down) _importspecificationOopts = _lhsIopts -- copy rule (down) _importspecificationOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _importspecificationOtopInstanceNmL = _lhsItopInstanceNmL ( _importspecificationIerrSq,_importspecificationIgUniq,_importspecificationIgathFixityGam,_importspecificationIidUseOccGam,_importspecificationIpp,_importspecificationIppWrap,_importspecificationItopInstanceNmL,_importspecificationIundefOccGam) = importspecification_ _importspecificationOfixityGam _importspecificationOgUniq _importspecificationOidGam _importspecificationOisMainMod _importspecificationOisTopMod _importspecificationOmoduleNm _importspecificationOnmLev _importspecificationOopts _importspecificationOpatchEhNmInInstance _importspecificationOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOmodAsMp,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ImportDeclaration_Empty :: Range -> T_ImportDeclaration sem_ImportDeclaration_Empty range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmodAsMp :: (Map.Map HsName HsName) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1050, column 9) _lhsOmodAsMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOmodAsMp,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ImportDeclarations ------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam modAsMp : Map.Map HsName HsName pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : ImportDeclaration child tl : ImportDeclarations alternative Nil: -} -- cata sem_ImportDeclarations :: ImportDeclarations -> T_ImportDeclarations sem_ImportDeclarations list = (Prelude.foldr sem_ImportDeclarations_Cons sem_ImportDeclarations_Nil (Prelude.map sem_ImportDeclaration list)) -- semantic domain type T_ImportDeclarations = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,(Map.Map HsName HsName),PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ImportDeclarations_Cons :: T_ImportDeclaration -> T_ImportDeclarations -> T_ImportDeclarations sem_ImportDeclarations_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOmodAsMp :: (Map.Map HsName HsName) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOisMainMod :: Bool _hdOisTopMod :: Bool _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisMainMod :: Bool _tlOisTopMod :: Bool _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIidUseOccGam :: IdUseOccGam _hdImodAsMp :: (Map.Map HsName HsName) _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIidUseOccGam :: IdUseOccGam _tlImodAsMp :: (Map.Map HsName HsName) _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _hdIgathFixityGam `gamAddGam` _tlIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1044, column 41) _lhsOmodAsMp = _hdImodAsMp `Map.union` _tlImodAsMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOisMainMod = _lhsIisMainMod -- copy rule (down) _hdOisTopMod = _lhsIisTopMod -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOisMainMod = _lhsIisMainMod -- copy rule (down) _tlOisTopMod = _lhsIisTopMod -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidUseOccGam,_hdImodAsMp,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOisMainMod _hdOisTopMod _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIidUseOccGam,_tlImodAsMp,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOisMainMod _tlOisTopMod _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOmodAsMp,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_ImportDeclarations_Nil :: T_ImportDeclarations sem_ImportDeclarations_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOmodAsMp :: (Map.Map HsName HsName) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1044, column 41) _lhsOmodAsMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOmodAsMp,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- ImportSpecification ----------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Import: child range : {Range} child hiding : {Bool} child imports : Imports -} -- cata sem_ImportSpecification :: ImportSpecification -> T_ImportSpecification sem_ImportSpecification (ImportSpecification_Import _range _hiding _imports) = (sem_ImportSpecification_Import _range _hiding (sem_Imports _imports)) -- semantic domain type T_ImportSpecification = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_ImportSpecification_Import :: Range -> Bool -> T_Imports -> T_ImportSpecification sem_ImportSpecification_Import range_ hiding_ imports_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _importsOfixityGam :: FixityGam _importsOgUniq :: UID _importsOidGam :: IdDefOccGam _importsOisMainMod :: Bool _importsOisTopMod :: Bool _importsOmoduleNm :: HsName _importsOnmLev :: NmLev _importsOopts :: EHCOpts _importsOpatchEhNmInInstance :: PatchEhNmInInstance _importsOtopInstanceNmL :: ([HsName]) _importsIerrSq :: ErrSq _importsIgUniq :: UID _importsIgathFixityGam :: FixityGam _importsIidUseOccGam :: IdUseOccGam _importsIpp :: PP_Doc _importsIppWrap :: (PP_Doc -> PP_Doc) _importsItopInstanceNmL :: ([HsName]) _importsIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _importsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _importsIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _importsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _importsIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _importsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _importsIundefOccGam -- copy rule (up) _lhsOgUniq = _importsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _importsItopInstanceNmL -- copy rule (down) _importsOfixityGam = _lhsIfixityGam -- copy rule (down) _importsOgUniq = _lhsIgUniq -- copy rule (down) _importsOidGam = _lhsIidGam -- copy rule (down) _importsOisMainMod = _lhsIisMainMod -- copy rule (down) _importsOisTopMod = _lhsIisTopMod -- copy rule (down) _importsOmoduleNm = _lhsImoduleNm -- copy rule (down) _importsOnmLev = _lhsInmLev -- copy rule (down) _importsOopts = _lhsIopts -- copy rule (down) _importsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _importsOtopInstanceNmL = _lhsItopInstanceNmL ( _importsIerrSq,_importsIgUniq,_importsIgathFixityGam,_importsIidUseOccGam,_importsIpp,_importsIppWrap,_importsItopInstanceNmL,_importsIundefOccGam) = imports_ _importsOfixityGam _importsOgUniq _importsOidGam _importsOisMainMod _importsOisTopMod _importsOmoduleNm _importsOnmLev _importsOopts _importsOpatchEhNmInInstance _importsOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Imports ----------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Import child tl : Imports alternative Nil: -} -- cata sem_Imports :: Imports -> T_Imports sem_Imports list = (Prelude.foldr sem_Imports_Cons sem_Imports_Nil (Prelude.map sem_Import list)) -- semantic domain type T_Imports = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Imports_Cons :: T_Import -> T_Imports -> T_Imports sem_Imports_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOisMainMod :: Bool _hdOisTopMod :: Bool _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisMainMod :: Bool _tlOisTopMod :: Bool _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _hdIgathFixityGam `gamAddGam` _tlIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOisMainMod = _lhsIisMainMod -- copy rule (down) _hdOisTopMod = _lhsIisTopMod -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOisMainMod = _lhsIisMainMod -- copy rule (down) _tlOisTopMod = _lhsIisTopMod -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOisMainMod _hdOisTopMod _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOisMainMod _tlOisTopMod _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Imports_Nil :: T_Imports sem_Imports_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Kind -------------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: conNm : Name eh : EH.KiExpr errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative NormalApplication: child range : {Range} child function : Kind child arguments : Kinds visit 0: local pp : _ alternative InfixApplication: child range : {Range} child leftKind : Kind child operator : Kind child rightKind : Kind visit 0: local pp : _ local eh : _ alternative Constructor: child range : {Range} child name : {Name} visit 0: local idAsp : _ local idOccKind : _ local refname : _ local idUseOccGam : _ local errIdUse : _ local pp : _ alternative Parenthesized: child range : {Range} child kind : Kind visit 0: local pp : _ alternative Variable: child range : {Range} child name : {Name} visit 0: local idAsp : _ local idOccKind : _ local refname : _ local idUseOccGam : _ local errIdUse : _ local pp : _ alternative Forall: child range : {Range} child kindvariables : {Names} child kind : Kind visit 0: local idDefOccGamInside : _ local idGam : _ local pp : _ alternative Annotate: child range : {Range} child annotation : KindAnnotation child kind : Kind visit 0: local eh : _ -} -- cata sem_Kind :: Kind -> T_Kind sem_Kind (Kind_NormalApplication _range _function _arguments) = (sem_Kind_NormalApplication _range (sem_Kind _function) (sem_Kinds _arguments)) sem_Kind (Kind_InfixApplication _range _leftKind _operator _rightKind) = (sem_Kind_InfixApplication _range (sem_Kind _leftKind) (sem_Kind _operator) (sem_Kind _rightKind)) sem_Kind (Kind_Constructor _range _name) = (sem_Kind_Constructor _range _name) sem_Kind (Kind_Parenthesized _range _kind) = (sem_Kind_Parenthesized _range (sem_Kind _kind)) sem_Kind (Kind_Variable _range _name) = (sem_Kind_Variable _range _name) sem_Kind (Kind_Forall _range _kindvariables _kind) = (sem_Kind_Forall _range _kindvariables (sem_Kind _kind)) sem_Kind (Kind_Annotate _range _annotation _kind) = (sem_Kind_Annotate _range (sem_KindAnnotation _annotation) (sem_Kind _kind)) -- semantic domain type T_Kind = UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( Name,(EH.KiExpr),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Kind_NormalApplication :: Range -> T_Kind -> T_Kinds -> T_Kind sem_Kind_NormalApplication range_ function_ arguments_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _functionOgUniq :: UID _functionOidGam :: IdDefOccGam _functionOnmLev :: NmLev _functionOopts :: EHCOpts _functionOpatchEhNmInInstance :: PatchEhNmInInstance _functionOtopInstanceNmL :: ([HsName]) _argumentsOgUniq :: UID _argumentsOidGam :: IdDefOccGam _argumentsOnmLev :: NmLev _argumentsOopts :: EHCOpts _argumentsOpatchEhNmInInstance :: PatchEhNmInInstance _argumentsOtopInstanceNmL :: ([HsName]) _functionIconNm :: Name _functionIeh :: (EH.KiExpr) _functionIerrSq :: ErrSq _functionIfreeTvarS :: HsNameS _functionIgUniq :: UID _functionIidUseOccGam :: IdUseOccGam _functionIpp :: PP_Doc _functionIppWrap :: (PP_Doc -> PP_Doc) _functionItopInstanceNmL :: ([HsName]) _functionIundefOccGam :: IdUseOccGam _argumentsIeh :: ([EH.KiExpr]) _argumentsIerrSq :: ErrSq _argumentsIfreeTvarS :: HsNameS _argumentsIgUniq :: UID _argumentsIidUseOccGam :: IdUseOccGam _argumentsIpp :: PP_Doc _argumentsIppL :: ([PP_Doc]) _argumentsIppWrap :: (PP_Doc -> PP_Doc) _argumentsItopInstanceNmL :: ([HsName]) _argumentsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 99, column 9) _pp = ppAppTop (_functionIconNm, _functionIpp) _argumentsIppL (_functionIpp >#< ppSpaces _argumentsIppL) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 178, column 9) _lhsOeh = appTopApp (_functionIeh : _argumentsIeh) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 104, column 9) _lhsOconNm = hsnUnknown -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _functionIerrSq `Seq.union` _argumentsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 106, column 30) _lhsOfreeTvarS = _functionIfreeTvarS `Set.union` _argumentsIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _functionIidUseOccGam `gamAddGam` _argumentsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _functionIppWrap . _argumentsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _functionIundefOccGam `gamUnion` _argumentsIundefOccGam -- copy rule (up) _lhsOgUniq = _argumentsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _argumentsItopInstanceNmL -- copy rule (down) _functionOgUniq = _lhsIgUniq -- copy rule (down) _functionOidGam = _lhsIidGam -- copy rule (down) _functionOnmLev = _lhsInmLev -- copy rule (down) _functionOopts = _lhsIopts -- copy rule (down) _functionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _functionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (chain) _argumentsOgUniq = _functionIgUniq -- copy rule (down) _argumentsOidGam = _lhsIidGam -- copy rule (down) _argumentsOnmLev = _lhsInmLev -- copy rule (down) _argumentsOopts = _lhsIopts -- copy rule (down) _argumentsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _argumentsOtopInstanceNmL = _functionItopInstanceNmL ( _functionIconNm,_functionIeh,_functionIerrSq,_functionIfreeTvarS,_functionIgUniq,_functionIidUseOccGam,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionIundefOccGam) = function_ _functionOgUniq _functionOidGam _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOtopInstanceNmL ( _argumentsIeh,_argumentsIerrSq,_argumentsIfreeTvarS,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsIundefOccGam) = arguments_ _argumentsOgUniq _argumentsOidGam _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Kind_InfixApplication :: Range -> T_Kind -> T_Kind -> T_Kind -> T_Kind sem_Kind_InfixApplication range_ leftKind_ operator_ rightKind_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.KiExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftKindOgUniq :: UID _leftKindOidGam :: IdDefOccGam _leftKindOnmLev :: NmLev _leftKindOopts :: EHCOpts _leftKindOpatchEhNmInInstance :: PatchEhNmInInstance _leftKindOtopInstanceNmL :: ([HsName]) _operatorOgUniq :: UID _operatorOidGam :: IdDefOccGam _operatorOnmLev :: NmLev _operatorOopts :: EHCOpts _operatorOpatchEhNmInInstance :: PatchEhNmInInstance _operatorOtopInstanceNmL :: ([HsName]) _rightKindOgUniq :: UID _rightKindOidGam :: IdDefOccGam _rightKindOnmLev :: NmLev _rightKindOopts :: EHCOpts _rightKindOpatchEhNmInInstance :: PatchEhNmInInstance _rightKindOtopInstanceNmL :: ([HsName]) _leftKindIconNm :: Name _leftKindIeh :: (EH.KiExpr) _leftKindIerrSq :: ErrSq _leftKindIfreeTvarS :: HsNameS _leftKindIgUniq :: UID _leftKindIidUseOccGam :: IdUseOccGam _leftKindIpp :: PP_Doc _leftKindIppWrap :: (PP_Doc -> PP_Doc) _leftKindItopInstanceNmL :: ([HsName]) _leftKindIundefOccGam :: IdUseOccGam _operatorIconNm :: Name _operatorIeh :: (EH.KiExpr) _operatorIerrSq :: ErrSq _operatorIfreeTvarS :: HsNameS _operatorIgUniq :: UID _operatorIidUseOccGam :: IdUseOccGam _operatorIpp :: PP_Doc _operatorIppWrap :: (PP_Doc -> PP_Doc) _operatorItopInstanceNmL :: ([HsName]) _operatorIundefOccGam :: IdUseOccGam _rightKindIconNm :: Name _rightKindIeh :: (EH.KiExpr) _rightKindIerrSq :: ErrSq _rightKindIfreeTvarS :: HsNameS _rightKindIgUniq :: UID _rightKindIidUseOccGam :: IdUseOccGam _rightKindIpp :: PP_Doc _rightKindIppWrap :: (PP_Doc -> PP_Doc) _rightKindItopInstanceNmL :: ([HsName]) _rightKindIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 102, column 9) _pp = let args = [_leftKindIpp,_rightKindIpp] in ppAppTop (_operatorIconNm, _operatorIpp) args (_operatorIpp >#< ppSpaces args) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 180, column 9) _eh = appRngParApp range_ [_operatorIeh,_leftKindIeh,_rightKindIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 104, column 9) _lhsOconNm = hsnUnknown -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _leftKindIerrSq `Seq.union` _operatorIerrSq `Seq.union` _rightKindIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 106, column 30) _lhsOfreeTvarS = _leftKindIfreeTvarS `Set.union` _operatorIfreeTvarS `Set.union` _rightKindIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _leftKindIidUseOccGam `gamAddGam` _operatorIidUseOccGam `gamAddGam` _rightKindIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftKindIppWrap . _operatorIppWrap . _rightKindIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftKindIundefOccGam `gamUnion` _operatorIundefOccGam `gamUnion` _rightKindIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _rightKindIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rightKindItopInstanceNmL -- copy rule (down) _leftKindOgUniq = _lhsIgUniq -- copy rule (down) _leftKindOidGam = _lhsIidGam -- copy rule (down) _leftKindOnmLev = _lhsInmLev -- copy rule (down) _leftKindOopts = _lhsIopts -- copy rule (down) _leftKindOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _leftKindOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (chain) _operatorOgUniq = _leftKindIgUniq -- copy rule (down) _operatorOidGam = _lhsIidGam -- copy rule (down) _operatorOnmLev = _lhsInmLev -- copy rule (down) _operatorOopts = _lhsIopts -- copy rule (down) _operatorOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _operatorOtopInstanceNmL = _leftKindItopInstanceNmL -- copy rule (chain) _rightKindOgUniq = _operatorIgUniq -- copy rule (down) _rightKindOidGam = _lhsIidGam -- copy rule (down) _rightKindOnmLev = _lhsInmLev -- copy rule (down) _rightKindOopts = _lhsIopts -- copy rule (down) _rightKindOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rightKindOtopInstanceNmL = _operatorItopInstanceNmL ( _leftKindIconNm,_leftKindIeh,_leftKindIerrSq,_leftKindIfreeTvarS,_leftKindIgUniq,_leftKindIidUseOccGam,_leftKindIpp,_leftKindIppWrap,_leftKindItopInstanceNmL,_leftKindIundefOccGam) = leftKind_ _leftKindOgUniq _leftKindOidGam _leftKindOnmLev _leftKindOopts _leftKindOpatchEhNmInInstance _leftKindOtopInstanceNmL ( _operatorIconNm,_operatorIeh,_operatorIerrSq,_operatorIfreeTvarS,_operatorIgUniq,_operatorIidUseOccGam,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorIundefOccGam) = operator_ _operatorOgUniq _operatorOidGam _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOtopInstanceNmL ( _rightKindIconNm,_rightKindIeh,_rightKindIerrSq,_rightKindIfreeTvarS,_rightKindIgUniq,_rightKindIidUseOccGam,_rightKindIpp,_rightKindIppWrap,_rightKindItopInstanceNmL,_rightKindIundefOccGam) = rightKind_ _rightKindOgUniq _rightKindOidGam _rightKindOnmLev _rightKindOopts _rightKindOpatchEhNmInInstance _rightKindOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Kind_Constructor :: Range -> Name -> T_Kind sem_Kind_Constructor range_ name_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 586, column 9) _idAsp = IdAsp_Kind_Con -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 586, column 9) _idOccKind = IdOcc_Kind -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 592, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] _idOccKind _idAsp range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 106, column 9) _pp = ppCon name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 182, column 9) _lhsOeh = rngLift range_ EH.KiExpr_Con _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 102, column 9) _lhsOconNm = name_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 106, column 30) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Kind_Parenthesized :: Range -> T_Kind -> T_Kind sem_Kind_Parenthesized range_ kind_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _kindOgUniq :: UID _kindOidGam :: IdDefOccGam _kindOnmLev :: NmLev _kindOopts :: EHCOpts _kindOpatchEhNmInInstance :: PatchEhNmInInstance _kindOtopInstanceNmL :: ([HsName]) _kindIconNm :: Name _kindIeh :: (EH.KiExpr) _kindIerrSq :: ErrSq _kindIfreeTvarS :: HsNameS _kindIgUniq :: UID _kindIidUseOccGam :: IdUseOccGam _kindIpp :: PP_Doc _kindIppWrap :: (PP_Doc -> PP_Doc) _kindItopInstanceNmL :: ([HsName]) _kindIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 108, column 9) _pp = ppParens _kindIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 184, column 9) _lhsOeh = rngLift range_ EH.KiExpr_Parens _kindIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 104, column 9) _lhsOconNm = hsnUnknown -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _kindIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 106, column 30) _lhsOfreeTvarS = _kindIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _kindIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _kindIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _kindIundefOccGam -- copy rule (up) _lhsOgUniq = _kindIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _kindItopInstanceNmL -- copy rule (down) _kindOgUniq = _lhsIgUniq -- copy rule (down) _kindOidGam = _lhsIidGam -- copy rule (down) _kindOnmLev = _lhsInmLev -- copy rule (down) _kindOopts = _lhsIopts -- copy rule (down) _kindOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _kindOtopInstanceNmL = _lhsItopInstanceNmL ( _kindIconNm,_kindIeh,_kindIerrSq,_kindIfreeTvarS,_kindIgUniq,_kindIidUseOccGam,_kindIpp,_kindIppWrap,_kindItopInstanceNmL,_kindIundefOccGam) = kind_ _kindOgUniq _kindOidGam _kindOnmLev _kindOopts _kindOpatchEhNmInInstance _kindOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Kind_Variable :: Range -> Name -> T_Kind sem_Kind_Variable range_ name_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOfreeTvarS :: HsNameS _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 589, column 9) _idAsp = IdAsp_Kind_Var -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 589, column 9) _idOccKind = IdOcc_Kind -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 592, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] _idOccKind _idAsp range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 110, column 9) _pp = pp name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 186, column 9) _lhsOeh = rngLift range_ EH.KiExpr_Var name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 104, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 110, column 9) _lhsOfreeTvarS = Set.singleton name_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Kind_Forall :: Range -> Names -> T_Kind -> T_Kind sem_Kind_Forall range_ kindvariables_ kind_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOfreeTvarS :: HsNameS _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _kindOgUniq :: UID _kindOidGam :: IdDefOccGam _kindOnmLev :: NmLev _kindOopts :: EHCOpts _kindOpatchEhNmInInstance :: PatchEhNmInInstance _kindOtopInstanceNmL :: ([HsName]) _kindIconNm :: Name _kindIeh :: (EH.KiExpr) _kindIerrSq :: ErrSq _kindIfreeTvarS :: HsNameS _kindIgUniq :: UID _kindIidUseOccGam :: IdUseOccGam _kindIpp :: PP_Doc _kindIppWrap :: (PP_Doc -> PP_Doc) _kindItopInstanceNmL :: ([HsName]) _kindIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 247, column 9) _idDefOccGamInside = kvarL2IdDefOccGam _lhsInmLev range_ kindvariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 412, column 9) _idGam = gamUnion _idDefOccGamInside _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 112, column 9) _pp = "forall" >#< ppSpaces kindvariables_ >#< "." >#< _kindIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 188, column 9) _lhsOeh = _kindIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 104, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 112, column 9) _lhsOfreeTvarS = _kindIfreeTvarS `Set.difference` Set.fromList kindvariables_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _kindIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _kindIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _kindIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _kindIundefOccGam -- copy rule (up) _lhsOgUniq = _kindIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _kindItopInstanceNmL -- copy rule (down) _kindOgUniq = _lhsIgUniq -- copy rule (from local) _kindOidGam = _idGam -- copy rule (down) _kindOnmLev = _lhsInmLev -- copy rule (down) _kindOopts = _lhsIopts -- copy rule (down) _kindOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _kindOtopInstanceNmL = _lhsItopInstanceNmL ( _kindIconNm,_kindIeh,_kindIerrSq,_kindIfreeTvarS,_kindIgUniq,_kindIidUseOccGam,_kindIpp,_kindIppWrap,_kindItopInstanceNmL,_kindIundefOccGam) = kind_ _kindOgUniq _kindOidGam _kindOnmLev _kindOopts _kindOpatchEhNmInInstance _kindOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Kind_Annotate :: Range -> T_KindAnnotation -> T_Kind -> T_Kind sem_Kind_Annotate range_ annotation_ kind_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.KiExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _annotationOgUniq :: UID _annotationOidGam :: IdDefOccGam _annotationOnmLev :: NmLev _annotationOopts :: EHCOpts _annotationOpatchEhNmInInstance :: PatchEhNmInInstance _annotationOtopInstanceNmL :: ([HsName]) _kindOgUniq :: UID _kindOidGam :: IdDefOccGam _kindOnmLev :: NmLev _kindOopts :: EHCOpts _kindOpatchEhNmInInstance :: PatchEhNmInInstance _kindOtopInstanceNmL :: ([HsName]) _annotationIeh :: (EH.KiExprAnn) _annotationIerrSq :: ErrSq _annotationIfreeTvarS :: HsNameS _annotationIgUniq :: UID _annotationIidUseOccGam :: IdUseOccGam _annotationIpp :: PP_Doc _annotationIppWrap :: (PP_Doc -> PP_Doc) _annotationItopInstanceNmL :: ([HsName]) _annotationIundefOccGam :: IdUseOccGam _kindIconNm :: Name _kindIeh :: (EH.KiExpr) _kindIerrSq :: ErrSq _kindIfreeTvarS :: HsNameS _kindIgUniq :: UID _kindIidUseOccGam :: IdUseOccGam _kindIpp :: PP_Doc _kindIppWrap :: (PP_Doc -> PP_Doc) _kindItopInstanceNmL :: ([HsName]) _kindIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 190, column 17) _eh = rngLift range_ EH.KiExpr_Ann _annotationIeh _kindIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 104, column 9) _lhsOconNm = hsnUnknown -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _annotationIerrSq `Seq.union` _kindIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 106, column 30) _lhsOfreeTvarS = _annotationIfreeTvarS `Set.union` _kindIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _annotationIidUseOccGam `gamAddGam` _kindIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _annotationIpp >-< _kindIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _annotationIppWrap . _kindIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _annotationIundefOccGam `gamUnion` _kindIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _kindIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _kindItopInstanceNmL -- copy rule (down) _annotationOgUniq = _lhsIgUniq -- copy rule (down) _annotationOidGam = _lhsIidGam -- copy rule (down) _annotationOnmLev = _lhsInmLev -- copy rule (down) _annotationOopts = _lhsIopts -- copy rule (down) _annotationOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _annotationOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (chain) _kindOgUniq = _annotationIgUniq -- copy rule (down) _kindOidGam = _lhsIidGam -- copy rule (down) _kindOnmLev = _lhsInmLev -- copy rule (down) _kindOopts = _lhsIopts -- copy rule (down) _kindOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _kindOtopInstanceNmL = _annotationItopInstanceNmL ( _annotationIeh,_annotationIerrSq,_annotationIfreeTvarS,_annotationIgUniq,_annotationIidUseOccGam,_annotationIpp,_annotationIppWrap,_annotationItopInstanceNmL,_annotationIundefOccGam) = annotation_ _annotationOgUniq _annotationOidGam _annotationOnmLev _annotationOopts _annotationOpatchEhNmInInstance _annotationOtopInstanceNmL ( _kindIconNm,_kindIeh,_kindIerrSq,_kindIfreeTvarS,_kindIgUniq,_kindIidUseOccGam,_kindIpp,_kindIppWrap,_kindItopInstanceNmL,_kindIundefOccGam) = kind_ _kindOgUniq _kindOidGam _kindOnmLev _kindOopts _kindOpatchEhNmInInstance _kindOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- KindAnnotation ---------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.KiExprAnn errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Empty: visit 0: local eh : _ -} -- cata sem_KindAnnotation :: KindAnnotation -> T_KindAnnotation sem_KindAnnotation (KindAnnotation_Empty) = (sem_KindAnnotation_Empty) -- semantic domain type T_KindAnnotation = UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.KiExprAnn),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_KindAnnotation_Empty :: T_KindAnnotation sem_KindAnnotation_Empty = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.KiExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 914, column 17) _eh = EH.KiExprAnn_Empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 106, column 30) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Kinds ------------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.KiExpr] errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Kind child tl : Kinds alternative Nil: -} -- cata sem_Kinds :: Kinds -> T_Kinds sem_Kinds list = (Prelude.foldr sem_Kinds_Cons sem_Kinds_Nil (Prelude.map sem_Kind list)) -- semantic domain type T_Kinds = UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.KiExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Kinds_Cons :: T_Kind -> T_Kinds -> T_Kinds sem_Kinds_Cons hd_ tl_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.KiExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIconNm :: Name _hdIeh :: (EH.KiExpr) _hdIerrSq :: ErrSq _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.KiExpr]) _tlIerrSq :: ErrSq _tlIfreeTvarS :: HsNameS _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 448, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 172, column 21) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 106, column 30) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIconNm,_hdIeh,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOgUniq _hdOidGam _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOgUniq _tlOidGam _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Kinds_Nil :: T_Kinds sem_Kinds_Nil = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.KiExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 450, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 172, column 21) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 106, column 30) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- LeftHandSide ------------------------------------------------ {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev nmLevFun : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.PatExpr] ehTyMk : EH.Expr -> EH.Expr errSq : ErrSq idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc refname : HsName undefOccGam : IdUseOccGam alternatives: alternative Function: child range : {Range} child name : {Name} child patterns : Patterns visit 0: local refname : _ local pp : _ alternative Infix: child range : {Range} child leftPattern : Pattern child operator : {Name} child rightPattern : Pattern visit 0: local patchEhNmInInstance : _ local refname : _ local pp : _ alternative Parenthesized: child range : {Range} child lefthandside : LeftHandSide child patterns : Patterns visit 0: local pp : _ alternative Typed: child range : {Range} child lefthandside : LeftHandSide child type : Type visit 0: local idDefOccGamType : _ local pp : _ local isAsPred : _ local doGenVarWild : _ -} -- cata sem_LeftHandSide :: LeftHandSide -> T_LeftHandSide sem_LeftHandSide (LeftHandSide_Function _range _name _patterns) = (sem_LeftHandSide_Function _range _name (sem_Patterns _patterns)) sem_LeftHandSide (LeftHandSide_Infix _range _leftPattern _operator _rightPattern) = (sem_LeftHandSide_Infix _range (sem_Pattern _leftPattern) _operator (sem_Pattern _rightPattern)) sem_LeftHandSide (LeftHandSide_Parenthesized _range _lefthandside _patterns) = (sem_LeftHandSide_Parenthesized _range (sem_LeftHandSide _lefthandside) (sem_Patterns _patterns)) sem_LeftHandSide (LeftHandSide_Typed _range _lefthandside _type) = (sem_LeftHandSide_Typed _range (sem_LeftHandSide _lefthandside) (sem_Type _type)) -- semantic domain type T_LeftHandSide = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.PatExpr]),(EH.Expr -> EH.Expr),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),HsName,([HsName]),IdUseOccGam) sem_LeftHandSide_Function :: Range -> Name -> T_Patterns -> T_LeftHandSide sem_LeftHandSide_Function range_ name_ patterns_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsInmLevFun _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _lhsOeh :: ([EH.PatExpr]) _lhsOehTyMk :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOrefname :: HsName _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOtopInstanceNmL :: ([HsName]) _patternsIeh :: ([EH.PatExpr]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidDefOccGam :: IdDefOccGam _patternsIidOccDefs :: ([IdOcc]) _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1087, column 9) _patternsOpatchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 47, column 9) _refname = hsnSetLevQual _lhsInmLevFun _lhsImoduleNm name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 317, column 9) _pp = name_ >#< ppSpaces _patternsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 735, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Var (_lhsIpatchEhNmInInstance _refname) : _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 755, column 9) _lhsOehTyMk = id -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternsIundefOccGam -- copy rule (up) _lhsOgUniq = _patternsIgUniq -- copy rule (from local) _lhsOrefname = _refname -- copy rule (up) _lhsOtopInstanceNmL = _patternsItopInstanceNmL -- copy rule (down) _patternsOfixityGam = _lhsIfixityGam -- copy rule (down) _patternsOgUniq = _lhsIgUniq -- copy rule (down) _patternsOidGam = _lhsIidGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternsOnmLev = _lhsInmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOtopInstanceNmL = _lhsItopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL in ( _lhsOeh,_lhsOehTyMk,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOrefname,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_LeftHandSide_Infix :: Range -> T_Pattern -> Name -> T_Pattern -> T_LeftHandSide sem_LeftHandSide_Infix range_ leftPattern_ operator_ rightPattern_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsInmLevFun _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.PatExpr]) _lhsOehTyMk :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOrefname :: HsName _lhsOtopInstanceNmL :: ([HsName]) _leftPatternOfixityGam :: FixityGam _leftPatternOgUniq :: UID _leftPatternOidGam :: IdDefOccGam _leftPatternOmoduleNm :: HsName _leftPatternOnmLev :: NmLev _leftPatternOopts :: EHCOpts _leftPatternOpatchEhNmInInstance :: PatchEhNmInInstance _leftPatternOtopInstanceNmL :: ([HsName]) _rightPatternOfixityGam :: FixityGam _rightPatternOgUniq :: UID _rightPatternOidGam :: IdDefOccGam _rightPatternOmoduleNm :: HsName _rightPatternOnmLev :: NmLev _rightPatternOopts :: EHCOpts _rightPatternOpatchEhNmInInstance :: PatchEhNmInInstance _rightPatternOtopInstanceNmL :: ([HsName]) _leftPatternIeh :: (EH.PatExpr) _leftPatternIerrSq :: ErrSq _leftPatternIgUniq :: UID _leftPatternIidDefOccGam :: IdDefOccGam _leftPatternIidOccDefs :: ([IdOcc]) _leftPatternIidUseOccGam :: IdUseOccGam _leftPatternIisVar :: Bool _leftPatternImbTopRefname :: (Maybe HsName) _leftPatternIpp :: PP_Doc _leftPatternIppWrap :: (PP_Doc -> PP_Doc) _leftPatternItopInstanceNmL :: ([HsName]) _leftPatternIundefOccGam :: IdUseOccGam _rightPatternIeh :: (EH.PatExpr) _rightPatternIerrSq :: ErrSq _rightPatternIgUniq :: UID _rightPatternIidDefOccGam :: IdDefOccGam _rightPatternIidOccDefs :: ([IdOcc]) _rightPatternIidUseOccGam :: IdUseOccGam _rightPatternIisVar :: Bool _rightPatternImbTopRefname :: (Maybe HsName) _rightPatternIpp :: PP_Doc _rightPatternIppWrap :: (PP_Doc -> PP_Doc) _rightPatternItopInstanceNmL :: ([HsName]) _rightPatternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1090, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 49, column 9) _refname = hsnSetLevQual _lhsInmLevFun _lhsImoduleNm operator_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 319, column 9) _pp = _leftPatternIpp >#< operator_ >#< _rightPatternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 739, column 9) _lhsOeh = [ rngLift range_ EH.PatExpr_Var (_lhsIpatchEhNmInInstance _refname) , _leftPatternIeh , _rightPatternIeh ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 755, column 9) _lhsOehTyMk = id -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _leftPatternIerrSq `Seq.union` _rightPatternIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _leftPatternIidDefOccGam `gamAddGam` _rightPatternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _leftPatternIidOccDefs ++ _rightPatternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _leftPatternIidUseOccGam `gamAddGam` _rightPatternIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftPatternIppWrap . _rightPatternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftPatternIundefOccGam `gamUnion` _rightPatternIundefOccGam -- copy rule (up) _lhsOgUniq = _rightPatternIgUniq -- copy rule (from local) _lhsOrefname = _refname -- copy rule (up) _lhsOtopInstanceNmL = _rightPatternItopInstanceNmL -- copy rule (down) _leftPatternOfixityGam = _lhsIfixityGam -- copy rule (down) _leftPatternOgUniq = _lhsIgUniq -- copy rule (down) _leftPatternOidGam = _lhsIidGam -- copy rule (down) _leftPatternOmoduleNm = _lhsImoduleNm -- copy rule (down) _leftPatternOnmLev = _lhsInmLev -- copy rule (down) _leftPatternOopts = _lhsIopts -- copy rule (from local) _leftPatternOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (down) _leftPatternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _rightPatternOfixityGam = _lhsIfixityGam -- copy rule (chain) _rightPatternOgUniq = _leftPatternIgUniq -- copy rule (down) _rightPatternOidGam = _lhsIidGam -- copy rule (down) _rightPatternOmoduleNm = _lhsImoduleNm -- copy rule (down) _rightPatternOnmLev = _lhsInmLev -- copy rule (down) _rightPatternOopts = _lhsIopts -- copy rule (from local) _rightPatternOpatchEhNmInInstance = _patchEhNmInInstance -- copy rule (chain) _rightPatternOtopInstanceNmL = _leftPatternItopInstanceNmL ( _leftPatternIeh,_leftPatternIerrSq,_leftPatternIgUniq,_leftPatternIidDefOccGam,_leftPatternIidOccDefs,_leftPatternIidUseOccGam,_leftPatternIisVar,_leftPatternImbTopRefname,_leftPatternIpp,_leftPatternIppWrap,_leftPatternItopInstanceNmL,_leftPatternIundefOccGam) = leftPattern_ _leftPatternOfixityGam _leftPatternOgUniq _leftPatternOidGam _leftPatternOmoduleNm _leftPatternOnmLev _leftPatternOopts _leftPatternOpatchEhNmInInstance _leftPatternOtopInstanceNmL ( _rightPatternIeh,_rightPatternIerrSq,_rightPatternIgUniq,_rightPatternIidDefOccGam,_rightPatternIidOccDefs,_rightPatternIidUseOccGam,_rightPatternIisVar,_rightPatternImbTopRefname,_rightPatternIpp,_rightPatternIppWrap,_rightPatternItopInstanceNmL,_rightPatternIundefOccGam) = rightPattern_ _rightPatternOfixityGam _rightPatternOgUniq _rightPatternOidGam _rightPatternOmoduleNm _rightPatternOnmLev _rightPatternOopts _rightPatternOpatchEhNmInInstance _rightPatternOtopInstanceNmL in ( _lhsOeh,_lhsOehTyMk,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOrefname,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_LeftHandSide_Parenthesized :: Range -> T_LeftHandSide -> T_Patterns -> T_LeftHandSide sem_LeftHandSide_Parenthesized range_ lefthandside_ patterns_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsInmLevFun _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.PatExpr]) _lhsOehTyMk :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOrefname :: HsName _lhsOtopInstanceNmL :: ([HsName]) _lefthandsideOcaseId :: UID _lefthandsideOfixityGam :: FixityGam _lefthandsideOgUniq :: UID _lefthandsideOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _lefthandsideOidGam :: IdDefOccGam _lefthandsideOmoduleNm :: HsName _lefthandsideOnmLev :: NmLev _lefthandsideOnmLevFun :: NmLev _lefthandsideOopts :: EHCOpts _lefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _lefthandsideOpragmas :: (Set.Set Pragma.Pragma) _lefthandsideOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _lefthandsideIeh :: ([EH.PatExpr]) _lefthandsideIehTyMk :: (EH.Expr -> EH.Expr) _lefthandsideIerrSq :: ErrSq _lefthandsideIgUniq :: UID _lefthandsideIidDefOccGam :: IdDefOccGam _lefthandsideIidOccDefs :: ([IdOcc]) _lefthandsideIidUseOccGam :: IdUseOccGam _lefthandsideIpp :: PP_Doc _lefthandsideIppWrap :: (PP_Doc -> PP_Doc) _lefthandsideIrefname :: HsName _lefthandsideItopInstanceNmL :: ([HsName]) _lefthandsideIundefOccGam :: IdUseOccGam _patternsIeh :: ([EH.PatExpr]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidDefOccGam :: IdDefOccGam _patternsIidOccDefs :: ([IdOcc]) _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 321, column 9) _pp = ppParens _lefthandsideIpp >#< ppSpaces _patternsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 745, column 9) _lhsOeh = _lefthandsideIeh ++ _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 755, column 9) _lhsOehTyMk = id -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _lefthandsideIerrSq `Seq.union` _patternsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _lefthandsideIidDefOccGam `gamAddGam` _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _lefthandsideIidOccDefs ++ _patternsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _lefthandsideIidUseOccGam `gamAddGam` _patternsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _lefthandsideIppWrap . _patternsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _lefthandsideIundefOccGam `gamUnion` _patternsIundefOccGam -- copy rule (up) _lhsOgUniq = _patternsIgUniq -- copy rule (up) _lhsOrefname = _lefthandsideIrefname -- copy rule (up) _lhsOtopInstanceNmL = _patternsItopInstanceNmL -- copy rule (down) _lefthandsideOcaseId = _lhsIcaseId -- copy rule (down) _lefthandsideOfixityGam = _lhsIfixityGam -- copy rule (down) _lefthandsideOgUniq = _lhsIgUniq -- copy rule (down) _lefthandsideOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _lefthandsideOidGam = _lhsIidGam -- copy rule (down) _lefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (down) _lefthandsideOnmLev = _lhsInmLev -- copy rule (down) _lefthandsideOnmLevFun = _lhsInmLevFun -- copy rule (down) _lefthandsideOopts = _lhsIopts -- copy rule (down) _lefthandsideOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _lefthandsideOpragmas = _lhsIpragmas -- copy rule (down) _lefthandsideOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _patternsOfixityGam = _lhsIfixityGam -- copy rule (chain) _patternsOgUniq = _lefthandsideIgUniq -- copy rule (down) _patternsOidGam = _lhsIidGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternsOnmLev = _lhsInmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _patternsOtopInstanceNmL = _lefthandsideItopInstanceNmL ( _lefthandsideIeh,_lefthandsideIehTyMk,_lefthandsideIerrSq,_lefthandsideIgUniq,_lefthandsideIidDefOccGam,_lefthandsideIidOccDefs,_lefthandsideIidUseOccGam,_lefthandsideIpp,_lefthandsideIppWrap,_lefthandsideIrefname,_lefthandsideItopInstanceNmL,_lefthandsideIundefOccGam) = lefthandside_ _lefthandsideOcaseId _lefthandsideOfixityGam _lefthandsideOgUniq _lefthandsideOgenerDerivMp _lefthandsideOidGam _lefthandsideOmoduleNm _lefthandsideOnmLev _lefthandsideOnmLevFun _lefthandsideOopts _lefthandsideOpatchEhNmInInstance _lefthandsideOpragmas _lefthandsideOtopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL in ( _lhsOeh,_lhsOehTyMk,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOrefname,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_LeftHandSide_Typed :: Range -> T_LeftHandSide -> T_Type -> T_LeftHandSide sem_LeftHandSide_Typed range_ lefthandside_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsInmLevFun _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _typeOidGam :: IdDefOccGam _typeOnmLev :: NmLev _lhsOeh :: ([EH.PatExpr]) _lhsOehTyMk :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOrefname :: HsName _lhsOtopInstanceNmL :: ([HsName]) _lefthandsideOcaseId :: UID _lefthandsideOfixityGam :: FixityGam _lefthandsideOgUniq :: UID _lefthandsideOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _lefthandsideOidGam :: IdDefOccGam _lefthandsideOmoduleNm :: HsName _lefthandsideOnmLev :: NmLev _lefthandsideOnmLevFun :: NmLev _lefthandsideOopts :: EHCOpts _lefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _lefthandsideOpragmas :: (Set.Set Pragma.Pragma) _lefthandsideOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _lefthandsideIeh :: ([EH.PatExpr]) _lefthandsideIehTyMk :: (EH.Expr -> EH.Expr) _lefthandsideIerrSq :: ErrSq _lefthandsideIgUniq :: UID _lefthandsideIidDefOccGam :: IdDefOccGam _lefthandsideIidOccDefs :: ([IdOcc]) _lefthandsideIidUseOccGam :: IdUseOccGam _lefthandsideIpp :: PP_Doc _lefthandsideIppWrap :: (PP_Doc -> PP_Doc) _lefthandsideIrefname :: HsName _lefthandsideItopInstanceNmL :: ([HsName]) _lefthandsideIundefOccGam :: IdUseOccGam _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 225, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 360, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 60, column 9) _typeOnmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 323, column 9) _pp = _lefthandsideIpp >#< "::" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 747, column 9) _lhsOeh = _lefthandsideIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 753, column 9) _lhsOehTyMk = rngLift range_ EH.Expr_TypeAs True _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 197, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 206, column 9) _doGenVarWild = True -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _lefthandsideIerrSq `Seq.union` _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _lefthandsideIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _lefthandsideIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _lefthandsideIidUseOccGam `gamAddGam` _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _lefthandsideIppWrap . _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _lefthandsideIundefOccGam `gamUnion` _typeIundefOccGam -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOrefname = _lefthandsideIrefname -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _lefthandsideOcaseId = _lhsIcaseId -- copy rule (down) _lefthandsideOfixityGam = _lhsIfixityGam -- copy rule (down) _lefthandsideOgUniq = _lhsIgUniq -- copy rule (down) _lefthandsideOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _lefthandsideOidGam = _lhsIidGam -- copy rule (down) _lefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (down) _lefthandsideOnmLev = _lhsInmLev -- copy rule (down) _lefthandsideOnmLevFun = _lhsInmLevFun -- copy rule (down) _lefthandsideOopts = _lhsIopts -- copy rule (down) _lefthandsideOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _lefthandsideOpragmas = _lhsIpragmas -- copy rule (down) _lefthandsideOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (chain) _typeOgUniq = _lefthandsideIgUniq -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _typeOtopInstanceNmL = _lefthandsideItopInstanceNmL ( _lefthandsideIeh,_lefthandsideIehTyMk,_lefthandsideIerrSq,_lefthandsideIgUniq,_lefthandsideIidDefOccGam,_lefthandsideIidOccDefs,_lefthandsideIidUseOccGam,_lefthandsideIpp,_lefthandsideIppWrap,_lefthandsideIrefname,_lefthandsideItopInstanceNmL,_lefthandsideIundefOccGam) = lefthandside_ _lefthandsideOcaseId _lefthandsideOfixityGam _lefthandsideOgUniq _lefthandsideOgenerDerivMp _lefthandsideOidGam _lefthandsideOmoduleNm _lefthandsideOnmLev _lefthandsideOnmLevFun _lefthandsideOopts _lefthandsideOpatchEhNmInInstance _lefthandsideOpragmas _lefthandsideOtopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOeh,_lhsOehTyMk,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOrefname,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Literal ----------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : Literal errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Int: child range : {Range} child base : {Int} child value : {String} visit 0: local pp : _ local eh : _ alternative Char: child range : {Range} child value : {String} visit 0: local pp : _ local eh : _ alternative String: child range : {Range} child value : {String} visit 0: local pp : _ local eh : _ alternative Float: child range : {Range} child value : {String} visit 0: local pp : _ local eh : _ -} -- cata sem_Literal :: Literal -> T_Literal sem_Literal (Literal_Int _range _base _value) = (sem_Literal_Int _range _base _value) sem_Literal (Literal_Char _range _value) = (sem_Literal_Char _range _value) sem_Literal (Literal_String _range _value) = (sem_Literal_String _range _value) sem_Literal (Literal_Float _range _value) = (sem_Literal_Float _range _value) -- semantic domain type T_Literal = UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( Literal,ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Literal_Int :: Range -> Int -> String -> T_Literal sem_Literal_Int range_ base_ value_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: Literal _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 384, column 9) _pp = pp value_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- self rule _eh = Literal_Int range_ base_ value_ -- self rule _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Literal_Char :: Range -> String -> T_Literal sem_Literal_Char range_ value_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: Literal _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 386, column 9) _pp = pp ("'" ++ value_ ++ "'") -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- self rule _eh = Literal_Char range_ value_ -- self rule _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Literal_String :: Range -> String -> T_Literal sem_Literal_String range_ value_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: Literal _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 388, column 9) _pp = pp (show value_) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- self rule _eh = Literal_String range_ value_ -- self rule _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Literal_Float :: Range -> String -> T_Literal sem_Literal_Float range_ value_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: Literal _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 390, column 9) _pp = pp value_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- self rule _eh = Literal_Float range_ value_ -- self rule _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- MaybeDeclarations ------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : Maybe [EH.Decl] errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idOccDefs : [IdOcc] idTySigDefOccGam : IdDefOccGam idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Just: child just : Declarations visit 0: local pp : _ alternative Nothing: -} -- cata sem_MaybeDeclarations :: MaybeDeclarations -> T_MaybeDeclarations sem_MaybeDeclarations (Prelude.Just x) = (sem_MaybeDeclarations_Just (sem_Declarations x)) sem_MaybeDeclarations Prelude.Nothing = sem_MaybeDeclarations_Nothing -- semantic domain type T_MaybeDeclarations = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (Maybe [EH.Decl]),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,([IdOcc]),IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_MaybeDeclarations_Just :: T_Declarations -> T_MaybeDeclarations sem_MaybeDeclarations_Just just_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: (Maybe [EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _justOcaseId :: UID _justOfixityGam :: FixityGam _justOgUniq :: UID _justOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _justOidGam :: IdDefOccGam _justOmoduleNm :: HsName _justOnmLev :: NmLev _justOopts :: EHCOpts _justOpatchEhNmInInstance :: PatchEhNmInInstance _justOpragmas :: (Set.Set Pragma.Pragma) _justOtopInstanceNmL :: ([HsName]) _justIeh :: ([EH.Decl]) _justIerrSq :: ErrSq _justIgUniq :: UID _justIgathFixityGam :: FixityGam _justIgathPragmas :: (Set.Set Pragma.Pragma) _justIidDefOccGam :: IdDefOccGam _justIidDpdMp :: IdDpdMp _justIidOccDefs :: ([IdOcc]) _justIidTySigDefOccGam :: IdDefOccGam _justIidUseOccGam :: IdUseOccGam _justIneedsError :: Bool _justIpp :: PP_Doc _justIppWrap :: (PP_Doc -> PP_Doc) _justItopInstanceNmL :: ([HsName]) _justIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 25, column 9) _pp = "where" >#< _justIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 72, column 9) _lhsOeh = Just _justIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _justIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _justIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _justIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _justIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = _justIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _justIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = _justIidTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _justIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = _justIneedsError -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _justIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _justIundefOccGam -- copy rule (up) _lhsOgUniq = _justIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _justItopInstanceNmL -- copy rule (down) _justOcaseId = _lhsIcaseId -- copy rule (down) _justOfixityGam = _lhsIfixityGam -- copy rule (down) _justOgUniq = _lhsIgUniq -- copy rule (down) _justOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _justOidGam = _lhsIidGam -- copy rule (down) _justOmoduleNm = _lhsImoduleNm -- copy rule (down) _justOnmLev = _lhsInmLev -- copy rule (down) _justOopts = _lhsIopts -- copy rule (down) _justOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _justOpragmas = _lhsIpragmas -- copy rule (down) _justOtopInstanceNmL = _lhsItopInstanceNmL ( _justIeh,_justIerrSq,_justIgUniq,_justIgathFixityGam,_justIgathPragmas,_justIidDefOccGam,_justIidDpdMp,_justIidOccDefs,_justIidTySigDefOccGam,_justIidUseOccGam,_justIneedsError,_justIpp,_justIppWrap,_justItopInstanceNmL,_justIundefOccGam) = just_ _justOcaseId _justOfixityGam _justOgUniq _justOgenerDerivMp _justOidGam _justOmoduleNm _justOnmLev _justOopts _justOpatchEhNmInInstance _justOpragmas _justOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_MaybeDeclarations_Nothing :: T_MaybeDeclarations sem_MaybeDeclarations_Nothing = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: (Maybe [EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidTySigDefOccGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 64, column 33) _lhsOeh = Nothing -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 269, column 28) _lhsOidTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 693, column 38) _lhsOneedsError = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidTySigDefOccGam,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- MaybeExports ------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Just: child just : Exports alternative Nothing: -} -- cata sem_MaybeExports :: MaybeExports -> T_MaybeExports sem_MaybeExports (Prelude.Just x) = (sem_MaybeExports_Just (sem_Exports x)) sem_MaybeExports Prelude.Nothing = sem_MaybeExports_Nothing -- semantic domain type T_MaybeExports = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_MaybeExports_Just :: T_Exports -> T_MaybeExports sem_MaybeExports_Just just_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _justOfixityGam :: FixityGam _justOgUniq :: UID _justOidGam :: IdDefOccGam _justOisMainMod :: Bool _justOisTopMod :: Bool _justOmoduleNm :: HsName _justOnmLev :: NmLev _justOopts :: EHCOpts _justOpatchEhNmInInstance :: PatchEhNmInInstance _justOtopInstanceNmL :: ([HsName]) _justIerrSq :: ErrSq _justIgUniq :: UID _justIgathFixityGam :: FixityGam _justIidUseOccGam :: IdUseOccGam _justIpp :: PP_Doc _justIppWrap :: (PP_Doc -> PP_Doc) _justItopInstanceNmL :: ([HsName]) _justIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _justIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _justIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _justIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _justIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _justIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _justIundefOccGam -- copy rule (up) _lhsOgUniq = _justIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _justItopInstanceNmL -- copy rule (down) _justOfixityGam = _lhsIfixityGam -- copy rule (down) _justOgUniq = _lhsIgUniq -- copy rule (down) _justOidGam = _lhsIidGam -- copy rule (down) _justOisMainMod = _lhsIisMainMod -- copy rule (down) _justOisTopMod = _lhsIisTopMod -- copy rule (down) _justOmoduleNm = _lhsImoduleNm -- copy rule (down) _justOnmLev = _lhsInmLev -- copy rule (down) _justOopts = _lhsIopts -- copy rule (down) _justOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _justOtopInstanceNmL = _lhsItopInstanceNmL ( _justIerrSq,_justIgUniq,_justIgathFixityGam,_justIidUseOccGam,_justIpp,_justIppWrap,_justItopInstanceNmL,_justIundefOccGam) = just_ _justOfixityGam _justOgUniq _justOidGam _justOisMainMod _justOisTopMod _justOmoduleNm _justOnmLev _justOopts _justOpatchEhNmInInstance _justOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_MaybeExports_Nothing :: T_MaybeExports sem_MaybeExports_Nothing = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- MaybeExpression --------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : Maybe EH.Expr errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppMb : Maybe PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Just: child just : Expression alternative Nothing: -} -- cata sem_MaybeExpression :: MaybeExpression -> T_MaybeExpression sem_MaybeExpression (Prelude.Just x) = (sem_MaybeExpression_Just (sem_Expression x)) sem_MaybeExpression Prelude.Nothing = sem_MaybeExpression_Nothing -- semantic domain type T_MaybeExpression = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (Maybe EH.Expr),ErrSq,UID,IdUseOccGam,PP_Doc,(Maybe PP_Doc),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_MaybeExpression_Just :: T_Expression -> T_MaybeExpression sem_MaybeExpression_Just just_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppMb :: (Maybe PP_Doc) _lhsOeh :: (Maybe EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _justOcaseId :: UID _justOfixityGam :: FixityGam _justOgUniq :: UID _justOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _justOidGam :: IdDefOccGam _justOmoduleNm :: HsName _justOnmLev :: NmLev _justOopts :: EHCOpts _justOpatchEhNmInInstance :: PatchEhNmInInstance _justOpragmas :: (Set.Set Pragma.Pragma) _justOtopInstanceNmL :: ([HsName]) _justIconNm :: Name _justIeh :: (EH.Expr) _justIerrSq :: ErrSq _justIgUniq :: UID _justIidUseOccGam :: IdUseOccGam _justIopChain :: (OpChain EH.Expr) _justIoperatorName :: MaybeName _justIpp :: PP_Doc _justIppWrap :: (PP_Doc -> PP_Doc) _justItopInstanceNmL :: ([HsName]) _justIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 400, column 9) _lhsOppMb = Just _justIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 462, column 9) _lhsOeh = Just _justIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _justIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _justIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _justIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _justIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _justIundefOccGam -- copy rule (up) _lhsOgUniq = _justIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _justItopInstanceNmL -- copy rule (down) _justOcaseId = _lhsIcaseId -- copy rule (down) _justOfixityGam = _lhsIfixityGam -- copy rule (down) _justOgUniq = _lhsIgUniq -- copy rule (down) _justOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _justOidGam = _lhsIidGam -- copy rule (down) _justOmoduleNm = _lhsImoduleNm -- copy rule (down) _justOnmLev = _lhsInmLev -- copy rule (down) _justOopts = _lhsIopts -- copy rule (down) _justOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _justOpragmas = _lhsIpragmas -- copy rule (down) _justOtopInstanceNmL = _lhsItopInstanceNmL ( _justIconNm,_justIeh,_justIerrSq,_justIgUniq,_justIidUseOccGam,_justIopChain,_justIoperatorName,_justIpp,_justIppWrap,_justItopInstanceNmL,_justIundefOccGam) = just_ _justOcaseId _justOfixityGam _justOgUniq _justOgenerDerivMp _justOidGam _justOmoduleNm _justOnmLev _justOopts _justOpatchEhNmInInstance _justOpragmas _justOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppMb,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_MaybeExpression_Nothing :: T_MaybeExpression sem_MaybeExpression_Nothing = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppMb :: (Maybe PP_Doc) _lhsOeh :: (Maybe EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 402, column 9) _lhsOppMb = Nothing -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 456, column 31) _lhsOeh = Nothing -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppMb,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- MaybeImportSpecification ------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Just: child just : ImportSpecification alternative Nothing: -} -- cata sem_MaybeImportSpecification :: MaybeImportSpecification -> T_MaybeImportSpecification sem_MaybeImportSpecification (Prelude.Just x) = (sem_MaybeImportSpecification_Just (sem_ImportSpecification x)) sem_MaybeImportSpecification Prelude.Nothing = sem_MaybeImportSpecification_Nothing -- semantic domain type T_MaybeImportSpecification = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_MaybeImportSpecification_Just :: T_ImportSpecification -> T_MaybeImportSpecification sem_MaybeImportSpecification_Just just_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _justOfixityGam :: FixityGam _justOgUniq :: UID _justOidGam :: IdDefOccGam _justOisMainMod :: Bool _justOisTopMod :: Bool _justOmoduleNm :: HsName _justOnmLev :: NmLev _justOopts :: EHCOpts _justOpatchEhNmInInstance :: PatchEhNmInInstance _justOtopInstanceNmL :: ([HsName]) _justIerrSq :: ErrSq _justIgUniq :: UID _justIgathFixityGam :: FixityGam _justIidUseOccGam :: IdUseOccGam _justIpp :: PP_Doc _justIppWrap :: (PP_Doc -> PP_Doc) _justItopInstanceNmL :: ([HsName]) _justIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _justIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _justIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _justIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _justIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _justIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _justIundefOccGam -- copy rule (up) _lhsOgUniq = _justIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _justItopInstanceNmL -- copy rule (down) _justOfixityGam = _lhsIfixityGam -- copy rule (down) _justOgUniq = _lhsIgUniq -- copy rule (down) _justOidGam = _lhsIidGam -- copy rule (down) _justOisMainMod = _lhsIisMainMod -- copy rule (down) _justOisTopMod = _lhsIisTopMod -- copy rule (down) _justOmoduleNm = _lhsImoduleNm -- copy rule (down) _justOnmLev = _lhsInmLev -- copy rule (down) _justOopts = _lhsIopts -- copy rule (down) _justOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _justOtopInstanceNmL = _lhsItopInstanceNmL ( _justIerrSq,_justIgUniq,_justIgathFixityGam,_justIidUseOccGam,_justIpp,_justIppWrap,_justItopInstanceNmL,_justIundefOccGam) = just_ _justOfixityGam _justOgUniq _justOidGam _justOisMainMod _justOisTopMod _justOmoduleNm _justOnmLev _justOopts _justOpatchEhNmInInstance _justOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_MaybeImportSpecification_Nothing :: T_MaybeImportSpecification sem_MaybeImportSpecification_Nothing = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- MaybeType --------------------------------------------------- {- visit 0: inherited attributes: doGenVarWild : Bool fixityGam : FixityGam idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : Maybe EH.TyExpr errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppMb : Maybe PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Just: child just : Type visit 0: local isAsPred : _ alternative Nothing: visit 0: local isAsPred : _ -} -- cata sem_MaybeType :: MaybeType -> T_MaybeType sem_MaybeType (Prelude.Just x) = (sem_MaybeType_Just (sem_Type x)) sem_MaybeType Prelude.Nothing = sem_MaybeType_Nothing -- semantic domain type T_MaybeType = Bool -> FixityGam -> UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (Maybe EH.TyExpr),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(Maybe PP_Doc),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_MaybeType_Just :: T_Type -> T_MaybeType sem_MaybeType_Just just_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppMb :: (Maybe PP_Doc) _lhsOeh :: (Maybe EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _justOdoGenVarWild :: Bool _justOfixityGam :: FixityGam _justOgUniq :: UID _justOidGam :: IdDefOccGam _justOisAsPred :: Bool _justOnmLev :: NmLev _justOopts :: EHCOpts _justOpatchEhNmInInstance :: PatchEhNmInInstance _justOtopInstanceNmL :: ([HsName]) _justIconNm :: Name _justIeh :: (EH.TyExpr) _justIehMbAsPr :: (Maybe EH.PrExpr) _justIehMbAsPrL :: ([Maybe EH.PrExpr]) _justIehMbAsTyPr :: (Maybe EH.TyExpr) _justIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _justIerrSq :: ErrSq _justIfreeTvarS :: HsNameS _justIgUniq :: UID _justIidUseOccGam :: IdUseOccGam _justImbRefConNm :: (Maybe Name) _justIopChain :: (OpChain EH.TyExpr) _justIoperatorName :: MaybeName _justIpp :: PP_Doc _justIppWrap :: (PP_Doc -> PP_Doc) _justItopInstanceNmL :: ([HsName]) _justItyConIs :: TypeConFixedMeaning _justIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 406, column 9) _lhsOppMb = Just _justIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 205, column 9) _lhsOeh = Just _justIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _justIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _justIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _justIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _justIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _justIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _justIundefOccGam -- copy rule (up) _lhsOgUniq = _justIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _justItopInstanceNmL -- copy rule (down) _justOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _justOfixityGam = _lhsIfixityGam -- copy rule (down) _justOgUniq = _lhsIgUniq -- copy rule (down) _justOidGam = _lhsIidGam -- copy rule (from local) _justOisAsPred = _isAsPred -- copy rule (down) _justOnmLev = _lhsInmLev -- copy rule (down) _justOopts = _lhsIopts -- copy rule (down) _justOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _justOtopInstanceNmL = _lhsItopInstanceNmL ( _justIconNm,_justIeh,_justIehMbAsPr,_justIehMbAsPrL,_justIehMbAsTyPr,_justIehMbAsTyPrL,_justIerrSq,_justIfreeTvarS,_justIgUniq,_justIidUseOccGam,_justImbRefConNm,_justIopChain,_justIoperatorName,_justIpp,_justIppWrap,_justItopInstanceNmL,_justItyConIs,_justIundefOccGam) = just_ _justOdoGenVarWild _justOfixityGam _justOgUniq _justOidGam _justOisAsPred _justOnmLev _justOopts _justOpatchEhNmInInstance _justOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppMb,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_MaybeType_Nothing :: T_MaybeType sem_MaybeType_Nothing = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppMb :: (Maybe PP_Doc) _lhsOeh :: (Maybe EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 408, column 9) _lhsOppMb = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 201, column 25) _lhsOeh = Nothing -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppMb,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Module ------------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool modEntToOrig : ModEntRngMp modInScope : ModEntDomMp moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.Expr errSq : ErrSq fileHeaderPragmas : Set.Set Pragma.Pragma gathFixityGam : FixityGam gathIdGam : IdDefOccGam idUseOccGam : IdUseOccGam mainValExists : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Module: child range : {Range} child name : {MaybeName} child fileheaderpragmas : Pragmas child exports : MaybeExports child body : Body visit 0: local fileHeaderPragmas : _ local opts : _ local errUndef : _ local errModName : _ -} -- cata sem_Module :: Module -> T_Module sem_Module (Module_Module _range _name _fileheaderpragmas _exports _body) = (sem_Module_Module _range _name (sem_Pragmas _fileheaderpragmas) (sem_MaybeExports _exports) (sem_Body _body)) -- semantic domain type T_Module = FixityGam -> UID -> IdDefOccGam -> Bool -> Bool -> ModEntRngMp -> ModEntDomMp -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.Expr),ErrSq,(Set.Set Pragma.Pragma),UID,FixityGam,IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Module_Module :: Range -> MaybeName -> T_Pragmas -> T_MaybeExports -> T_Body -> T_Module sem_Module_Module range_ name_ fileheaderpragmas_ exports_ body_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImodEntToOrig _lhsImodInScope _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _bodyOpragmas :: (Set.Set Pragma.Pragma) _lhsOfileHeaderPragmas :: (Set.Set Pragma.Pragma) _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOgathIdGam :: IdDefOccGam _lhsOmainValExists :: Bool _lhsOtopInstanceNmL :: ([HsName]) _fileheaderpragmasOgUniq :: UID _fileheaderpragmasOidGam :: IdDefOccGam _fileheaderpragmasOnmLev :: NmLev _fileheaderpragmasOopts :: EHCOpts _fileheaderpragmasOpatchEhNmInInstance :: PatchEhNmInInstance _fileheaderpragmasOtopInstanceNmL :: ([HsName]) _exportsOfixityGam :: FixityGam _exportsOgUniq :: UID _exportsOidGam :: IdDefOccGam _exportsOisMainMod :: Bool _exportsOisTopMod :: Bool _exportsOmoduleNm :: HsName _exportsOnmLev :: NmLev _exportsOopts :: EHCOpts _exportsOpatchEhNmInInstance :: PatchEhNmInInstance _exportsOtopInstanceNmL :: ([HsName]) _bodyOfixityGam :: FixityGam _bodyOgUniq :: UID _bodyOidGam :: IdDefOccGam _bodyOisMainMod :: Bool _bodyOisTopMod :: Bool _bodyOmodEntToOrig :: ModEntRngMp _bodyOmodInScope :: ModEntDomMp _bodyOmoduleNm :: HsName _bodyOnmLev :: NmLev _bodyOopts :: EHCOpts _bodyOpatchEhNmInInstance :: PatchEhNmInInstance _bodyOtopInstanceNmL :: ([HsName]) _fileheaderpragmasIerrSq :: ErrSq _fileheaderpragmasIgUniq :: UID _fileheaderpragmasIgathPragmas :: (Set.Set Pragma.Pragma) _fileheaderpragmasIidUseOccGam :: IdUseOccGam _fileheaderpragmasIpp :: PP_Doc _fileheaderpragmasIppWrap :: (PP_Doc -> PP_Doc) _fileheaderpragmasItopInstanceNmL :: ([HsName]) _fileheaderpragmasIundefOccGam :: IdUseOccGam _exportsIerrSq :: ErrSq _exportsIgUniq :: UID _exportsIgathFixityGam :: FixityGam _exportsIidUseOccGam :: IdUseOccGam _exportsIpp :: PP_Doc _exportsIppWrap :: (PP_Doc -> PP_Doc) _exportsItopInstanceNmL :: ([HsName]) _exportsIundefOccGam :: IdUseOccGam _bodyIeh :: (EH.Expr) _bodyIerrSq :: ErrSq _bodyIextraModImpL :: ([ModImp]) _bodyIgUniq :: UID _bodyIgathFixityGam :: FixityGam _bodyIgathIdGam :: IdDefOccGam _bodyIidUseOccGam :: IdUseOccGam _bodyImainValExists :: Bool _bodyIpp :: PP_Doc _bodyIppWrap :: (PP_Doc -> PP_Doc) _bodyItopInstanceNmL :: ([HsName]) _bodyIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 23, column 9) _fileHeaderPragmas = _fileheaderpragmasIgathPragmas -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 23, column 9) _opts = fst $ ehcOptUpdateWithPragmas _fileHeaderPragmas _lhsIopts -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 3, column 9) _errUndef = let ns = [ (ioccNm o >#< ppParens (ioccKind o),Just (map (\o -> (uoccRange o,Nothing)) os)) | (o,os) <- gamToAssocDupL _bodyIundefOccGam, not $ hsnIsProd $ ioccNm $ o ] in (if null ns then [] else [rngLift range_ mkErr_NamesNotIntrod' "" ns]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 16, column 9) _errModName = case name_ of Just n | n /= _lhsImoduleNm && not _lhsIisTopMod -> [rngLift range_ Err_ModNameMismatch _lhsImoduleNm n] _ -> [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 5, column 9) _lhsOerrSq = Seq.firstNotEmpty [Seq.fromList _errUndef,Seq.fromList _errModName,_bodyIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 305, column 9) _bodyOpragmas = _fileHeaderPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 2, column 43) _lhsOfileHeaderPragmas = _fileHeaderPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _exportsIgathFixityGam `gamAddGam` _bodyIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _fileheaderpragmasIidUseOccGam `gamAddGam` _exportsIidUseOccGam `gamAddGam` _bodyIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _fileheaderpragmasIpp >-< _exportsIpp >-< _bodyIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _fileheaderpragmasIppWrap . _exportsIppWrap . _bodyIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _fileheaderpragmasIundefOccGam `gamUnion` _exportsIundefOccGam `gamUnion` _bodyIundefOccGam -- copy rule (up) _lhsOeh = _bodyIeh -- copy rule (up) _lhsOgUniq = _bodyIgUniq -- copy rule (up) _lhsOgathIdGam = _bodyIgathIdGam -- copy rule (up) _lhsOmainValExists = _bodyImainValExists -- copy rule (up) _lhsOtopInstanceNmL = _bodyItopInstanceNmL -- copy rule (down) _fileheaderpragmasOgUniq = _lhsIgUniq -- copy rule (down) _fileheaderpragmasOidGam = _lhsIidGam -- copy rule (down) _fileheaderpragmasOnmLev = _lhsInmLev -- copy rule (from local) _fileheaderpragmasOopts = _opts -- copy rule (down) _fileheaderpragmasOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _fileheaderpragmasOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _exportsOfixityGam = _lhsIfixityGam -- copy rule (chain) _exportsOgUniq = _fileheaderpragmasIgUniq -- copy rule (down) _exportsOidGam = _lhsIidGam -- copy rule (down) _exportsOisMainMod = _lhsIisMainMod -- copy rule (down) _exportsOisTopMod = _lhsIisTopMod -- copy rule (down) _exportsOmoduleNm = _lhsImoduleNm -- copy rule (down) _exportsOnmLev = _lhsInmLev -- copy rule (from local) _exportsOopts = _opts -- copy rule (down) _exportsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _exportsOtopInstanceNmL = _fileheaderpragmasItopInstanceNmL -- copy rule (down) _bodyOfixityGam = _lhsIfixityGam -- copy rule (chain) _bodyOgUniq = _exportsIgUniq -- copy rule (down) _bodyOidGam = _lhsIidGam -- copy rule (down) _bodyOisMainMod = _lhsIisMainMod -- copy rule (down) _bodyOisTopMod = _lhsIisTopMod -- copy rule (down) _bodyOmodEntToOrig = _lhsImodEntToOrig -- copy rule (down) _bodyOmodInScope = _lhsImodInScope -- copy rule (down) _bodyOmoduleNm = _lhsImoduleNm -- copy rule (down) _bodyOnmLev = _lhsInmLev -- copy rule (from local) _bodyOopts = _opts -- copy rule (down) _bodyOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _bodyOtopInstanceNmL = _exportsItopInstanceNmL ( _fileheaderpragmasIerrSq,_fileheaderpragmasIgUniq,_fileheaderpragmasIgathPragmas,_fileheaderpragmasIidUseOccGam,_fileheaderpragmasIpp,_fileheaderpragmasIppWrap,_fileheaderpragmasItopInstanceNmL,_fileheaderpragmasIundefOccGam) = fileheaderpragmas_ _fileheaderpragmasOgUniq _fileheaderpragmasOidGam _fileheaderpragmasOnmLev _fileheaderpragmasOopts _fileheaderpragmasOpatchEhNmInInstance _fileheaderpragmasOtopInstanceNmL ( _exportsIerrSq,_exportsIgUniq,_exportsIgathFixityGam,_exportsIidUseOccGam,_exportsIpp,_exportsIppWrap,_exportsItopInstanceNmL,_exportsIundefOccGam) = exports_ _exportsOfixityGam _exportsOgUniq _exportsOidGam _exportsOisMainMod _exportsOisTopMod _exportsOmoduleNm _exportsOnmLev _exportsOopts _exportsOpatchEhNmInInstance _exportsOtopInstanceNmL ( _bodyIeh,_bodyIerrSq,_bodyIextraModImpL,_bodyIgUniq,_bodyIgathFixityGam,_bodyIgathIdGam,_bodyIidUseOccGam,_bodyImainValExists,_bodyIpp,_bodyIppWrap,_bodyItopInstanceNmL,_bodyIundefOccGam) = body_ _bodyOfixityGam _bodyOgUniq _bodyOidGam _bodyOisMainMod _bodyOisTopMod _bodyOmodEntToOrig _bodyOmodInScope _bodyOmoduleNm _bodyOnmLev _bodyOopts _bodyOpatchEhNmInInstance _bodyOpragmas _bodyOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfileHeaderPragmas,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathIdGam,_lhsOidUseOccGam,_lhsOmainValExists,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Pattern ----------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.PatExpr errSq : ErrSq idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam isVar : Bool mbTopRefname : Maybe HsName pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Literal: child range : {Range} child sign : {Int} child literal : Literal visit 0: local eqrefname : _ local idUseOccGamEq : _ local errIdUseEq : _ local litnames : _ local litrefname : _ local litrefnames : _ local idUseOccGam : _ local errIdUse : _ local eqclassrefname : _ local idUseOccGamCls : _ local errIdUseCls : _ local errSq : _ local isAsPred : _ alternative Variable: child range : {Range} child name : {Name} visit 0: local idDefOccGam : _ local refname : _ local isWildcard : _ local idOccDef : _ local idOccDefsNoWildcard : _ local idOccDefs : _ local pp : _ local isAsPred : _ alternative Constructor: child range : {Range} child name : {Name} child patterns : Patterns visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local conNm : _ local errSq : _ local pp : _ local isAsPred : _ alternative Parenthesized: child range : {Range} child pattern : Pattern visit 0: local pp : _ local isAsPred : _ alternative As: child range : {Range} child name : {Name} child pattern : Pattern visit 0: local idDefOccGam : _ local refname : _ local isWildcard : _ local idOccDef : _ local idOccDefsNoWildcard : _ local idOccDefs : _ local pp : _ local isAsPred : _ alternative Wildcard: child range : {Range} visit 0: local pp : _ local isAsPred : _ alternative Tuple: child range : {Range} child arity : {Int} child patterns : Patterns visit 0: local errArity : _ local errSq : _ local pp : _ local isAsPred : _ alternative Annotate: child range : {Range} child annotation : PatternAnnotation child pattern : Pattern visit 0: local eh : _ local isAsPred : _ alternative Typed: child range : {Range} child pattern : Pattern child type : Type visit 0: local idDefOccGamType : _ local pp : _ local isAsPred : _ local doGenVarWild : _ alternative InfixConstructor: child range : {Range} child leftPattern : Pattern child constructorOperator : {Name} child rightPattern : Pattern visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local conNm : _ local errSq : _ local pp : _ local isAsPred : _ alternative List: child range : {Range} child patterns : Patterns visit 0: local refnames : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local isAsPred : _ alternative Record: child range : {Range} child name : {Name} child recordPatternBindings : RecordPatternBindings visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local conNm : _ local errSq : _ local pp : _ local isAsPred : _ alternative RowRecordBinding: child range : {Range} child pattern : Pattern child rowRecordPattternBindings : RowRecordPatternBindings visit 0: local pp : _ local isAsPred : _ alternative RowRecordEmpty: child range : {Range} visit 0: local pp : _ local isAsPred : _ alternative Irrefutable: child range : {Range} child pattern : Pattern visit 0: local pp : _ local isAsPred : _ alternative Bang: child range : {Range} child pattern : Pattern visit 0: local pp : _ local isAsPred : _ -} -- cata sem_Pattern :: Pattern -> T_Pattern sem_Pattern (Pattern_Literal _range _sign _literal) = (sem_Pattern_Literal _range _sign (sem_Literal _literal)) sem_Pattern (Pattern_Variable _range _name) = (sem_Pattern_Variable _range _name) sem_Pattern (Pattern_Constructor _range _name _patterns) = (sem_Pattern_Constructor _range _name (sem_Patterns _patterns)) sem_Pattern (Pattern_Parenthesized _range _pattern) = (sem_Pattern_Parenthesized _range (sem_Pattern _pattern)) sem_Pattern (Pattern_As _range _name _pattern) = (sem_Pattern_As _range _name (sem_Pattern _pattern)) sem_Pattern (Pattern_Wildcard _range) = (sem_Pattern_Wildcard _range) sem_Pattern (Pattern_Tuple _range _arity _patterns) = (sem_Pattern_Tuple _range _arity (sem_Patterns _patterns)) sem_Pattern (Pattern_Annotate _range _annotation _pattern) = (sem_Pattern_Annotate _range (sem_PatternAnnotation _annotation) (sem_Pattern _pattern)) sem_Pattern (Pattern_Typed _range _pattern _type) = (sem_Pattern_Typed _range (sem_Pattern _pattern) (sem_Type _type)) sem_Pattern (Pattern_InfixConstructor _range _leftPattern _constructorOperator _rightPattern) = (sem_Pattern_InfixConstructor _range (sem_Pattern _leftPattern) _constructorOperator (sem_Pattern _rightPattern)) sem_Pattern (Pattern_List _range _patterns) = (sem_Pattern_List _range (sem_Patterns _patterns)) sem_Pattern (Pattern_Record _range _name _recordPatternBindings) = (sem_Pattern_Record _range _name (sem_RecordPatternBindings _recordPatternBindings)) sem_Pattern (Pattern_RowRecordBinding _range _pattern _rowRecordPattternBindings) = (sem_Pattern_RowRecordBinding _range (sem_Pattern _pattern) (sem_RowRecordPatternBindings _rowRecordPattternBindings)) sem_Pattern (Pattern_RowRecordEmpty _range) = (sem_Pattern_RowRecordEmpty _range) sem_Pattern (Pattern_Irrefutable _range _pattern) = (sem_Pattern_Irrefutable _range (sem_Pattern _pattern)) sem_Pattern (Pattern_Bang _range _pattern) = (sem_Pattern_Bang _range (sem_Pattern _pattern)) -- semantic domain type T_Pattern = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.PatExpr),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,(Maybe HsName),PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Pattern_Literal :: Range -> Int -> T_Literal -> T_Pattern sem_Pattern_Literal range_ sign_ literal_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _literalOgUniq :: UID _literalOidGam :: IdDefOccGam _literalOnmLev :: NmLev _literalOopts :: EHCOpts _literalOpatchEhNmInInstance :: PatchEhNmInInstance _literalOtopInstanceNmL :: ([HsName]) _literalIeh :: Literal _literalIerrSq :: ErrSq _literalIgUniq :: UID _literalIidUseOccGam :: IdUseOccGam _literalIpp :: PP_Doc _literalIppWrap :: (PP_Doc -> PP_Doc) _literalItopInstanceNmL :: ([HsName]) _literalIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 517, column 29) (_eqrefname,_,_idUseOccGamEq,_errIdUseEq) = mkUseOccGam _lhsIopts _lhsIidGam [hsnClassEqFldEq] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 517, column 9) _litnames = litNames _lhsIopts _literalIeh True sign_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 520, column 29) (_litrefname,_litrefnames,_idUseOccGam,_errIdUse) = mkUseOccGam' _lhsIopts _lhsIidGam _litnames range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 522, column 29) (_eqclassrefname,_,_idUseOccGamCls,_errIdUseCls) = mkUseOccGam _lhsIopts _lhsIidGam [hsnClassEq] IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 524, column 9) _lhsOidUseOccGam = gamUnions [ _idUseOccGam, _idUseOccGamEq , _idUseOccGamCls , _literalIidUseOccGam ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 49, column 9) _errSq = Seq.unions [ Seq.fromList _errIdUse, Seq.fromList _errIdUseEq , Seq.fromList _errIdUseCls , _literalIerrSq ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 801, column 9) _lhsOeh = let mkc r = \c -> mke r (rngLift r EH.Expr_CConst c, Just $ SrcConst_Char c) mke r = uncurry (rngLift r EH.PatExpr_Expr) in case _literalIeh of Literal_Char r s -> mkc r $ head s Literal_Int r b s -> mke r (ehExpLitInt r b s sign_ _litrefnames) Literal_String r s | ehcOptOverloadedStrings _lhsIopts -> mke r (ehExpLitString _lhsIopts r s _litrefnames) | otherwise -> foldr (\c p -> ehPatConApp r (_litrefnames !! 0) [mkc r c,p]) (ehPatConApp r (_litrefnames !! 1) []) s Literal_Float r s -> mke r (ehExpLitFloat r s sign_ _litrefnames) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _literalIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _literalIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _literalIundefOccGam -- copy rule (up) _lhsOgUniq = _literalIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _literalItopInstanceNmL -- copy rule (down) _literalOgUniq = _lhsIgUniq -- copy rule (down) _literalOidGam = _lhsIidGam -- copy rule (down) _literalOnmLev = _lhsInmLev -- copy rule (down) _literalOopts = _lhsIopts -- copy rule (down) _literalOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _literalOtopInstanceNmL = _lhsItopInstanceNmL ( _literalIeh,_literalIerrSq,_literalIgUniq,_literalIidUseOccGam,_literalIpp,_literalIppWrap,_literalItopInstanceNmL,_literalIundefOccGam) = literal_ _literalOgUniq _literalOidGam _literalOnmLev _literalOopts _literalOpatchEhNmInInstance _literalOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Variable :: Range -> Name -> T_Pattern sem_Pattern_Variable range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 216, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var _idOccDefsNoWildcard -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 54, column 9) _refname = hsnSetLevQual _lhsInmLev _lhsImoduleNm name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 100, column 9) _isWildcard = hsnIsWild name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 174, column 9) _idOccDef = IdOcc _refname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 174, column 9) _idOccDefsNoWildcard = if _isWildcard then [] else [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 178, column 9) _idOccDefs = _idOccDefsNoWildcard -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 227, column 9) _lhsOmbTopRefname = if _isWildcard then Just _refname else Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 341, column 9) _pp = pp name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 812, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Var (_lhsIpatchEhNmInInstance _refname) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 260, column 9) _lhsOisVar = True -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Constructor :: Range -> Name -> T_Patterns -> T_Pattern sem_Pattern_Constructor range_ name_ patterns_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsIeh :: ([EH.PatExpr]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidDefOccGam :: IdDefOccGam _patternsIidOccDefs :: ([IdOcc]) _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 559, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [_conNm] IdOcc_Val IdAsp_Val_Con range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 562, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_patternsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 219, column 9) _conNm = name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 45, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _patternsIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 343, column 9) _pp = name_ >#< ppSpaces _patternsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 815, column 9) _lhsOeh = ehPatConApp range_ _refname _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternsIundefOccGam -- copy rule (up) _lhsOgUniq = _patternsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _patternsItopInstanceNmL -- copy rule (down) _patternsOfixityGam = _lhsIfixityGam -- copy rule (down) _patternsOgUniq = _lhsIgUniq -- copy rule (down) _patternsOidGam = _lhsIidGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternsOnmLev = _lhsInmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternsOtopInstanceNmL = _lhsItopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Parenthesized :: Range -> T_Pattern -> T_Pattern sem_Pattern_Parenthesized range_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 345, column 9) _pp = ppParens _patternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 817, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Parens _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam -- copy rule (up) _lhsOgUniq = _patternIgUniq -- copy rule (up) _lhsOisVar = _patternIisVar -- copy rule (up) _lhsOtopInstanceNmL = _patternItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_As :: Range -> Name -> T_Pattern -> T_Pattern sem_Pattern_As range_ name_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOidDefOccGam :: IdDefOccGam _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 216, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var _idOccDefsNoWildcard -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 218, column 9) _lhsOidDefOccGam = _idDefOccGam `gamAddGam` _patternIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 54, column 9) _refname = hsnSetLevQual _lhsInmLev _lhsImoduleNm name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 100, column 9) _isWildcard = hsnIsWild name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 174, column 9) _idOccDef = IdOcc _refname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 174, column 9) _idOccDefsNoWildcard = if _isWildcard then [] else [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 180, column 9) _idOccDefs = _idOccDefsNoWildcard ++ _patternIidOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 227, column 9) _lhsOmbTopRefname = if _isWildcard then Just _refname else Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 349, column 9) _pp = name_ >|< "@" >|< _patternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 823, column 9) _lhsOeh = rngLift range_ EH.PatExpr_VarAs (_lhsIpatchEhNmInInstance _refname) _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam -- copy rule (up) _lhsOgUniq = _patternIgUniq -- copy rule (up) _lhsOisVar = _patternIisVar -- copy rule (up) _lhsOtopInstanceNmL = _patternItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Wildcard :: Range -> T_Pattern sem_Pattern_Wildcard range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 351, column 9) _pp = pp hsnWild -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 827, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Var hsnWild -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Tuple :: Range -> Int -> T_Patterns -> T_Pattern sem_Pattern_Tuple range_ arity_ patterns_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsIeh :: ([EH.PatExpr]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidDefOccGam :: IdDefOccGam _patternsIidOccDefs :: ([IdOcc]) _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 10, column 9) _errArity = if arity_ == length _patternsIeh then [] else [rngLift range_ Err_PatArity2 "pat " _pp arity_] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 56, column 9) _errSq = Seq.unions [Seq.fromList _errArity, _patternsIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 347, column 9) _pp = ppParensCommas' $ _patternsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 819, column 9) _lhsOeh = foldl (\eh (n,p) -> ehRowRecPatExprUpd range_ (Just n) (rngLift range_ EH.RecPatExpr_Ext) p eh) (rngLift range_ EH.PatExpr_Rec $ rngLift range_ EH.RecPatExpr_Empty) $ zip positionalFldNames _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternsIundefOccGam -- copy rule (up) _lhsOgUniq = _patternsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _patternsItopInstanceNmL -- copy rule (down) _patternsOfixityGam = _lhsIfixityGam -- copy rule (down) _patternsOgUniq = _lhsIgUniq -- copy rule (down) _patternsOidGam = _lhsIidGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternsOnmLev = _lhsInmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternsOtopInstanceNmL = _lhsItopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Annotate :: Range -> T_PatternAnnotation -> T_Pattern -> T_Pattern sem_Pattern_Annotate range_ annotation_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PatExpr) _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _annotationOfixityGam :: FixityGam _annotationOgUniq :: UID _annotationOidGam :: IdDefOccGam _annotationOmoduleNm :: HsName _annotationOnmLev :: NmLev _annotationOopts :: EHCOpts _annotationOpatchEhNmInInstance :: PatchEhNmInInstance _annotationOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _annotationIeh :: (EH.PatExprAnn) _annotationIerrSq :: ErrSq _annotationIgUniq :: UID _annotationIidDefOccGam :: IdDefOccGam _annotationIidOccDefs :: ([IdOcc]) _annotationIidUseOccGam :: IdUseOccGam _annotationIpp :: PP_Doc _annotationIppWrap :: (PP_Doc -> PP_Doc) _annotationItopInstanceNmL :: ([HsName]) _annotationIundefOccGam :: IdUseOccGam _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 829, column 17) _eh = rngLift range_ EH.PatExpr_Ann _annotationIeh _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _annotationIerrSq `Seq.union` _patternIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _annotationIidDefOccGam `gamAddGam` _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _annotationIidOccDefs ++ _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _annotationIidUseOccGam `gamAddGam` _patternIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _annotationIpp >-< _patternIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _annotationIppWrap . _patternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _annotationIundefOccGam `gamUnion` _patternIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (up) _lhsOgUniq = _patternIgUniq -- copy rule (up) _lhsOisVar = _patternIisVar -- copy rule (up) _lhsOtopInstanceNmL = _patternItopInstanceNmL -- copy rule (down) _annotationOfixityGam = _lhsIfixityGam -- copy rule (down) _annotationOgUniq = _lhsIgUniq -- copy rule (down) _annotationOidGam = _lhsIidGam -- copy rule (down) _annotationOmoduleNm = _lhsImoduleNm -- copy rule (down) _annotationOnmLev = _lhsInmLev -- copy rule (down) _annotationOopts = _lhsIopts -- copy rule (down) _annotationOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _annotationOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (chain) _patternOgUniq = _annotationIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _patternOtopInstanceNmL = _annotationItopInstanceNmL ( _annotationIeh,_annotationIerrSq,_annotationIgUniq,_annotationIidDefOccGam,_annotationIidOccDefs,_annotationIidUseOccGam,_annotationIpp,_annotationIppWrap,_annotationItopInstanceNmL,_annotationIundefOccGam) = annotation_ _annotationOfixityGam _annotationOgUniq _annotationOidGam _annotationOmoduleNm _annotationOnmLev _annotationOopts _annotationOpatchEhNmInInstance _annotationOtopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Typed :: Range -> T_Pattern -> T_Type -> T_Pattern sem_Pattern_Typed range_ pattern_ type_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _typeOidGam :: IdDefOccGam _lhsOmbTopRefname :: (Maybe HsName) _typeOnmLev :: NmLev _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 220, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 356, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 56, column 9) _typeOnmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 354, column 9) _pp = _patternIpp >#< "::" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 831, column 9) _lhsOeh = rngLift range_ EH.PatExpr_TypeAs _typeIeh _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 214, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq `Seq.union` _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam `gamAddGam` _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap . _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam `gamUnion` _typeIundefOccGam -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOisVar = _patternIisVar -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (chain) _typeOgUniq = _patternIgUniq -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _typeOtopInstanceNmL = _patternItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_InfixConstructor :: Range -> T_Pattern -> Name -> T_Pattern -> T_Pattern sem_Pattern_InfixConstructor range_ leftPattern_ constructorOperator_ rightPattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftPatternOfixityGam :: FixityGam _leftPatternOgUniq :: UID _leftPatternOidGam :: IdDefOccGam _leftPatternOmoduleNm :: HsName _leftPatternOnmLev :: NmLev _leftPatternOopts :: EHCOpts _leftPatternOpatchEhNmInInstance :: PatchEhNmInInstance _leftPatternOtopInstanceNmL :: ([HsName]) _rightPatternOfixityGam :: FixityGam _rightPatternOgUniq :: UID _rightPatternOidGam :: IdDefOccGam _rightPatternOmoduleNm :: HsName _rightPatternOnmLev :: NmLev _rightPatternOopts :: EHCOpts _rightPatternOpatchEhNmInInstance :: PatchEhNmInInstance _rightPatternOtopInstanceNmL :: ([HsName]) _leftPatternIeh :: (EH.PatExpr) _leftPatternIerrSq :: ErrSq _leftPatternIgUniq :: UID _leftPatternIidDefOccGam :: IdDefOccGam _leftPatternIidOccDefs :: ([IdOcc]) _leftPatternIidUseOccGam :: IdUseOccGam _leftPatternIisVar :: Bool _leftPatternImbTopRefname :: (Maybe HsName) _leftPatternIpp :: PP_Doc _leftPatternIppWrap :: (PP_Doc -> PP_Doc) _leftPatternItopInstanceNmL :: ([HsName]) _leftPatternIundefOccGam :: IdUseOccGam _rightPatternIeh :: (EH.PatExpr) _rightPatternIerrSq :: ErrSq _rightPatternIgUniq :: UID _rightPatternIidDefOccGam :: IdDefOccGam _rightPatternIidOccDefs :: ([IdOcc]) _rightPatternIidUseOccGam :: IdUseOccGam _rightPatternIisVar :: Bool _rightPatternImbTopRefname :: (Maybe HsName) _rightPatternIpp :: PP_Doc _rightPatternIppWrap :: (PP_Doc -> PP_Doc) _rightPatternItopInstanceNmL :: ([HsName]) _rightPatternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 559, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [_conNm] IdOcc_Val IdAsp_Val_Con range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 564, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_leftPatternIidUseOccGam,_rightPatternIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 221, column 9) _conNm = constructorOperator_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 47, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _leftPatternIerrSq, _rightPatternIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 356, column 9) _pp = _leftPatternIpp >#< constructorOperator_ >#< _rightPatternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 833, column 9) _lhsOeh = ehPatConApp range_ _refname [_leftPatternIeh,_rightPatternIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _leftPatternIidDefOccGam `gamAddGam` _rightPatternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _leftPatternIidOccDefs ++ _rightPatternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftPatternIppWrap . _rightPatternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftPatternIundefOccGam `gamUnion` _rightPatternIundefOccGam -- copy rule (up) _lhsOgUniq = _rightPatternIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rightPatternItopInstanceNmL -- copy rule (down) _leftPatternOfixityGam = _lhsIfixityGam -- copy rule (down) _leftPatternOgUniq = _lhsIgUniq -- copy rule (down) _leftPatternOidGam = _lhsIidGam -- copy rule (down) _leftPatternOmoduleNm = _lhsImoduleNm -- copy rule (down) _leftPatternOnmLev = _lhsInmLev -- copy rule (down) _leftPatternOopts = _lhsIopts -- copy rule (down) _leftPatternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _leftPatternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _rightPatternOfixityGam = _lhsIfixityGam -- copy rule (chain) _rightPatternOgUniq = _leftPatternIgUniq -- copy rule (down) _rightPatternOidGam = _lhsIidGam -- copy rule (down) _rightPatternOmoduleNm = _lhsImoduleNm -- copy rule (down) _rightPatternOnmLev = _lhsInmLev -- copy rule (down) _rightPatternOopts = _lhsIopts -- copy rule (down) _rightPatternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rightPatternOtopInstanceNmL = _leftPatternItopInstanceNmL ( _leftPatternIeh,_leftPatternIerrSq,_leftPatternIgUniq,_leftPatternIidDefOccGam,_leftPatternIidOccDefs,_leftPatternIidUseOccGam,_leftPatternIisVar,_leftPatternImbTopRefname,_leftPatternIpp,_leftPatternIppWrap,_leftPatternItopInstanceNmL,_leftPatternIundefOccGam) = leftPattern_ _leftPatternOfixityGam _leftPatternOgUniq _leftPatternOidGam _leftPatternOmoduleNm _leftPatternOnmLev _leftPatternOopts _leftPatternOpatchEhNmInInstance _leftPatternOtopInstanceNmL ( _rightPatternIeh,_rightPatternIerrSq,_rightPatternIgUniq,_rightPatternIidDefOccGam,_rightPatternIidOccDefs,_rightPatternIidUseOccGam,_rightPatternIisVar,_rightPatternImbTopRefname,_rightPatternIpp,_rightPatternIppWrap,_rightPatternItopInstanceNmL,_rightPatternIundefOccGam) = rightPattern_ _rightPatternOfixityGam _rightPatternOgUniq _rightPatternOidGam _rightPatternOmoduleNm _rightPatternOnmLev _rightPatternOopts _rightPatternOpatchEhNmInInstance _rightPatternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_List :: Range -> T_Patterns -> T_Pattern sem_Pattern_List range_ patterns_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsIeh :: ([EH.PatExpr]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidDefOccGam :: IdDefOccGam _patternsIidOccDefs :: ([IdOcc]) _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 566, column 29) (_,_refnames,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [hsnDataListAltCons,hsnDataListAltNil] IdOcc_Val IdAsp_Val_Con range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 568, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_patternsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 45, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _patternsIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 358, column 9) _pp = ppBracketsCommas _patternsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 835, column 9) _lhsOeh = foldr (\l r -> ehPatConApp range_ (_refnames !! 0) [l,r]) (appCon (_refnames !! 1)) _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternsIundefOccGam -- copy rule (up) _lhsOgUniq = _patternsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _patternsItopInstanceNmL -- copy rule (down) _patternsOfixityGam = _lhsIfixityGam -- copy rule (down) _patternsOgUniq = _lhsIgUniq -- copy rule (down) _patternsOidGam = _lhsIidGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternsOnmLev = _lhsInmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternsOtopInstanceNmL = _lhsItopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Record :: Range -> Name -> T_RecordPatternBindings -> T_Pattern sem_Pattern_Record range_ name_ recordPatternBindings_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _recordPatternBindingsOfixityGam :: FixityGam _recordPatternBindingsOgUniq :: UID _recordPatternBindingsOidGam :: IdDefOccGam _recordPatternBindingsOmoduleNm :: HsName _recordPatternBindingsOnmLev :: NmLev _recordPatternBindingsOopts :: EHCOpts _recordPatternBindingsOpatchEhNmInInstance :: PatchEhNmInInstance _recordPatternBindingsOtopInstanceNmL :: ([HsName]) _recordPatternBindingsIeh :: ([EH.DataFieldPatExpr -> EH.DataFieldPatExpr]) _recordPatternBindingsIerrSq :: ErrSq _recordPatternBindingsIgUniq :: UID _recordPatternBindingsIidDefOccGam :: IdDefOccGam _recordPatternBindingsIidOccDefs :: ([IdOcc]) _recordPatternBindingsIidUseOccGam :: IdUseOccGam _recordPatternBindingsIpp :: PP_Doc _recordPatternBindingsIppL :: ([PP_Doc]) _recordPatternBindingsIppWrap :: (PP_Doc -> PP_Doc) _recordPatternBindingsItopInstanceNmL :: ([HsName]) _recordPatternBindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 559, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [_conNm] IdOcc_Val IdAsp_Val_Con range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 570, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_recordPatternBindingsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 219, column 9) _conNm = name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 54, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _recordPatternBindingsIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 360, column 9) _pp = name_ >#< ppCurlysCommas' _recordPatternBindingsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 837, column 9) _lhsOeh = rngLift range_ EH.PatExpr_DataFields $ foldl (flip ($)) (rngLift range_ EH.DataFieldPatExpr_Con _refname) _recordPatternBindingsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _recordPatternBindingsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _recordPatternBindingsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _recordPatternBindingsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _recordPatternBindingsIundefOccGam -- copy rule (up) _lhsOgUniq = _recordPatternBindingsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _recordPatternBindingsItopInstanceNmL -- copy rule (down) _recordPatternBindingsOfixityGam = _lhsIfixityGam -- copy rule (down) _recordPatternBindingsOgUniq = _lhsIgUniq -- copy rule (down) _recordPatternBindingsOidGam = _lhsIidGam -- copy rule (down) _recordPatternBindingsOmoduleNm = _lhsImoduleNm -- copy rule (down) _recordPatternBindingsOnmLev = _lhsInmLev -- copy rule (down) _recordPatternBindingsOopts = _lhsIopts -- copy rule (down) _recordPatternBindingsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _recordPatternBindingsOtopInstanceNmL = _lhsItopInstanceNmL ( _recordPatternBindingsIeh,_recordPatternBindingsIerrSq,_recordPatternBindingsIgUniq,_recordPatternBindingsIidDefOccGam,_recordPatternBindingsIidOccDefs,_recordPatternBindingsIidUseOccGam,_recordPatternBindingsIpp,_recordPatternBindingsIppL,_recordPatternBindingsIppWrap,_recordPatternBindingsItopInstanceNmL,_recordPatternBindingsIundefOccGam) = recordPatternBindings_ _recordPatternBindingsOfixityGam _recordPatternBindingsOgUniq _recordPatternBindingsOidGam _recordPatternBindingsOmoduleNm _recordPatternBindingsOnmLev _recordPatternBindingsOopts _recordPatternBindingsOpatchEhNmInInstance _recordPatternBindingsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_RowRecordBinding :: Range -> T_Pattern -> T_RowRecordPatternBindings -> T_Pattern sem_Pattern_RowRecordBinding range_ pattern_ rowRecordPattternBindings_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _rowRecordPattternBindingsOfixityGam :: FixityGam _rowRecordPattternBindingsOgUniq :: UID _rowRecordPattternBindingsOidGam :: IdDefOccGam _rowRecordPattternBindingsOmoduleNm :: HsName _rowRecordPattternBindingsOnmLev :: NmLev _rowRecordPattternBindingsOopts :: EHCOpts _rowRecordPattternBindingsOpatchEhNmInInstance :: PatchEhNmInInstance _rowRecordPattternBindingsOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam _rowRecordPattternBindingsIeh :: ([EH.PatExpr -> EH.PatExpr]) _rowRecordPattternBindingsIerrSq :: ErrSq _rowRecordPattternBindingsIgUniq :: UID _rowRecordPattternBindingsIidDefOccGam :: IdDefOccGam _rowRecordPattternBindingsIidOccDefs :: ([IdOcc]) _rowRecordPattternBindingsIidUseOccGam :: IdUseOccGam _rowRecordPattternBindingsIpp :: PP_Doc _rowRecordPattternBindingsIppL :: ([PP_Doc]) _rowRecordPattternBindingsIppWrap :: (PP_Doc -> PP_Doc) _rowRecordPattternBindingsItopInstanceNmL :: ([HsName]) _rowRecordPattternBindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 362, column 9) _pp = ppAppTop (hsnRec,mkPPAppFun hsnRowEmpty _patternIpp) _rowRecordPattternBindingsIppL _patternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 839, column 9) _lhsOeh = foldl (flip ($)) _patternIeh _rowRecordPattternBindingsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq `Seq.union` _rowRecordPattternBindingsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternIidDefOccGam `gamAddGam` _rowRecordPattternBindingsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternIidOccDefs ++ _rowRecordPattternBindingsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam `gamAddGam` _rowRecordPattternBindingsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap . _rowRecordPattternBindingsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam `gamUnion` _rowRecordPattternBindingsIundefOccGam -- copy rule (up) _lhsOgUniq = _rowRecordPattternBindingsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rowRecordPattternBindingsItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _rowRecordPattternBindingsOfixityGam = _lhsIfixityGam -- copy rule (chain) _rowRecordPattternBindingsOgUniq = _patternIgUniq -- copy rule (down) _rowRecordPattternBindingsOidGam = _lhsIidGam -- copy rule (down) _rowRecordPattternBindingsOmoduleNm = _lhsImoduleNm -- copy rule (down) _rowRecordPattternBindingsOnmLev = _lhsInmLev -- copy rule (down) _rowRecordPattternBindingsOopts = _lhsIopts -- copy rule (down) _rowRecordPattternBindingsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rowRecordPattternBindingsOtopInstanceNmL = _patternItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL ( _rowRecordPattternBindingsIeh,_rowRecordPattternBindingsIerrSq,_rowRecordPattternBindingsIgUniq,_rowRecordPattternBindingsIidDefOccGam,_rowRecordPattternBindingsIidOccDefs,_rowRecordPattternBindingsIidUseOccGam,_rowRecordPattternBindingsIpp,_rowRecordPattternBindingsIppL,_rowRecordPattternBindingsIppWrap,_rowRecordPattternBindingsItopInstanceNmL,_rowRecordPattternBindingsIundefOccGam) = rowRecordPattternBindings_ _rowRecordPattternBindingsOfixityGam _rowRecordPattternBindingsOgUniq _rowRecordPattternBindingsOidGam _rowRecordPattternBindingsOmoduleNm _rowRecordPattternBindingsOnmLev _rowRecordPattternBindingsOopts _rowRecordPattternBindingsOpatchEhNmInInstance _rowRecordPattternBindingsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_RowRecordEmpty :: Range -> T_Pattern sem_Pattern_RowRecordEmpty range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOisVar :: Bool _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 365, column 9) _pp = hsnORec >|< hsnCRec -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 841, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Rec (rngLift range_ EH.RecPatExpr_Empty) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _lhsOisVar = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Irrefutable :: Range -> T_Pattern -> T_Pattern sem_Pattern_Irrefutable range_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 367, column 9) _pp = "~" >|< _patternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 843, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Irrefutable _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam -- copy rule (up) _lhsOgUniq = _patternIgUniq -- copy rule (up) _lhsOisVar = _patternIisVar -- copy rule (up) _lhsOtopInstanceNmL = _patternItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pattern_Bang :: Range -> T_Pattern -> T_Pattern sem_Pattern_Bang range_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 229, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 369, column 9) _pp = "!" >|< _patternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 845, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Bang _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 188, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam -- copy rule (up) _lhsOgUniq = _patternIgUniq -- copy rule (up) _lhsOisVar = _patternIisVar -- copy rule (up) _lhsOtopInstanceNmL = _patternItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- PatternAnnotation ------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.PatExprAnn errSq : ErrSq idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Empty: visit 0: local eh : _ -} -- cata sem_PatternAnnotation :: PatternAnnotation -> T_PatternAnnotation sem_PatternAnnotation (PatternAnnotation_Empty) = (sem_PatternAnnotation_Empty) -- semantic domain type T_PatternAnnotation = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.PatExprAnn),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_PatternAnnotation_Empty :: T_PatternAnnotation sem_PatternAnnotation_Empty = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PatExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 902, column 17) _eh = EH.PatExprAnn_Empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Patterns ---------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.PatExpr] errSq : ErrSq idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Pattern child tl : Patterns alternative Nil: -} -- cata sem_Patterns :: Patterns -> T_Patterns sem_Patterns list = (Prelude.foldr sem_Patterns_Cons sem_Patterns_Nil (Prelude.map sem_Pattern list)) -- semantic domain type T_Patterns = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.PatExpr]),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Patterns_Cons :: T_Pattern -> T_Patterns -> T_Patterns sem_Patterns_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.PatExpr]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.PatExpr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidDefOccGam :: IdDefOccGam _hdIidOccDefs :: ([IdOcc]) _hdIidUseOccGam :: IdUseOccGam _hdIisVar :: Bool _hdImbTopRefname :: (Maybe HsName) _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.PatExpr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidDefOccGam :: IdDefOccGam _tlIidOccDefs :: ([IdOcc]) _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 426, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 795, column 24) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIisVar,_hdImbTopRefname,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Patterns_Nil :: T_Patterns sem_Patterns_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.PatExpr]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 428, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 795, column 24) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Pragma ------------------------------------------------------ {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathPragmas : Set.Set Pragma.Pragma idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Language: child range : {Range} child pragmas : {Names} visit 0: local pragmaNames : _ local pp : _ alternative OptionsUHC: child range : {Range} child options : {String} visit 0: local pragmaNames : _ alternative Derivable: child range : {Range} child className : {Name} child fieldName : {Name} child defaultName : {Name} visit 0: local pp : _ alternative ExcludeIfTarget: child range : {Range} child targetNames : {[String]} visit 0: local targets : _ local pp : _ -} -- cata sem_Pragma :: Pragma -> T_Pragma sem_Pragma (Pragma_Language _range _pragmas) = (sem_Pragma_Language _range _pragmas) sem_Pragma (Pragma_OptionsUHC _range _options) = (sem_Pragma_OptionsUHC _range _options) sem_Pragma (Pragma_Derivable _range _className _fieldName _defaultName) = (sem_Pragma_Derivable _range _className _fieldName _defaultName) sem_Pragma (Pragma_ExcludeIfTarget _range _targetNames) = (sem_Pragma_ExcludeIfTarget _range _targetNames) -- semantic domain type T_Pragma = UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,(Set.Set Pragma.Pragma),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Pragma_Language :: Range -> Names -> T_Pragma sem_Pragma_Language range_ pragmas_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 6, column 9) _pragmaNames = [ p | p <- map show pragmas_ ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 12, column 9) _lhsOgathPragmas = Set.fromList $ catMaybes [ Map.lookup p Pragma.allSimplePragmaMp | p <- _pragmaNames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 91, column 17) _pp = "LANGUAGE" >#< ppCommas pragmas_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pragma_OptionsUHC :: Range -> String -> T_Pragma sem_Pragma_OptionsUHC range_ options_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 8, column 9) _pragmaNames = [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 16, column 9) _lhsOgathPragmas = Set.singleton (Pragma.Pragma_OptionsUHC options_) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pragma_Derivable :: Range -> Name -> Name -> Name -> T_Pragma sem_Pragma_Derivable range_ className_ fieldName_ defaultName_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 14, column 9) _lhsOgathPragmas = Set.singleton (Pragma.Pragma_Derivable className_ fieldName_ defaultName_) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 93, column 17) _pp = "DERIVABLE" >#< className_ >#< fieldName_ >#< defaultName_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pragma_ExcludeIfTarget :: Range -> ([String]) -> T_Pragma sem_Pragma_ExcludeIfTarget range_ targetNames_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 18, column 9) _targets = catMaybes $ map (\t -> Map.lookup t supportedTargetMp) targetNames_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 19, column 9) _lhsOgathPragmas = Set.singleton (Pragma.Pragma_ExcludeIfTarget _targets) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 95, column 17) _pp = "EXCLUDE_IF_TARGET" >#< ppCommas targetNames_ -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Pragmas ----------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathPragmas : Set.Set Pragma.Pragma idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Pragma child tl : Pragmas alternative Nil: -} -- cata sem_Pragmas :: Pragmas -> T_Pragmas sem_Pragmas list = (Prelude.foldr sem_Pragmas_Cons sem_Pragmas_Nil (Prelude.map sem_Pragma list)) -- semantic domain type T_Pragmas = UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ErrSq,UID,(Set.Set Pragma.Pragma),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Pragmas_Cons :: T_Pragma -> T_Pragmas -> T_Pragmas sem_Pragmas_Cons hd_ tl_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathPragmas :: (Set.Set Pragma.Pragma) _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathPragmas :: (Set.Set Pragma.Pragma) _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = _hdIgathPragmas `Set.union` _tlIgathPragmas -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIerrSq,_hdIgUniq,_hdIgathPragmas,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOgUniq _hdOidGam _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIerrSq,_tlIgUniq,_tlIgathPragmas,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOgUniq _tlOidGam _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Pragmas_Nil :: T_Pragmas sem_Pragmas_Nil = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 1, column 49) _lhsOgathPragmas = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Qualifier --------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] moduleNm : HsName opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID idGam : IdDefOccGam nmLev : NmLev topInstanceNmL : [HsName] synthesized attributes: eh : EH.Expr -> EH.Expr errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Guard: child range : {Range} child guard : Expression visit 0: local valrefnames : _ local idUseOccGamVal : _ local errIdUseVal : _ local typerefname : _ local idUseOccGamType : _ local errIdUseType : _ local idUseOccGam : _ local errSq : _ alternative Let: child range : {Range} child declarations : Declarations visit 0: local idGam : _ local sccOrder : _ local mkSccLet : _ local errReorder : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ alternative Generator: child range : {Range} child pattern : Pattern child expression : Expression visit 0: local refnames : _ local idUseOccGam : _ local errIdUse : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ alternative Empty: child range : {Range} visit 0: local refnames : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ -} -- cata sem_Qualifier :: Qualifier -> T_Qualifier sem_Qualifier (Qualifier_Guard _range _guard) = (sem_Qualifier_Guard _range (sem_Expression _guard)) sem_Qualifier (Qualifier_Let _range _declarations) = (sem_Qualifier_Let _range (sem_Declarations _declarations)) sem_Qualifier (Qualifier_Generator _range _pattern _expression) = (sem_Qualifier_Generator _range (sem_Pattern _pattern) (sem_Expression _expression)) sem_Qualifier (Qualifier_Empty _range) = (sem_Qualifier_Empty _range) -- semantic domain type T_Qualifier = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (EH.Expr -> EH.Expr),ErrSq,UID,FixityGam,IdDefOccGam,IdUseOccGam,NmLev,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Qualifier_Guard :: Range -> T_Expression -> T_Qualifier sem_Qualifier_Guard range_ guard_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) _guardOcaseId :: UID _guardOfixityGam :: FixityGam _guardOgUniq :: UID _guardOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _guardOidGam :: IdDefOccGam _guardOmoduleNm :: HsName _guardOnmLev :: NmLev _guardOopts :: EHCOpts _guardOpatchEhNmInInstance :: PatchEhNmInInstance _guardOpragmas :: (Set.Set Pragma.Pragma) _guardOtopInstanceNmL :: ([HsName]) _guardIconNm :: Name _guardIeh :: (EH.Expr) _guardIerrSq :: ErrSq _guardIgUniq :: UID _guardIidUseOccGam :: IdUseOccGam _guardIopChain :: (OpChain EH.Expr) _guardIoperatorName :: MaybeName _guardIpp :: PP_Doc _guardIppWrap :: (PP_Doc -> PP_Doc) _guardItopInstanceNmL :: ([HsName]) _guardIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 532, column 29) (_,_valrefnames,_idUseOccGamVal,_errIdUseVal) = mkUseOccGam _lhsIopts _lhsIidGam [hsnTrue,hsnFalse,hsnDataListAltNil] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 534, column 29) (_typerefname,_,_idUseOccGamType,_errIdUseType) = mkUseOccGam _lhsIopts _lhsIidGam [hsnBool] IdOcc_Type IdAsp_Type_Con range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 532, column 9) _idUseOccGam = gamUnions [_idUseOccGamVal,_idUseOccGamType] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 537, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_guardIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 99, column 9) _errSq = Seq.unions [Seq.fromList _errIdUseVal, Seq.fromList _errIdUseType, _guardIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 608, column 9) _lhsOeh = \e -> EH.mkIf' (_typerefname : _valrefnames) range_ _guardIeh e (appCon (_valrefnames !! 2)) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _guardIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _guardIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _guardIundefOccGam -- copy rule (up) _lhsOgUniq = _guardIgUniq -- copy rule (chain) _lhsOidGam = _lhsIidGam -- copy rule (chain) _lhsOnmLev = _lhsInmLev -- copy rule (up) _lhsOtopInstanceNmL = _guardItopInstanceNmL -- copy rule (down) _guardOcaseId = _lhsIcaseId -- copy rule (down) _guardOfixityGam = _lhsIfixityGam -- copy rule (down) _guardOgUniq = _lhsIgUniq -- copy rule (down) _guardOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _guardOidGam = _lhsIidGam -- copy rule (down) _guardOmoduleNm = _lhsImoduleNm -- copy rule (down) _guardOnmLev = _lhsInmLev -- copy rule (down) _guardOopts = _lhsIopts -- copy rule (down) _guardOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _guardOpragmas = _lhsIpragmas -- copy rule (down) _guardOtopInstanceNmL = _lhsItopInstanceNmL ( _guardIconNm,_guardIeh,_guardIerrSq,_guardIgUniq,_guardIidUseOccGam,_guardIopChain,_guardIoperatorName,_guardIpp,_guardIppWrap,_guardItopInstanceNmL,_guardIundefOccGam) = guard_ _guardOcaseId _guardOfixityGam _guardOgUniq _guardOgenerDerivMp _guardOidGam _guardOmoduleNm _guardOnmLev _guardOopts _guardOpatchEhNmInInstance _guardOpragmas _guardOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Qualifier_Let :: Range -> T_Declarations -> T_Qualifier sem_Qualifier_Let range_ declarations_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) _declarationsOcaseId :: UID _declarationsOfixityGam :: FixityGam _declarationsOgUniq :: UID _declarationsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _declarationsOidGam :: IdDefOccGam _declarationsOmoduleNm :: HsName _declarationsOnmLev :: NmLev _declarationsOopts :: EHCOpts _declarationsOpatchEhNmInInstance :: PatchEhNmInInstance _declarationsOpragmas :: (Set.Set Pragma.Pragma) _declarationsOtopInstanceNmL :: ([HsName]) _declarationsIeh :: ([EH.Decl]) _declarationsIerrSq :: ErrSq _declarationsIgUniq :: UID _declarationsIgathFixityGam :: FixityGam _declarationsIgathPragmas :: (Set.Set Pragma.Pragma) _declarationsIidDefOccGam :: IdDefOccGam _declarationsIidDpdMp :: IdDpdMp _declarationsIidOccDefs :: ([IdOcc]) _declarationsIidTySigDefOccGam :: IdDefOccGam _declarationsIidUseOccGam :: IdUseOccGam _declarationsIneedsError :: Bool _declarationsIpp :: PP_Doc _declarationsIppWrap :: (PP_Doc -> PP_Doc) _declarationsItopInstanceNmL :: ([HsName]) _declarationsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 396, column 9) _idGam = gamUnion _declarationsIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 899, column 9) _sccOrder = idDpdMp2SccOrder _declarationsIidDefOccGam _declarationsIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1031, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH range_ False _declarationsIidDefOccGam (Just _sccOrder) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 77, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 127, column 9) _errDupIntro = idDefOccGamCheckDupNames _declarationsIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 97, column 9) _errSq = Seq.firstNotEmpty [Seq.fromList _errDupIntro, _declarationsIerrSq, Seq.fromList _errReorder] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 269, column 9) _pp = "let" >#< _declarationsIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 610, column 9) _lhsOeh = _mkSccLet -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _declarationsIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _declarationsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _declarationsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _declarationsIundefOccGam -- copy rule (up) _lhsOgUniq = _declarationsIgUniq -- copy rule (from local) _lhsOidGam = _idGam -- copy rule (from local) _lhsOnmLev = _nmLev -- copy rule (up) _lhsOtopInstanceNmL = _declarationsItopInstanceNmL -- copy rule (down) _declarationsOcaseId = _lhsIcaseId -- copy rule (down) _declarationsOfixityGam = _lhsIfixityGam -- copy rule (down) _declarationsOgUniq = _lhsIgUniq -- copy rule (down) _declarationsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _declarationsOidGam = _idGam -- copy rule (down) _declarationsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _declarationsOnmLev = _nmLev -- copy rule (down) _declarationsOopts = _lhsIopts -- copy rule (down) _declarationsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _declarationsOpragmas = _lhsIpragmas -- copy rule (down) _declarationsOtopInstanceNmL = _lhsItopInstanceNmL ( _declarationsIeh,_declarationsIerrSq,_declarationsIgUniq,_declarationsIgathFixityGam,_declarationsIgathPragmas,_declarationsIidDefOccGam,_declarationsIidDpdMp,_declarationsIidOccDefs,_declarationsIidTySigDefOccGam,_declarationsIidUseOccGam,_declarationsIneedsError,_declarationsIpp,_declarationsIppWrap,_declarationsItopInstanceNmL,_declarationsIundefOccGam) = declarations_ _declarationsOcaseId _declarationsOfixityGam _declarationsOgUniq _declarationsOgenerDerivMp _declarationsOidGam _declarationsOmoduleNm _declarationsOnmLev _declarationsOopts _declarationsOpatchEhNmInInstance _declarationsOpragmas _declarationsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Qualifier_Generator :: Range -> T_Pattern -> T_Expression -> T_Qualifier sem_Qualifier_Generator range_ pattern_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 398, column 9) _lhsOidGam = gamUnion _patternIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 539, column 29) (_,_refnames,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [hsnPrelConcatMap,hsnDataListAltNil] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 541, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_patternIidUseOccGam,_expressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 77, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 125, column 9) _errDupIntro = idDefOccGamCheckDupNames _patternIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 101, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, Seq.fromList _errIdUse, _patternIerrSq, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 271, column 9) _pp = _patternIpp >#< "<-" >#< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 612, column 9) _lhsOeh = ehGenerator range_ _patternIeh (\e -> ehExpVarApp range_ (_refnames !! 0) [e,_expressionIeh]) (appCon (_refnames !! 1)) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap . _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam `gamUnion` _expressionIundefOccGam -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (from local) _lhsOnmLev = _nmLev -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (from local) _patternOnmLev = _nmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _expressionOgUniq = _patternIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (from local) _expressionOnmLev = _nmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (chain) _expressionOtopInstanceNmL = _patternItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Qualifier_Empty :: Range -> T_Qualifier sem_Qualifier_Empty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 543, column 29) (_,_refnames,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [hsnDataListAltCons,hsnDataListAltNil] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 103, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 617, column 9) _lhsOeh = \e -> ehExpConApp range_ (_refnames !! 0) [e,appCon (_refnames !! 1)] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOidGam = _lhsIidGam -- copy rule (chain) _lhsOnmLev = _lhsInmLev -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Qualifiers -------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID idGam : IdDefOccGam topInstanceNmL : [HsName] synthesized attributes: eh : [EH.Expr -> EH.Expr] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Qualifier child tl : Qualifiers visit 0: local fixityGam : _ alternative Nil: -} -- cata sem_Qualifiers :: Qualifiers -> T_Qualifiers sem_Qualifiers list = (Prelude.foldr sem_Qualifiers_Cons sem_Qualifiers_Nil (Prelude.map sem_Qualifier list)) -- semantic domain type T_Qualifiers = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.Expr -> EH.Expr]),ErrSq,UID,IdDefOccGam,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Qualifiers_Cons :: T_Qualifier -> T_Qualifiers -> T_Qualifiers sem_Qualifiers_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.Expr -> EH.Expr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIidGam :: IdDefOccGam _hdIidUseOccGam :: IdUseOccGam _hdInmLev :: NmLev _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.Expr -> EH.Expr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidGam :: IdDefOccGam _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 434, column 9) _lhsOppL = _hdIpp : _tlIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 35, column 9) _fixityGam = _hdIgathFixityGam `gamUnion` _lhsIfixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 602, column 26) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOidGam = _tlIidGam -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (from local) _hdOfixityGam = _fixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (from local) _tlOfixityGam = _fixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (chain) _tlOidGam = _hdIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (chain) _tlOnmLev = _hdInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidGam,_hdIidUseOccGam,_hdInmLev,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidGam,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Qualifiers_Nil :: T_Qualifiers sem_Qualifiers_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 436, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 602, column 26) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOidGam = _lhsIidGam -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RecordExpressionBinding ------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.DataFieldExpr -> EH.DataFieldExpr errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Binding: child range : {Range} child name : {Name} child expression : Expression visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ -} -- cata sem_RecordExpressionBinding :: RecordExpressionBinding -> T_RecordExpressionBinding sem_RecordExpressionBinding (RecordExpressionBinding_Binding _range _name _expression) = (sem_RecordExpressionBinding_Binding _range _name (sem_Expression _expression)) -- semantic domain type T_RecordExpressionBinding = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (EH.DataFieldExpr -> EH.DataFieldExpr),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RecordExpressionBinding_Binding :: Range -> Name -> T_Expression -> T_RecordExpressionBinding sem_RecordExpressionBinding_Binding range_ name_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (EH.DataFieldExpr -> EH.DataFieldExpr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 604, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Fld (IdAsp_Val_Fld hsnUnknown hsnUnknown) range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 606, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_expressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 107, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 285, column 9) _pp = name_ >|< "=" >|< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 642, column 9) _lhsOeh = \df -> rngLift range_ EH.DataFieldExpr_Upd df _refname _expressionIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RecordExpressionBindings ------------------------------------ {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.DataFieldExpr -> EH.DataFieldExpr] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : RecordExpressionBinding child tl : RecordExpressionBindings alternative Nil: -} -- cata sem_RecordExpressionBindings :: RecordExpressionBindings -> T_RecordExpressionBindings sem_RecordExpressionBindings list = (Prelude.foldr sem_RecordExpressionBindings_Cons sem_RecordExpressionBindings_Nil (Prelude.map sem_RecordExpressionBinding list)) -- semantic domain type T_RecordExpressionBindings = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.DataFieldExpr -> EH.DataFieldExpr]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RecordExpressionBindings_Cons :: T_RecordExpressionBinding -> T_RecordExpressionBindings -> T_RecordExpressionBindings sem_RecordExpressionBindings_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataFieldExpr -> EH.DataFieldExpr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.DataFieldExpr -> EH.DataFieldExpr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.DataFieldExpr -> EH.DataFieldExpr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 466, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 636, column 40) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_RecordExpressionBindings_Nil :: T_RecordExpressionBindings sem_RecordExpressionBindings_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataFieldExpr -> EH.DataFieldExpr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 468, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 636, column 40) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RecordPatternBinding ---------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.DataFieldPatExpr -> EH.DataFieldPatExpr errSq : ErrSq idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Binding: child range : {Range} child name : {Name} child pattern : Pattern visit 0: local fldrefname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ alternative Pun: child range : {Range} child name : {Name} visit 0: local idDefOccGam : _ local fldrefname : _ local idUseOccGam : _ local errIdUse : _ local refname : _ local idOccDef : _ local errSq : _ local pp : _ -} -- cata sem_RecordPatternBinding :: RecordPatternBinding -> T_RecordPatternBinding sem_RecordPatternBinding (RecordPatternBinding_Binding _range _name _pattern) = (sem_RecordPatternBinding_Binding _range _name (sem_Pattern _pattern)) sem_RecordPatternBinding (RecordPatternBinding_Pun _range _name) = (sem_RecordPatternBinding_Pun _range _name) -- semantic domain type T_RecordPatternBinding = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.DataFieldPatExpr -> EH.DataFieldPatExpr),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RecordPatternBinding_Binding :: Range -> Name -> T_Pattern -> T_RecordPatternBinding sem_RecordPatternBinding_Binding range_ name_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (EH.DataFieldPatExpr -> EH.DataFieldPatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 610, column 29) (_fldrefname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Fld (IdAsp_Val_Fld hsnUnknown hsnUnknown) range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 613, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_patternIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 111, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _patternIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 305, column 9) _pp = name_ >|< "=" >|< _patternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 708, column 9) _lhsOeh = \df -> rngLift range_ EH.DataFieldPatExpr_Ext df _fldrefname _patternIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam -- copy rule (up) _lhsOgUniq = _patternIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _patternItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_RecordPatternBinding_Pun :: Range -> Name -> T_RecordPatternBinding sem_RecordPatternBinding_Pun range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.DataFieldPatExpr -> EH.DataFieldPatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 230, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 610, column 29) (_fldrefname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Fld (IdAsp_Val_Fld hsnUnknown hsnUnknown) range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 92, column 9) _refname = hsnSetLevQual _lhsInmLev _lhsImoduleNm name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 184, column 9) _idOccDef = IdOcc _refname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 113, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 307, column 9) _pp = pp name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 710, column 9) _lhsOeh = \df -> rngLift range_ EH.DataFieldPatExpr_Ext df _fldrefname (rngLift range_ EH.PatExpr_Var _refname) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RecordPatternBindings --------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.DataFieldPatExpr -> EH.DataFieldPatExpr] errSq : ErrSq idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : RecordPatternBinding child tl : RecordPatternBindings alternative Nil: -} -- cata sem_RecordPatternBindings :: RecordPatternBindings -> T_RecordPatternBindings sem_RecordPatternBindings list = (Prelude.foldr sem_RecordPatternBindings_Cons sem_RecordPatternBindings_Nil (Prelude.map sem_RecordPatternBinding list)) -- semantic domain type T_RecordPatternBindings = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.DataFieldPatExpr -> EH.DataFieldPatExpr]),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RecordPatternBindings_Cons :: T_RecordPatternBinding -> T_RecordPatternBindings -> T_RecordPatternBindings sem_RecordPatternBindings_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataFieldPatExpr -> EH.DataFieldPatExpr]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.DataFieldPatExpr -> EH.DataFieldPatExpr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidDefOccGam :: IdDefOccGam _hdIidOccDefs :: ([IdOcc]) _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.DataFieldPatExpr -> EH.DataFieldPatExpr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidDefOccGam :: IdDefOccGam _tlIidOccDefs :: ([IdOcc]) _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 472, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 702, column 37) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_RecordPatternBindings_Nil :: T_RecordPatternBindings sem_RecordPatternBindings_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataFieldPatExpr -> EH.DataFieldPatExpr]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 474, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 702, column 37) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RightHandSide ----------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName mustBeMono : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma sepPP : PP_Doc chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.Expr errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Expression: child range : {Range} child expression : Expression child where : MaybeDeclarations visit 0: local idGam : _ local sccOrder : _ local mkSccLet : _ local errReorder : _ local nmLev : _ local errSq : _ local pp : _ local fixityGam : _ alternative Guarded: child range : {Range} child guardedexpressions : GuardedExpressions child where : MaybeDeclarations visit 0: local idGam : _ local sccOrder : _ local mkSccLet : _ local errReorder : _ local nmLev : _ local pp : _ local fixityGam : _ -} -- cata sem_RightHandSide :: RightHandSide -> T_RightHandSide sem_RightHandSide (RightHandSide_Expression _range _expression _where) = (sem_RightHandSide_Expression _range (sem_Expression _expression) (sem_MaybeDeclarations _where)) sem_RightHandSide (RightHandSide_Guarded _range _guardedexpressions _where) = (sem_RightHandSide_Guarded _range (sem_GuardedExpressions _guardedexpressions) (sem_MaybeDeclarations _where)) -- semantic domain type T_RightHandSide = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> Bool -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> PP_Doc -> ([HsName]) -> ( (EH.Expr),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RightHandSide_Expression :: Range -> T_Expression -> T_MaybeDeclarations -> T_RightHandSide sem_RightHandSide_Expression range_ expression_ where_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsImustBeMono _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsIsepPP _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _whereOcaseId :: UID _whereOfixityGam :: FixityGam _whereOgUniq :: UID _whereOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _whereOidGam :: IdDefOccGam _whereOmoduleNm :: HsName _whereOnmLev :: NmLev _whereOopts :: EHCOpts _whereOpatchEhNmInInstance :: PatchEhNmInInstance _whereOpragmas :: (Set.Set Pragma.Pragma) _whereOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam _whereIeh :: (Maybe [EH.Decl]) _whereIerrSq :: ErrSq _whereIgUniq :: UID _whereIgathFixityGam :: FixityGam _whereIgathPragmas :: (Set.Set Pragma.Pragma) _whereIidDefOccGam :: IdDefOccGam _whereIidDpdMp :: IdDpdMp _whereIidOccDefs :: ([IdOcc]) _whereIidTySigDefOccGam :: IdDefOccGam _whereIidUseOccGam :: IdUseOccGam _whereIneedsError :: Bool _whereIpp :: PP_Doc _whereIppWrap :: (PP_Doc -> PP_Doc) _whereItopInstanceNmL :: ([HsName]) _whereIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 388, column 9) _idGam = gamUnion _whereIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 895, column 9) _sccOrder = idDpdMp2SccOrder _whereIidDefOccGam _whereIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1026, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH range_ False _whereIidDefOccGam (Just _sccOrder) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 69, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 36, column 9) _errSq = Seq.unions [Seq.fromList _errReorder, _expressionIerrSq, _whereIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 327, column 9) _pp = _lhsIsepPP >#< _expressionIpp >-< _whereIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 31, column 9) _fixityGam = _whereIgathFixityGam `gamUnion` _lhsIfixityGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 761, column 9) _lhsOeh = _mkSccLet $ ehMkEnforceMono range_ _lhsImustBeMono _expressionIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam `gamAddGam` _whereIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap . _whereIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam `gamUnion` _whereIundefOccGam -- copy rule (up) _lhsOgUniq = _whereIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _whereItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (from local) _expressionOfixityGam = _fixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _expressionOidGam = _idGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (from local) _expressionOnmLev = _nmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _whereOcaseId = _lhsIcaseId -- copy rule (from local) _whereOfixityGam = _fixityGam -- copy rule (chain) _whereOgUniq = _expressionIgUniq -- copy rule (down) _whereOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _whereOidGam = _idGam -- copy rule (down) _whereOmoduleNm = _lhsImoduleNm -- copy rule (from local) _whereOnmLev = _nmLev -- copy rule (down) _whereOopts = _lhsIopts -- copy rule (down) _whereOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _whereOpragmas = _lhsIpragmas -- copy rule (chain) _whereOtopInstanceNmL = _expressionItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL ( _whereIeh,_whereIerrSq,_whereIgUniq,_whereIgathFixityGam,_whereIgathPragmas,_whereIidDefOccGam,_whereIidDpdMp,_whereIidOccDefs,_whereIidTySigDefOccGam,_whereIidUseOccGam,_whereIneedsError,_whereIpp,_whereIppWrap,_whereItopInstanceNmL,_whereIundefOccGam) = where_ _whereOcaseId _whereOfixityGam _whereOgUniq _whereOgenerDerivMp _whereOidGam _whereOmoduleNm _whereOnmLev _whereOopts _whereOpatchEhNmInInstance _whereOpragmas _whereOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_RightHandSide_Guarded :: Range -> T_GuardedExpressions -> T_MaybeDeclarations -> T_RightHandSide sem_RightHandSide_Guarded range_ guardedexpressions_ where_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsImustBeMono _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsIsepPP _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _guardedexpressionsOcaseId :: UID _guardedexpressionsOfixityGam :: FixityGam _guardedexpressionsOgUniq :: UID _guardedexpressionsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _guardedexpressionsOidGam :: IdDefOccGam _guardedexpressionsOmoduleNm :: HsName _guardedexpressionsOmustBeMono :: Bool _guardedexpressionsOnmLev :: NmLev _guardedexpressionsOopts :: EHCOpts _guardedexpressionsOpatchEhNmInInstance :: PatchEhNmInInstance _guardedexpressionsOpragmas :: (Set.Set Pragma.Pragma) _guardedexpressionsOsepPP :: PP_Doc _guardedexpressionsOtopInstanceNmL :: ([HsName]) _whereOcaseId :: UID _whereOfixityGam :: FixityGam _whereOgUniq :: UID _whereOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _whereOidGam :: IdDefOccGam _whereOmoduleNm :: HsName _whereOnmLev :: NmLev _whereOopts :: EHCOpts _whereOpatchEhNmInInstance :: PatchEhNmInInstance _whereOpragmas :: (Set.Set Pragma.Pragma) _whereOtopInstanceNmL :: ([HsName]) _guardedexpressionsIeh :: ([UIDS -> EH.Expr -> EH.Expr]) _guardedexpressionsIerrSq :: ErrSq _guardedexpressionsIgUniq :: UID _guardedexpressionsIidUseOccGam :: IdUseOccGam _guardedexpressionsIpp :: PP_Doc _guardedexpressionsIppWrap :: (PP_Doc -> PP_Doc) _guardedexpressionsItopInstanceNmL :: ([HsName]) _guardedexpressionsIundefOccGam :: IdUseOccGam _whereIeh :: (Maybe [EH.Decl]) _whereIerrSq :: ErrSq _whereIgUniq :: UID _whereIgathFixityGam :: FixityGam _whereIgathPragmas :: (Set.Set Pragma.Pragma) _whereIidDefOccGam :: IdDefOccGam _whereIidDpdMp :: IdDpdMp _whereIidOccDefs :: ([IdOcc]) _whereIidTySigDefOccGam :: IdDefOccGam _whereIidUseOccGam :: IdUseOccGam _whereIneedsError :: Bool _whereIpp :: PP_Doc _whereIppWrap :: (PP_Doc -> PP_Doc) _whereItopInstanceNmL :: ([HsName]) _whereIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 388, column 9) _idGam = gamUnion _whereIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 895, column 9) _sccOrder = idDpdMp2SccOrder _whereIidDefOccGam _whereIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1026, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH range_ False _whereIidDefOccGam (Just _sccOrder) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 69, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 329, column 9) _pp = _guardedexpressionsIpp >-< _whereIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 31, column 9) _fixityGam = _whereIgathFixityGam `gamUnion` _lhsIfixityGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 765, column 9) _lhsOeh = _mkSccLet (foldr (\(mk,failS) e -> mk failS e) (rngLift range_ EH.Expr_CaseAltFail _lhsIcaseId) (zip _guardedexpressionsIeh (Set.singleton _lhsIcaseId : repeat Set.empty))) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _guardedexpressionsIerrSq `Seq.union` _whereIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _guardedexpressionsIidUseOccGam `gamAddGam` _whereIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _guardedexpressionsIppWrap . _whereIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _guardedexpressionsIundefOccGam `gamUnion` _whereIundefOccGam -- copy rule (up) _lhsOgUniq = _whereIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _whereItopInstanceNmL -- copy rule (down) _guardedexpressionsOcaseId = _lhsIcaseId -- copy rule (from local) _guardedexpressionsOfixityGam = _fixityGam -- copy rule (down) _guardedexpressionsOgUniq = _lhsIgUniq -- copy rule (down) _guardedexpressionsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _guardedexpressionsOidGam = _idGam -- copy rule (down) _guardedexpressionsOmoduleNm = _lhsImoduleNm -- copy rule (down) _guardedexpressionsOmustBeMono = _lhsImustBeMono -- copy rule (from local) _guardedexpressionsOnmLev = _nmLev -- copy rule (down) _guardedexpressionsOopts = _lhsIopts -- copy rule (down) _guardedexpressionsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _guardedexpressionsOpragmas = _lhsIpragmas -- copy rule (down) _guardedexpressionsOsepPP = _lhsIsepPP -- copy rule (down) _guardedexpressionsOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _whereOcaseId = _lhsIcaseId -- copy rule (from local) _whereOfixityGam = _fixityGam -- copy rule (chain) _whereOgUniq = _guardedexpressionsIgUniq -- copy rule (down) _whereOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _whereOidGam = _idGam -- copy rule (down) _whereOmoduleNm = _lhsImoduleNm -- copy rule (from local) _whereOnmLev = _nmLev -- copy rule (down) _whereOopts = _lhsIopts -- copy rule (down) _whereOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _whereOpragmas = _lhsIpragmas -- copy rule (chain) _whereOtopInstanceNmL = _guardedexpressionsItopInstanceNmL ( _guardedexpressionsIeh,_guardedexpressionsIerrSq,_guardedexpressionsIgUniq,_guardedexpressionsIidUseOccGam,_guardedexpressionsIpp,_guardedexpressionsIppWrap,_guardedexpressionsItopInstanceNmL,_guardedexpressionsIundefOccGam) = guardedexpressions_ _guardedexpressionsOcaseId _guardedexpressionsOfixityGam _guardedexpressionsOgUniq _guardedexpressionsOgenerDerivMp _guardedexpressionsOidGam _guardedexpressionsOmoduleNm _guardedexpressionsOmustBeMono _guardedexpressionsOnmLev _guardedexpressionsOopts _guardedexpressionsOpatchEhNmInInstance _guardedexpressionsOpragmas _guardedexpressionsOsepPP _guardedexpressionsOtopInstanceNmL ( _whereIeh,_whereIerrSq,_whereIgUniq,_whereIgathFixityGam,_whereIgathPragmas,_whereIidDefOccGam,_whereIidDpdMp,_whereIidOccDefs,_whereIidTySigDefOccGam,_whereIidUseOccGam,_whereIneedsError,_whereIpp,_whereIppWrap,_whereItopInstanceNmL,_whereIundefOccGam) = where_ _whereOcaseId _whereOfixityGam _whereOgUniq _whereOgenerDerivMp _whereOidGam _whereOmoduleNm _whereOnmLev _whereOopts _whereOpatchEhNmInInstance _whereOpragmas _whereOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RowRecordExpressionUpdate ----------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.Expr -> EH.Expr errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Update: child range : {Range} child name : {Name} child expression : Expression visit 0: local pp : _ alternative Extends: child range : {Range} child name : {MaybeName} child expression : Expression visit 0: local pp : _ -} -- cata sem_RowRecordExpressionUpdate :: RowRecordExpressionUpdate -> T_RowRecordExpressionUpdate sem_RowRecordExpressionUpdate (RowRecordExpressionUpdate_Update _range _name _expression) = (sem_RowRecordExpressionUpdate_Update _range _name (sem_Expression _expression)) sem_RowRecordExpressionUpdate (RowRecordExpressionUpdate_Extends _range _name _expression) = (sem_RowRecordExpressionUpdate_Extends _range _name (sem_Expression _expression)) -- semantic domain type T_RowRecordExpressionUpdate = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( (EH.Expr -> EH.Expr),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RowRecordExpressionUpdate_Update :: Range -> Name -> T_Expression -> T_RowRecordExpressionUpdate sem_RowRecordExpressionUpdate_Update range_ name_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 291, column 9) _pp = name_ >|< ":=" >|< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 684, column 9) _lhsOeh = ehRowRecExprUpd range_ name_ (rngLift range_ EH.RecExpr_Upd) _expressionIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_RowRecordExpressionUpdate_Extends :: Range -> MaybeName -> T_Expression -> T_RowRecordExpressionUpdate sem_RowRecordExpressionUpdate_Extends range_ name_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 289, column 9) _pp = name_ >|< "=" >|< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 682, column 9) _lhsOeh = ehRowRecExprUpd range_ name_ (rngLift range_ EH.RecExpr_Ext) _expressionIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _expressionIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _expressionIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RowRecordExpressionUpdates ---------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.Expr -> EH.Expr] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : RowRecordExpressionUpdate child tl : RowRecordExpressionUpdates alternative Nil: -} -- cata sem_RowRecordExpressionUpdates :: RowRecordExpressionUpdates -> T_RowRecordExpressionUpdates sem_RowRecordExpressionUpdates list = (Prelude.foldr sem_RowRecordExpressionUpdates_Cons sem_RowRecordExpressionUpdates_Nil (Prelude.map sem_RowRecordExpressionUpdate list)) -- semantic domain type T_RowRecordExpressionUpdates = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([EH.Expr -> EH.Expr]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RowRecordExpressionUpdates_Cons :: T_RowRecordExpressionUpdate -> T_RowRecordExpressionUpdates -> T_RowRecordExpressionUpdates sem_RowRecordExpressionUpdates_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.Expr -> EH.Expr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.Expr -> EH.Expr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 484, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 676, column 42) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_RowRecordExpressionUpdates_Nil :: T_RowRecordExpressionUpdates sem_RowRecordExpressionUpdates_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 486, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 676, column 42) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RowRecordPatternBinding ------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.PatExpr -> EH.PatExpr errSq : ErrSq idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Binding: child range : {Range} child name : {MaybeName} child pattern : Pattern visit 0: local pp : _ -} -- cata sem_RowRecordPatternBinding :: RowRecordPatternBinding -> T_RowRecordPatternBinding sem_RowRecordPatternBinding (RowRecordPatternBinding_Binding _range _name _pattern) = (sem_RowRecordPatternBinding_Binding _range _name (sem_Pattern _pattern)) -- semantic domain type T_RowRecordPatternBinding = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.PatExpr -> EH.PatExpr),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RowRecordPatternBinding_Binding :: Range -> MaybeName -> T_Pattern -> T_RowRecordPatternBinding sem_RowRecordPatternBinding_Binding range_ name_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.PatExpr -> EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 295, column 9) _pp = case name_ of Just n -> n >|< "=" >|< _patternIpp Nothing -> _patternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 692, column 9) _lhsOeh = ehRowRecPatExprUpd range_ name_ (rngLift range_ EH.RecPatExpr_Ext) _patternIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam -- copy rule (up) _lhsOgUniq = _patternIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _patternItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternOnmLev = _lhsInmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RowRecordPatternBindings ------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.PatExpr -> EH.PatExpr] errSq : ErrSq idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : RowRecordPatternBinding child tl : RowRecordPatternBindings alternative Nil: -} -- cata sem_RowRecordPatternBindings :: RowRecordPatternBindings -> T_RowRecordPatternBindings sem_RowRecordPatternBindings list = (Prelude.foldr sem_RowRecordPatternBindings_Cons sem_RowRecordPatternBindings_Nil (Prelude.map sem_RowRecordPatternBinding list)) -- semantic domain type T_RowRecordPatternBindings = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.PatExpr -> EH.PatExpr]),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RowRecordPatternBindings_Cons :: T_RowRecordPatternBinding -> T_RowRecordPatternBindings -> T_RowRecordPatternBindings sem_RowRecordPatternBindings_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.PatExpr -> EH.PatExpr]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.PatExpr -> EH.PatExpr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidDefOccGam :: IdDefOccGam _hdIidOccDefs :: ([IdOcc]) _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.PatExpr -> EH.PatExpr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidDefOccGam :: IdDefOccGam _tlIidOccDefs :: ([IdOcc]) _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 490, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 686, column 40) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_RowRecordPatternBindings_Nil :: T_RowRecordPatternBindings sem_RowRecordPatternBindings_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.PatExpr -> EH.PatExpr]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 492, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 686, column 40) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RowTypeUpdate ----------------------------------------------- {- visit 0: inherited attributes: doGenVarWild : Bool fixityGam : FixityGam idGam : IdDefOccGam isAsPred : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.TyExpr -> EH.TyExpr ehMbAsPrL : [Maybe EH.PrExpr] ehMbAsTyPrL : [Maybe EH.TyExpr] errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Extends: child range : {Range} child name : {MaybeName} child type : Type visit 0: local pp : _ local ehMbAsPrL : _ -} -- cata sem_RowTypeUpdate :: RowTypeUpdate -> T_RowTypeUpdate sem_RowTypeUpdate (RowTypeUpdate_Extends _range _name _type) = (sem_RowTypeUpdate_Extends _range _name (sem_Type _type)) -- semantic domain type T_RowTypeUpdate = Bool -> FixityGam -> UID -> IdDefOccGam -> Bool -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.TyExpr -> EH.TyExpr),([Maybe EH.PrExpr]),([Maybe EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RowTypeUpdate_Extends :: Range -> MaybeName -> T_Type -> T_RowTypeUpdate sem_RowTypeUpdate_Extends range_ name_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: (EH.TyExpr -> EH.TyExpr) _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 301, column 9) _pp = name_ >|< "::" >|< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 379, column 9) _ehMbAsPrL = [_typeIehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 700, column 9) _lhsOeh = ehRowRowTyExprUpd range_ name_ (rngLift range_ EH.RowTyExpr_Ext) _typeIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _typeIehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (down) _typeOisAsPred = _lhsIisAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOeh,_lhsOehMbAsPrL,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- RowTypeUpdates ---------------------------------------------- {- visit 0: inherited attributes: doGenVarWild : Bool fixityGam : FixityGam idGam : IdDefOccGam isAsPred : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.TyExpr -> EH.TyExpr] ehMbAsPrL : [Maybe EH.PrExpr] ehMbAsTyPrL : [Maybe EH.TyExpr] errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : RowTypeUpdate child tl : RowTypeUpdates alternative Nil: -} -- cata sem_RowTypeUpdates :: RowTypeUpdates -> T_RowTypeUpdates sem_RowTypeUpdates list = (Prelude.foldr sem_RowTypeUpdates_Cons sem_RowTypeUpdates_Nil (Prelude.map sem_RowTypeUpdate list)) -- semantic domain type T_RowTypeUpdates = Bool -> FixityGam -> UID -> IdDefOccGam -> Bool -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.TyExpr -> EH.TyExpr]),([Maybe EH.PrExpr]),([Maybe EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_RowTypeUpdates_Cons :: T_RowTypeUpdate -> T_RowTypeUpdates -> T_RowTypeUpdates sem_RowTypeUpdates_Cons hd_ tl_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyExpr -> EH.TyExpr]) _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOdoGenVarWild :: Bool _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOisAsPred :: Bool _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOdoGenVarWild :: Bool _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisAsPred :: Bool _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.TyExpr -> EH.TyExpr) _hdIehMbAsPrL :: ([Maybe EH.PrExpr]) _hdIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _hdIerrSq :: ErrSq _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.TyExpr -> EH.TyExpr]) _tlIehMbAsPrL :: ([Maybe EH.PrExpr]) _tlIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _tlIerrSq :: ErrSq _tlIfreeTvarS :: HsNameS _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 460, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 694, column 30) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _hdIehMbAsPrL ++ _tlIehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _hdIehMbAsTyPrL ++ _tlIehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOisAsPred = _lhsIisAsPred -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOisAsPred = _lhsIisAsPred -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIehMbAsPrL,_hdIehMbAsTyPrL,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOdoGenVarWild _hdOfixityGam _hdOgUniq _hdOidGam _hdOisAsPred _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIehMbAsPrL,_tlIehMbAsTyPrL,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOdoGenVarWild _tlOfixityGam _tlOgUniq _tlOidGam _tlOisAsPred _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOehMbAsPrL,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_RowTypeUpdates_Nil :: T_RowTypeUpdates sem_RowTypeUpdates_Nil = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyExpr -> EH.TyExpr]) _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 462, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 694, column 30) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOehMbAsPrL,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Statement --------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] moduleNm : HsName opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID idGam : IdDefOccGam nmLev : NmLev topInstanceNmL : [HsName] synthesized attributes: eh : (EH.Expr,EH.Expr -> EH.Expr) errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Expression: child range : {Range} child expression : Expression visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ alternative Let: child range : {Range} child declarations : Declarations visit 0: local idGam : _ local sccOrder : _ local mkSccLet : _ local errReorder : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ alternative Generator: child range : {Range} child pattern : Pattern child expression : Expression visit 0: local refnames : _ local idUseOccGam : _ local errIdUse : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ alternative Empty: child range : {Range} -} -- cata sem_Statement :: Statement -> T_Statement sem_Statement (Statement_Expression _range _expression) = (sem_Statement_Expression _range (sem_Expression _expression)) sem_Statement (Statement_Let _range _declarations) = (sem_Statement_Let _range (sem_Declarations _declarations)) sem_Statement (Statement_Generator _range _pattern _expression) = (sem_Statement_Generator _range (sem_Pattern _pattern) (sem_Expression _expression)) sem_Statement (Statement_Empty _range) = (sem_Statement_Empty _range) -- semantic domain type T_Statement = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ((EH.Expr,EH.Expr -> EH.Expr)),ErrSq,UID,FixityGam,IdDefOccGam,IdUseOccGam,NmLev,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Statement_Expression :: Range -> T_Expression -> T_Statement sem_Statement_Expression range_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 640, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [hsnMonadSeq] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 642, column 9) _lhsOidUseOccGam = _idUseOccGam `gamUnion` _expressionIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 119, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 589, column 9) _lhsOeh = (_expressionIeh,\e -> ehExpVarApp range_ _refname [_expressionIeh,e]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _expressionIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _expressionIundefOccGam -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (chain) _lhsOidGam = _lhsIidGam -- copy rule (chain) _lhsOnmLev = _lhsInmLev -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (down) _expressionOgUniq = _lhsIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (down) _expressionOnmLev = _lhsInmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (down) _expressionOtopInstanceNmL = _lhsItopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Statement_Let :: Range -> T_Declarations -> T_Statement sem_Statement_Let range_ declarations_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) _declarationsOcaseId :: UID _declarationsOfixityGam :: FixityGam _declarationsOgUniq :: UID _declarationsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _declarationsOidGam :: IdDefOccGam _declarationsOmoduleNm :: HsName _declarationsOnmLev :: NmLev _declarationsOopts :: EHCOpts _declarationsOpatchEhNmInInstance :: PatchEhNmInInstance _declarationsOpragmas :: (Set.Set Pragma.Pragma) _declarationsOtopInstanceNmL :: ([HsName]) _declarationsIeh :: ([EH.Decl]) _declarationsIerrSq :: ErrSq _declarationsIgUniq :: UID _declarationsIgathFixityGam :: FixityGam _declarationsIgathPragmas :: (Set.Set Pragma.Pragma) _declarationsIidDefOccGam :: IdDefOccGam _declarationsIidDpdMp :: IdDpdMp _declarationsIidOccDefs :: ([IdOcc]) _declarationsIidTySigDefOccGam :: IdDefOccGam _declarationsIidUseOccGam :: IdUseOccGam _declarationsIneedsError :: Bool _declarationsIpp :: PP_Doc _declarationsIppWrap :: (PP_Doc -> PP_Doc) _declarationsItopInstanceNmL :: ([HsName]) _declarationsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 402, column 9) _idGam = gamUnion _declarationsIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 903, column 9) _sccOrder = idDpdMp2SccOrder _declarationsIidDefOccGam _declarationsIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1041, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH range_ False _declarationsIidDefOccGam (Just _sccOrder) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 81, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 137, column 9) _errDupIntro = idDefOccGamCheckDupNames _declarationsIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 117, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, Seq.fromList _errReorder, _declarationsIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 263, column 9) _pp = "let" >#< _declarationsIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 591, column 9) _lhsOeh = (EH.mkUnit range_,_mkSccLet) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = _declarationsIgathFixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _declarationsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _declarationsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _declarationsIundefOccGam -- copy rule (up) _lhsOgUniq = _declarationsIgUniq -- copy rule (from local) _lhsOidGam = _idGam -- copy rule (from local) _lhsOnmLev = _nmLev -- copy rule (up) _lhsOtopInstanceNmL = _declarationsItopInstanceNmL -- copy rule (down) _declarationsOcaseId = _lhsIcaseId -- copy rule (down) _declarationsOfixityGam = _lhsIfixityGam -- copy rule (down) _declarationsOgUniq = _lhsIgUniq -- copy rule (down) _declarationsOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (from local) _declarationsOidGam = _idGam -- copy rule (down) _declarationsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _declarationsOnmLev = _nmLev -- copy rule (down) _declarationsOopts = _lhsIopts -- copy rule (down) _declarationsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _declarationsOpragmas = _lhsIpragmas -- copy rule (down) _declarationsOtopInstanceNmL = _lhsItopInstanceNmL ( _declarationsIeh,_declarationsIerrSq,_declarationsIgUniq,_declarationsIgathFixityGam,_declarationsIgathPragmas,_declarationsIidDefOccGam,_declarationsIidDpdMp,_declarationsIidOccDefs,_declarationsIidTySigDefOccGam,_declarationsIidUseOccGam,_declarationsIneedsError,_declarationsIpp,_declarationsIppWrap,_declarationsItopInstanceNmL,_declarationsIundefOccGam) = declarations_ _declarationsOcaseId _declarationsOfixityGam _declarationsOgUniq _declarationsOgenerDerivMp _declarationsOidGam _declarationsOmoduleNm _declarationsOnmLev _declarationsOopts _declarationsOpatchEhNmInInstance _declarationsOpragmas _declarationsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Statement_Generator :: Range -> T_Pattern -> T_Expression -> T_Statement sem_Statement_Generator range_ pattern_ expression_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOidGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _expressionOcaseId :: UID _expressionOfixityGam :: FixityGam _expressionOgUniq :: UID _expressionOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _expressionOidGam :: IdDefOccGam _expressionOmoduleNm :: HsName _expressionOnmLev :: NmLev _expressionOopts :: EHCOpts _expressionOpatchEhNmInInstance :: PatchEhNmInInstance _expressionOpragmas :: (Set.Set Pragma.Pragma) _expressionOtopInstanceNmL :: ([HsName]) _patternIeh :: (EH.PatExpr) _patternIerrSq :: ErrSq _patternIgUniq :: UID _patternIidDefOccGam :: IdDefOccGam _patternIidOccDefs :: ([IdOcc]) _patternIidUseOccGam :: IdUseOccGam _patternIisVar :: Bool _patternImbTopRefname :: (Maybe HsName) _patternIpp :: PP_Doc _patternIppWrap :: (PP_Doc -> PP_Doc) _patternItopInstanceNmL :: ([HsName]) _patternIundefOccGam :: IdUseOccGam _expressionIconNm :: Name _expressionIeh :: (EH.Expr) _expressionIerrSq :: ErrSq _expressionIgUniq :: UID _expressionIidUseOccGam :: IdUseOccGam _expressionIopChain :: (OpChain EH.Expr) _expressionIoperatorName :: MaybeName _expressionIpp :: PP_Doc _expressionIppWrap :: (PP_Doc -> PP_Doc) _expressionItopInstanceNmL :: ([HsName]) _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 404, column 9) _lhsOidGam = gamUnion _patternIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 644, column 29) (_,_refnames,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [hsnMonadBind,hsnMonadFail] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 646, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_patternIidUseOccGam,_expressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 81, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 135, column 9) _errDupIntro = idDefOccGamCheckDupNames _patternIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 121, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, Seq.fromList _errIdUse, _patternIerrSq, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 265, column 9) _pp = _patternIpp >#< "<-" >#< _expressionIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 593, column 9) _lhsOeh = (_expressionIeh ,ehGenerator range_ _patternIeh (\e -> ehExpVarApp range_ (_refnames !! 0) [_expressionIeh,e]) (EH.mkError' (_refnames !! 1) range_ "monadic bind") ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternIppWrap . _expressionIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternIundefOccGam `gamUnion` _expressionIundefOccGam -- copy rule (up) _lhsOgUniq = _expressionIgUniq -- copy rule (from local) _lhsOnmLev = _nmLev -- copy rule (up) _lhsOtopInstanceNmL = _expressionItopInstanceNmL -- copy rule (down) _patternOfixityGam = _lhsIfixityGam -- copy rule (down) _patternOgUniq = _lhsIgUniq -- copy rule (down) _patternOidGam = _lhsIidGam -- copy rule (down) _patternOmoduleNm = _lhsImoduleNm -- copy rule (from local) _patternOnmLev = _nmLev -- copy rule (down) _patternOopts = _lhsIopts -- copy rule (down) _patternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _expressionOcaseId = _lhsIcaseId -- copy rule (down) _expressionOfixityGam = _lhsIfixityGam -- copy rule (chain) _expressionOgUniq = _patternIgUniq -- copy rule (down) _expressionOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _expressionOidGam = _lhsIidGam -- copy rule (down) _expressionOmoduleNm = _lhsImoduleNm -- copy rule (from local) _expressionOnmLev = _nmLev -- copy rule (down) _expressionOopts = _lhsIopts -- copy rule (down) _expressionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _expressionOpragmas = _lhsIpragmas -- copy rule (chain) _expressionOtopInstanceNmL = _patternItopInstanceNmL ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Statement_Empty :: Range -> T_Statement sem_Statement_Empty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 600, column 9) _lhsOeh = (undefined,id) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 6, column 25) _lhsOgathFixityGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOidGam = _lhsIidGam -- copy rule (chain) _lhsOnmLev = _lhsInmLev -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Statements -------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [(EH.Expr,EH.Expr -> EH.Expr)] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Statement child tl : Statements visit 0: local fixityGam : _ alternative Nil: -} -- cata sem_Statements :: Statements -> T_Statements sem_Statements list = (Prelude.foldr sem_Statements_Cons sem_Statements_Nil (Prelude.map sem_Statement list)) -- semantic domain type T_Statements = UID -> FixityGam -> UID -> (Map.Map HsName [(HsName,HsName)]) -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> ( ([(EH.Expr,EH.Expr -> EH.Expr)]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Statements_Cons :: T_Statement -> T_Statements -> T_Statements sem_Statements_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.Expr,EH.Expr -> EH.Expr)]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIidGam :: IdDefOccGam _hdIidUseOccGam :: IdUseOccGam _hdInmLev :: NmLev _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([(EH.Expr,EH.Expr -> EH.Expr)]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 500, column 9) _lhsOppL = _hdIpp : _tlIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 39, column 9) _fixityGam = _hdIgathFixityGam `gamUnion` _lhsIfixityGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 583, column 26) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOcaseId = _lhsIcaseId -- copy rule (from local) _hdOfixityGam = _fixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOpragmas = _lhsIpragmas -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOcaseId = _lhsIcaseId -- copy rule (from local) _tlOfixityGam = _fixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOgenerDerivMp = _lhsIgenerDerivMp -- copy rule (chain) _tlOidGam = _hdIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (chain) _tlOnmLev = _hdInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOpragmas = _lhsIpragmas -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidGam,_hdIidUseOccGam,_hdInmLev,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Statements_Nil :: T_Statements sem_Statements_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.Expr,EH.Expr -> EH.Expr)]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 502, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 583, column 26) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Strings ----------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [String] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : {String} child tl : Strings alternative Nil: -} -- cata sem_Strings :: Strings -> T_Strings sem_Strings list = (Prelude.foldr sem_Strings_Cons sem_Strings_Nil list) -- semantic domain type T_Strings = UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([String]),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Strings_Cons :: String -> T_Strings -> T_Strings sem_Strings_Cons hd_ tl_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: ([String]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlIeh :: ([String]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 918, column 23) _lhsOeh = _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _tlOgUniq = _lhsIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _tlOtopInstanceNmL = _lhsItopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOgUniq _tlOidGam _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Strings_Nil :: T_Strings sem_Strings_Nil = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: ([String]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 918, column 23) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- Type -------------------------------------------------------- {- visit 0: inherited attributes: doGenVarWild : Bool fixityGam : FixityGam idGam : IdDefOccGam isAsPred : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: conNm : Name eh : EH.TyExpr ehMbAsPr : Maybe EH.PrExpr ehMbAsPrL : [Maybe EH.PrExpr] ehMbAsTyPr : Maybe EH.TyExpr ehMbAsTyPrL : [Maybe EH.TyExpr] errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam mbRefConNm : Maybe Name opChain : OpChain EH.TyExpr operatorName : MaybeName pp : PP_Doc ppWrap : PP_Doc -> PP_Doc tyConIs : TypeConFixedMeaning undefOccGam : IdUseOccGam alternatives: alternative NormalApplication: child range : {Range} child function : Type child arguments : Types visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ alternative InfixApplication: child range : {Range} child leftType : Type child operator : Type child rightType : Type visit 0: local errSq : _ local pp : _ local fgi : _ local eh : _ local ctxtFormErrs : _ local isPredOp : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ alternative InfixApplicationChainTop: child range : {Range} child type : Type visit 0: local errSq : _ local ehRearrOpChain : _ local errRearr : _ local ehFromOpChain : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ alternative Constructor: child range : {Range} child name : {Name} visit 0: local refname : _ local idUseOccGam : _ local errIdUse : _ local idOccKind : _ local idAsp : _ local errSq : _ local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local tyConIs : _ local isAsPred : _ alternative Parenthesized: child range : {Range} child type : Type visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ alternative SectionApplication: child range : {Range} child leftType : MaybeType child operator : Type child rightType : MaybeType visit 0: local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ local lUniq_1_nm : {UID} alternative Annotate: child range : {Range} child annotation : TypeAnnotation child type : Type visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ alternative Wildcard: child range : {Range} visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative MonoWildcard: child range : {Range} visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative Variable: child range : {Range} child name : {Name} visit 0: local idAsp : _ local idOccKind : _ local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative NamedWildcard: child range : {Range} child name : {Name} visit 0: local idAsp : _ local idOccKind : _ local refname : _ local idUseOccGam : _ local errIdUse : _ local errSq : _ local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative Forall: child range : {Range} child typevariables : {Names} child type : Type visit 0: local idDefOccGamInside : _ local idGam : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative Exists: child range : {Range} child typevariables : {Names} child type : Type visit 0: local idDefOccGamInside : _ local idGam : _ local nmLev : _ local errDupIntro : _ local errSq : _ local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative RowUpdate: child range : {Range} child type : Type child rowTypeUpdates : RowTypeUpdates visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative RowEmpty: child range : {Range} visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative RowRecUpdate: child range : {Range} child type : Type child rowTypeUpdates : RowTypeUpdates visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ alternative RowRecEmpty: child range : {Range} visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative RowSumUpdate: child range : {Range} child type : Type child rowTypeUpdates : RowTypeUpdates visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative RowSumEmpty: child range : {Range} visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative Qualified: child range : {Range} child context : ContextItems child type : Type visit 0: local pp : _ local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ local isAsPred : _ alternative TupleConstructor: child range : {Range} child arity : {Int} visit 0: local eh : _ local ehMbAsPr : _ local ehMbAsPrL : _ local ehMbAsTyPr : _ local ehMbAsTyPrL : _ -} -- cata sem_Type :: Type -> T_Type sem_Type (Type_NormalApplication _range _function _arguments) = (sem_Type_NormalApplication _range (sem_Type _function) (sem_Types _arguments)) sem_Type (Type_InfixApplication _range _leftType _operator _rightType) = (sem_Type_InfixApplication _range (sem_Type _leftType) (sem_Type _operator) (sem_Type _rightType)) sem_Type (Type_InfixApplicationChainTop _range _type) = (sem_Type_InfixApplicationChainTop _range (sem_Type _type)) sem_Type (Type_Constructor _range _name) = (sem_Type_Constructor _range _name) sem_Type (Type_Parenthesized _range _type) = (sem_Type_Parenthesized _range (sem_Type _type)) sem_Type (Type_SectionApplication _range _leftType _operator _rightType) = (sem_Type_SectionApplication _range (sem_MaybeType _leftType) (sem_Type _operator) (sem_MaybeType _rightType)) sem_Type (Type_Annotate _range _annotation _type) = (sem_Type_Annotate _range (sem_TypeAnnotation _annotation) (sem_Type _type)) sem_Type (Type_Wildcard _range) = (sem_Type_Wildcard _range) sem_Type (Type_MonoWildcard _range) = (sem_Type_MonoWildcard _range) sem_Type (Type_Variable _range _name) = (sem_Type_Variable _range _name) sem_Type (Type_NamedWildcard _range _name) = (sem_Type_NamedWildcard _range _name) sem_Type (Type_Forall _range _typevariables _type) = (sem_Type_Forall _range _typevariables (sem_Type _type)) sem_Type (Type_Exists _range _typevariables _type) = (sem_Type_Exists _range _typevariables (sem_Type _type)) sem_Type (Type_RowUpdate _range _type _rowTypeUpdates) = (sem_Type_RowUpdate _range (sem_Type _type) (sem_RowTypeUpdates _rowTypeUpdates)) sem_Type (Type_RowEmpty _range) = (sem_Type_RowEmpty _range) sem_Type (Type_RowRecUpdate _range _type _rowTypeUpdates) = (sem_Type_RowRecUpdate _range (sem_Type _type) (sem_RowTypeUpdates _rowTypeUpdates)) sem_Type (Type_RowRecEmpty _range) = (sem_Type_RowRecEmpty _range) sem_Type (Type_RowSumUpdate _range _type _rowTypeUpdates) = (sem_Type_RowSumUpdate _range (sem_Type _type) (sem_RowTypeUpdates _rowTypeUpdates)) sem_Type (Type_RowSumEmpty _range) = (sem_Type_RowSumEmpty _range) sem_Type (Type_Qualified _range _context _type) = (sem_Type_Qualified _range (sem_ContextItems _context) (sem_Type _type)) sem_Type (Type_TupleConstructor _range _arity) = (sem_Type_TupleConstructor _range _arity) -- semantic domain type T_Type = Bool -> FixityGam -> UID -> IdDefOccGam -> Bool -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( Name,(EH.TyExpr),(Maybe EH.PrExpr),([Maybe EH.PrExpr]),(Maybe EH.TyExpr),([Maybe EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,(Maybe Name),(OpChain EH.TyExpr),MaybeName,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TypeConFixedMeaning,IdUseOccGam) sem_Type_NormalApplication :: Range -> T_Type -> T_Types -> T_Type sem_Type_NormalApplication range_ function_ arguments_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _argumentsOisAsPred :: Bool _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _functionOdoGenVarWild :: Bool _functionOfixityGam :: FixityGam _functionOgUniq :: UID _functionOidGam :: IdDefOccGam _functionOisAsPred :: Bool _functionOnmLev :: NmLev _functionOopts :: EHCOpts _functionOpatchEhNmInInstance :: PatchEhNmInInstance _functionOtopInstanceNmL :: ([HsName]) _argumentsOfixityGam :: FixityGam _argumentsOgUniq :: UID _argumentsOidGam :: IdDefOccGam _argumentsOnmLev :: NmLev _argumentsOopts :: EHCOpts _argumentsOpatchEhNmInInstance :: PatchEhNmInInstance _argumentsOtopInstanceNmL :: ([HsName]) _functionIconNm :: Name _functionIeh :: (EH.TyExpr) _functionIehMbAsPr :: (Maybe EH.PrExpr) _functionIehMbAsPrL :: ([Maybe EH.PrExpr]) _functionIehMbAsTyPr :: (Maybe EH.TyExpr) _functionIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _functionIerrSq :: ErrSq _functionIfreeTvarS :: HsNameS _functionIgUniq :: UID _functionIidUseOccGam :: IdUseOccGam _functionImbRefConNm :: (Maybe Name) _functionIopChain :: (OpChain EH.TyExpr) _functionIoperatorName :: MaybeName _functionIpp :: PP_Doc _functionIppWrap :: (PP_Doc -> PP_Doc) _functionItopInstanceNmL :: ([HsName]) _functionItyConIs :: TypeConFixedMeaning _functionIundefOccGam :: IdUseOccGam _argumentsIeh :: ([EH.TyExpr]) _argumentsIerrSq :: ErrSq _argumentsIfreeTvarS :: HsNameS _argumentsIgUniq :: UID _argumentsIidUseOccGam :: IdUseOccGam _argumentsIpp :: PP_Doc _argumentsIppL :: ([PP_Doc]) _argumentsIppWrap :: (PP_Doc -> PP_Doc) _argumentsItopInstanceNmL :: ([HsName]) _argumentsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 116, column 9) _pp = let f = _functionIpp in ppAppTop (_functionIconNm, f) _argumentsIppL (f >#< ppSpaces _argumentsIppL) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 209, column 9) _eh = appTopApp (_functionIeh : _argumentsIeh) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 346, column 9) _ehMbAsPr = case _functionImbRefConNm of Just conNm | _lhsIisAsPred -> Just $ rngLift range_ EH.PrExpr_Class conNm _argumentsIeh _ -> Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 156, column 9) _lhsOtyConIs = _functionItyConIs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 166, column 9) _argumentsOisAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _functionIerrSq `Seq.union` _argumentsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _functionIfreeTvarS `Set.union` _argumentsIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _functionIidUseOccGam `gamAddGam` _argumentsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _functionIppWrap . _argumentsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _functionIundefOccGam `gamUnion` _argumentsIundefOccGam -- copy rule (up) _lhsOconNm = _functionIconNm -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _argumentsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _argumentsItopInstanceNmL -- copy rule (down) _functionOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _functionOfixityGam = _lhsIfixityGam -- copy rule (down) _functionOgUniq = _lhsIgUniq -- copy rule (down) _functionOidGam = _lhsIidGam -- copy rule (down) _functionOisAsPred = _lhsIisAsPred -- copy rule (down) _functionOnmLev = _lhsInmLev -- copy rule (down) _functionOopts = _lhsIopts -- copy rule (down) _functionOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _functionOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _argumentsOfixityGam = _lhsIfixityGam -- copy rule (chain) _argumentsOgUniq = _functionIgUniq -- copy rule (down) _argumentsOidGam = _lhsIidGam -- copy rule (down) _argumentsOnmLev = _lhsInmLev -- copy rule (down) _argumentsOopts = _lhsIopts -- copy rule (down) _argumentsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _argumentsOtopInstanceNmL = _functionItopInstanceNmL ( _functionIconNm,_functionIeh,_functionIehMbAsPr,_functionIehMbAsPrL,_functionIehMbAsTyPr,_functionIehMbAsTyPrL,_functionIerrSq,_functionIfreeTvarS,_functionIgUniq,_functionIidUseOccGam,_functionImbRefConNm,_functionIopChain,_functionIoperatorName,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionItyConIs,_functionIundefOccGam) = function_ _functionOdoGenVarWild _functionOfixityGam _functionOgUniq _functionOidGam _functionOisAsPred _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOtopInstanceNmL ( _argumentsIeh,_argumentsIerrSq,_argumentsIfreeTvarS,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsIundefOccGam) = arguments_ _argumentsOfixityGam _argumentsOgUniq _argumentsOidGam _argumentsOisAsPred _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_InfixApplication :: Range -> T_Type -> T_Type -> T_Type -> T_Type sem_Type_InfixApplication range_ leftType_ operator_ rightType_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _leftTypeOisAsPred :: Bool _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftTypeOdoGenVarWild :: Bool _leftTypeOfixityGam :: FixityGam _leftTypeOgUniq :: UID _leftTypeOidGam :: IdDefOccGam _leftTypeOnmLev :: NmLev _leftTypeOopts :: EHCOpts _leftTypeOpatchEhNmInInstance :: PatchEhNmInInstance _leftTypeOtopInstanceNmL :: ([HsName]) _operatorOdoGenVarWild :: Bool _operatorOfixityGam :: FixityGam _operatorOgUniq :: UID _operatorOidGam :: IdDefOccGam _operatorOisAsPred :: Bool _operatorOnmLev :: NmLev _operatorOopts :: EHCOpts _operatorOpatchEhNmInInstance :: PatchEhNmInInstance _operatorOtopInstanceNmL :: ([HsName]) _rightTypeOdoGenVarWild :: Bool _rightTypeOfixityGam :: FixityGam _rightTypeOgUniq :: UID _rightTypeOidGam :: IdDefOccGam _rightTypeOisAsPred :: Bool _rightTypeOnmLev :: NmLev _rightTypeOopts :: EHCOpts _rightTypeOpatchEhNmInInstance :: PatchEhNmInInstance _rightTypeOtopInstanceNmL :: ([HsName]) _leftTypeIconNm :: Name _leftTypeIeh :: (EH.TyExpr) _leftTypeIehMbAsPr :: (Maybe EH.PrExpr) _leftTypeIehMbAsPrL :: ([Maybe EH.PrExpr]) _leftTypeIehMbAsTyPr :: (Maybe EH.TyExpr) _leftTypeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _leftTypeIerrSq :: ErrSq _leftTypeIfreeTvarS :: HsNameS _leftTypeIgUniq :: UID _leftTypeIidUseOccGam :: IdUseOccGam _leftTypeImbRefConNm :: (Maybe Name) _leftTypeIopChain :: (OpChain EH.TyExpr) _leftTypeIoperatorName :: MaybeName _leftTypeIpp :: PP_Doc _leftTypeIppWrap :: (PP_Doc -> PP_Doc) _leftTypeItopInstanceNmL :: ([HsName]) _leftTypeItyConIs :: TypeConFixedMeaning _leftTypeIundefOccGam :: IdUseOccGam _operatorIconNm :: Name _operatorIeh :: (EH.TyExpr) _operatorIehMbAsPr :: (Maybe EH.PrExpr) _operatorIehMbAsPrL :: ([Maybe EH.PrExpr]) _operatorIehMbAsTyPr :: (Maybe EH.TyExpr) _operatorIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _operatorIerrSq :: ErrSq _operatorIfreeTvarS :: HsNameS _operatorIgUniq :: UID _operatorIidUseOccGam :: IdUseOccGam _operatorImbRefConNm :: (Maybe Name) _operatorIopChain :: (OpChain EH.TyExpr) _operatorIoperatorName :: MaybeName _operatorIpp :: PP_Doc _operatorIppWrap :: (PP_Doc -> PP_Doc) _operatorItopInstanceNmL :: ([HsName]) _operatorItyConIs :: TypeConFixedMeaning _operatorIundefOccGam :: IdUseOccGam _rightTypeIconNm :: Name _rightTypeIeh :: (EH.TyExpr) _rightTypeIehMbAsPr :: (Maybe EH.PrExpr) _rightTypeIehMbAsPrL :: ([Maybe EH.PrExpr]) _rightTypeIehMbAsTyPr :: (Maybe EH.TyExpr) _rightTypeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _rightTypeIerrSq :: ErrSq _rightTypeIfreeTvarS :: HsNameS _rightTypeIgUniq :: UID _rightTypeIidUseOccGam :: IdUseOccGam _rightTypeImbRefConNm :: (Maybe Name) _rightTypeIopChain :: (OpChain EH.TyExpr) _rightTypeIoperatorName :: MaybeName _rightTypeIpp :: PP_Doc _rightTypeIppWrap :: (PP_Doc -> PP_Doc) _rightTypeItopInstanceNmL :: ([HsName]) _rightTypeItyConIs :: TypeConFixedMeaning _rightTypeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 256, column 9) _lhsOconNm = _operatorIconNm -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 65, column 9) _errSq = Seq.unions [Seq.fromList _ctxtFormErrs, _leftTypeIerrSq, _operatorIerrSq, _rightTypeIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 120, column 9) _pp = let args = [_leftTypeIpp,_rightTypeIpp] o = _operatorIpp in ppAppTop (_operatorIconNm, o) args (o >#< ppSpaces args) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 58, column 9) _fgi = case _operatorIoperatorName of Just n -> fixityGamLookup n _lhsIfixityGam _ -> defaultFixityGamInfo -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 112, column 9) _lhsOopChain = if _isPredOp then OpChain_Leaf _eh else OpChain_Op _operatorIeh _operatorIpp (fgiFixity _fgi) (fgiPrio _fgi) range_ _leftTypeIopChain _rightTypeIopChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 211, column 25) (_eh,_ctxtFormErrs,_isPredOp) = if not _lhsIisAsPred && _operatorItyConIs == TyConIsPrArrow then let t = foldr app1Arr _rightTypeIeh [ pr | (Just pr) <- _leftTypeIehMbAsTyPrL ] in if all isJust _leftTypeIehMbAsTyPrL then (t, [] , True ) else (t, [rngLift range_ Err_MalformedPred _leftTypeIpp] , False) else (appRngParApp range_ [_operatorIeh,_leftTypeIeh,_rightTypeIeh], [], False) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 353, column 9) _ehMbAsPr = case (_leftTypeIehMbAsPr,_rightTypeIehMbAsPr) of (Just l,Just r) | _operatorItyConIs == TyConIsPrArrow && _lhsIisAsPred -> Just $ rngLift range_ EH.PrExpr_Arrow l r (Nothing,Nothing) | _lhsIisAsPred -> case _operatorItyConIs of TyConIsPrArrow -> Just $ rngLift range_ EH.PrExpr_Class (fromJust _operatorImbRefConNm) [_leftTypeIeh,_rightTypeIeh] TyConIsEqTilde -> Just $ rngLift range_ EH.PrExpr_Eq _leftTypeIeh _rightTypeIeh TyConIsOther -> Just $ rngLift range_ EH.PrExpr_Class (fromJust _operatorImbRefConNm) [_leftTypeIeh,_rightTypeIeh] _ -> Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 164, column 9) _leftTypeOisAsPred = _lhsIisAsPred || _operatorItyConIs == TyConIsPrArrow -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _leftTypeIfreeTvarS `Set.union` _operatorIfreeTvarS `Set.union` _rightTypeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _leftTypeIidUseOccGam `gamAddGam` _operatorIidUseOccGam `gamAddGam` _rightTypeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftTypeIppWrap . _operatorIppWrap . _rightTypeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftTypeIundefOccGam `gamUnion` _operatorIundefOccGam `gamUnion` _rightTypeIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _rightTypeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rightTypeItopInstanceNmL -- copy rule (down) _leftTypeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _leftTypeOfixityGam = _lhsIfixityGam -- copy rule (down) _leftTypeOgUniq = _lhsIgUniq -- copy rule (down) _leftTypeOidGam = _lhsIidGam -- copy rule (down) _leftTypeOnmLev = _lhsInmLev -- copy rule (down) _leftTypeOopts = _lhsIopts -- copy rule (down) _leftTypeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _leftTypeOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _operatorOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _operatorOfixityGam = _lhsIfixityGam -- copy rule (chain) _operatorOgUniq = _leftTypeIgUniq -- copy rule (down) _operatorOidGam = _lhsIidGam -- copy rule (down) _operatorOisAsPred = _lhsIisAsPred -- copy rule (down) _operatorOnmLev = _lhsInmLev -- copy rule (down) _operatorOopts = _lhsIopts -- copy rule (down) _operatorOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _operatorOtopInstanceNmL = _leftTypeItopInstanceNmL -- copy rule (down) _rightTypeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _rightTypeOfixityGam = _lhsIfixityGam -- copy rule (chain) _rightTypeOgUniq = _operatorIgUniq -- copy rule (down) _rightTypeOidGam = _lhsIidGam -- copy rule (down) _rightTypeOisAsPred = _lhsIisAsPred -- copy rule (down) _rightTypeOnmLev = _lhsInmLev -- copy rule (down) _rightTypeOopts = _lhsIopts -- copy rule (down) _rightTypeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rightTypeOtopInstanceNmL = _operatorItopInstanceNmL ( _leftTypeIconNm,_leftTypeIeh,_leftTypeIehMbAsPr,_leftTypeIehMbAsPrL,_leftTypeIehMbAsTyPr,_leftTypeIehMbAsTyPrL,_leftTypeIerrSq,_leftTypeIfreeTvarS,_leftTypeIgUniq,_leftTypeIidUseOccGam,_leftTypeImbRefConNm,_leftTypeIopChain,_leftTypeIoperatorName,_leftTypeIpp,_leftTypeIppWrap,_leftTypeItopInstanceNmL,_leftTypeItyConIs,_leftTypeIundefOccGam) = leftType_ _leftTypeOdoGenVarWild _leftTypeOfixityGam _leftTypeOgUniq _leftTypeOidGam _leftTypeOisAsPred _leftTypeOnmLev _leftTypeOopts _leftTypeOpatchEhNmInInstance _leftTypeOtopInstanceNmL ( _operatorIconNm,_operatorIeh,_operatorIehMbAsPr,_operatorIehMbAsPrL,_operatorIehMbAsTyPr,_operatorIehMbAsTyPrL,_operatorIerrSq,_operatorIfreeTvarS,_operatorIgUniq,_operatorIidUseOccGam,_operatorImbRefConNm,_operatorIopChain,_operatorIoperatorName,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorItyConIs,_operatorIundefOccGam) = operator_ _operatorOdoGenVarWild _operatorOfixityGam _operatorOgUniq _operatorOidGam _operatorOisAsPred _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOtopInstanceNmL ( _rightTypeIconNm,_rightTypeIeh,_rightTypeIehMbAsPr,_rightTypeIehMbAsPrL,_rightTypeIehMbAsTyPr,_rightTypeIehMbAsTyPrL,_rightTypeIerrSq,_rightTypeIfreeTvarS,_rightTypeIgUniq,_rightTypeIidUseOccGam,_rightTypeImbRefConNm,_rightTypeIopChain,_rightTypeIoperatorName,_rightTypeIpp,_rightTypeIppWrap,_rightTypeItopInstanceNmL,_rightTypeItyConIs,_rightTypeIundefOccGam) = rightType_ _rightTypeOdoGenVarWild _rightTypeOfixityGam _rightTypeOgUniq _rightTypeOidGam _rightTypeOisAsPred _rightTypeOnmLev _rightTypeOopts _rightTypeOpatchEhNmInInstance _rightTypeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_InfixApplicationChainTop :: Range -> T_Type -> T_Type sem_Type_InfixApplicationChainTop range_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 67, column 9) _errSq = Seq.unions [Seq.fromList _errRearr, _typeIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 122, column 25) (_ehRearrOpChain,_errRearr) = opChainReArrange _typeIopChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 122, column 9) _ehFromOpChain = unOpChain _ehRearrOpChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 219, column 9) _eh = _ehFromOpChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 363, column 9) _ehMbAsPr = _typeIehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _typeIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam -- copy rule (up) _lhsOconNm = _typeIconNm -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (down) _typeOisAsPred = _lhsIisAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Constructor :: Range -> Name -> T_Type sem_Type_Constructor range_ name_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _lhsOtyConIs :: TypeConFixedMeaning -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 581, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] _idOccKind _idAsp range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 597, column 29) (_idOccKind,_idAsp) = if _lhsIisAsPred && _tyConIs == TyConIsOther then (IdOcc_Class,IdAsp_Class_Class) else (IdOcc_Type,IdAsp_Type_Con) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 254, column 9) _lhsOconNm = name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 61, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 125, column 9) _pp = ppCon name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 50, column 9) _lhsOoperatorName = Just _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 229, column 9) _eh = rngLift range_ EH.TyExpr_Con _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 136, column 9) _lhsOmbRefConNm = Just _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 152, column 9) _tyConIs = if hsnIsPrArrow name_ then TyConIsPrArrow else if hsnIsEqTilde name_ then TyConIsEqTilde else TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (from local) _lhsOtyConIs = _tyConIs in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Parenthesized :: Range -> T_Type -> T_Type sem_Type_Parenthesized range_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 127, column 9) _pp = ppParens _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 231, column 9) _eh = rngLift range_ EH.TyExpr_Parens _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 363, column 9) _ehMbAsPr = _typeIehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 373, column 9) _ehMbAsPrL = _typeIehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _typeIehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (down) _typeOisAsPred = _lhsIisAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_SectionApplication :: Range -> T_MaybeType -> T_Type -> T_MaybeType -> T_Type sem_Type_SectionApplication range_ leftType_ operator_ rightType_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _leftTypeOgUniq :: UID _lUniq_1_nm :: UID _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftTypeOdoGenVarWild :: Bool _leftTypeOfixityGam :: FixityGam _leftTypeOidGam :: IdDefOccGam _leftTypeOnmLev :: NmLev _leftTypeOopts :: EHCOpts _leftTypeOpatchEhNmInInstance :: PatchEhNmInInstance _leftTypeOtopInstanceNmL :: ([HsName]) _operatorOdoGenVarWild :: Bool _operatorOfixityGam :: FixityGam _operatorOgUniq :: UID _operatorOidGam :: IdDefOccGam _operatorOisAsPred :: Bool _operatorOnmLev :: NmLev _operatorOopts :: EHCOpts _operatorOpatchEhNmInInstance :: PatchEhNmInInstance _operatorOtopInstanceNmL :: ([HsName]) _rightTypeOdoGenVarWild :: Bool _rightTypeOfixityGam :: FixityGam _rightTypeOgUniq :: UID _rightTypeOidGam :: IdDefOccGam _rightTypeOnmLev :: NmLev _rightTypeOopts :: EHCOpts _rightTypeOpatchEhNmInInstance :: PatchEhNmInInstance _rightTypeOtopInstanceNmL :: ([HsName]) _leftTypeIeh :: (Maybe EH.TyExpr) _leftTypeIerrSq :: ErrSq _leftTypeIfreeTvarS :: HsNameS _leftTypeIgUniq :: UID _leftTypeIidUseOccGam :: IdUseOccGam _leftTypeIpp :: PP_Doc _leftTypeIppMb :: (Maybe PP_Doc) _leftTypeIppWrap :: (PP_Doc -> PP_Doc) _leftTypeItopInstanceNmL :: ([HsName]) _leftTypeIundefOccGam :: IdUseOccGam _operatorIconNm :: Name _operatorIeh :: (EH.TyExpr) _operatorIehMbAsPr :: (Maybe EH.PrExpr) _operatorIehMbAsPrL :: ([Maybe EH.PrExpr]) _operatorIehMbAsTyPr :: (Maybe EH.TyExpr) _operatorIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _operatorIerrSq :: ErrSq _operatorIfreeTvarS :: HsNameS _operatorIgUniq :: UID _operatorIidUseOccGam :: IdUseOccGam _operatorImbRefConNm :: (Maybe Name) _operatorIopChain :: (OpChain EH.TyExpr) _operatorIoperatorName :: MaybeName _operatorIpp :: PP_Doc _operatorIppWrap :: (PP_Doc -> PP_Doc) _operatorItopInstanceNmL :: ([HsName]) _operatorItyConIs :: TypeConFixedMeaning _operatorIundefOccGam :: IdUseOccGam _rightTypeIeh :: (Maybe EH.TyExpr) _rightTypeIerrSq :: ErrSq _rightTypeIfreeTvarS :: HsNameS _rightTypeIgUniq :: UID _rightTypeIidUseOccGam :: IdUseOccGam _rightTypeIpp :: PP_Doc _rightTypeIppMb :: (Maybe PP_Doc) _rightTypeIppWrap :: (PP_Doc -> PP_Doc) _rightTypeItopInstanceNmL :: ([HsName]) _rightTypeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 221, column 9) _eh = ehSection _lUniq_1_nm range_ EH.TyExpr_Var (rngAntilift id) EH.TyExpr_Lam _leftTypeIeh _operatorIeh _rightTypeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- -- generated by the unique rule mechanism. (_leftTypeOgUniq,_lUniq_1_nm) = let __cont = _lhsIgUniq in seq __cont ( case nextUnique __cont of { (__cont, lUniq_1_nm) -> (__cont,lUniq_1_nm)} ) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _leftTypeIerrSq `Seq.union` _operatorIerrSq `Seq.union` _rightTypeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _leftTypeIfreeTvarS `Set.union` _operatorIfreeTvarS `Set.union` _rightTypeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _leftTypeIidUseOccGam `gamAddGam` _operatorIidUseOccGam `gamAddGam` _rightTypeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _leftTypeIpp >-< _operatorIpp >-< _rightTypeIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftTypeIppWrap . _operatorIppWrap . _rightTypeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftTypeIundefOccGam `gamUnion` _operatorIundefOccGam `gamUnion` _rightTypeIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _rightTypeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rightTypeItopInstanceNmL -- copy rule (down) _leftTypeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _leftTypeOfixityGam = _lhsIfixityGam -- copy rule (down) _leftTypeOidGam = _lhsIidGam -- copy rule (down) _leftTypeOnmLev = _lhsInmLev -- copy rule (down) _leftTypeOopts = _lhsIopts -- copy rule (down) _leftTypeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _leftTypeOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _operatorOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _operatorOfixityGam = _lhsIfixityGam -- copy rule (chain) _operatorOgUniq = _leftTypeIgUniq -- copy rule (down) _operatorOidGam = _lhsIidGam -- copy rule (from local) _operatorOisAsPred = _isAsPred -- copy rule (down) _operatorOnmLev = _lhsInmLev -- copy rule (down) _operatorOopts = _lhsIopts -- copy rule (down) _operatorOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _operatorOtopInstanceNmL = _leftTypeItopInstanceNmL -- copy rule (down) _rightTypeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _rightTypeOfixityGam = _lhsIfixityGam -- copy rule (chain) _rightTypeOgUniq = _operatorIgUniq -- copy rule (down) _rightTypeOidGam = _lhsIidGam -- copy rule (down) _rightTypeOnmLev = _lhsInmLev -- copy rule (down) _rightTypeOopts = _lhsIopts -- copy rule (down) _rightTypeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rightTypeOtopInstanceNmL = _operatorItopInstanceNmL ( _leftTypeIeh,_leftTypeIerrSq,_leftTypeIfreeTvarS,_leftTypeIgUniq,_leftTypeIidUseOccGam,_leftTypeIpp,_leftTypeIppMb,_leftTypeIppWrap,_leftTypeItopInstanceNmL,_leftTypeIundefOccGam) = leftType_ _leftTypeOdoGenVarWild _leftTypeOfixityGam _leftTypeOgUniq _leftTypeOidGam _leftTypeOnmLev _leftTypeOopts _leftTypeOpatchEhNmInInstance _leftTypeOtopInstanceNmL ( _operatorIconNm,_operatorIeh,_operatorIehMbAsPr,_operatorIehMbAsPrL,_operatorIehMbAsTyPr,_operatorIehMbAsTyPrL,_operatorIerrSq,_operatorIfreeTvarS,_operatorIgUniq,_operatorIidUseOccGam,_operatorImbRefConNm,_operatorIopChain,_operatorIoperatorName,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorItyConIs,_operatorIundefOccGam) = operator_ _operatorOdoGenVarWild _operatorOfixityGam _operatorOgUniq _operatorOidGam _operatorOisAsPred _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOtopInstanceNmL ( _rightTypeIeh,_rightTypeIerrSq,_rightTypeIfreeTvarS,_rightTypeIgUniq,_rightTypeIidUseOccGam,_rightTypeIpp,_rightTypeIppMb,_rightTypeIppWrap,_rightTypeItopInstanceNmL,_rightTypeIundefOccGam) = rightType_ _rightTypeOdoGenVarWild _rightTypeOfixityGam _rightTypeOgUniq _rightTypeOidGam _rightTypeOnmLev _rightTypeOopts _rightTypeOpatchEhNmInInstance _rightTypeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Annotate :: Range -> T_TypeAnnotation -> T_Type -> T_Type sem_Type_Annotate range_ annotation_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _lhsOtyConIs :: TypeConFixedMeaning _annotationOfixityGam :: FixityGam _annotationOgUniq :: UID _annotationOidGam :: IdDefOccGam _annotationOnmLev :: NmLev _annotationOopts :: EHCOpts _annotationOpatchEhNmInInstance :: PatchEhNmInInstance _annotationOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _annotationIeh :: (EH.TyExprAnn) _annotationIerrSq :: ErrSq _annotationIfreeTvarS :: HsNameS _annotationIgUniq :: UID _annotationIidUseOccGam :: IdUseOccGam _annotationIpp :: PP_Doc _annotationIppWrap :: (PP_Doc -> PP_Doc) _annotationItopInstanceNmL :: ([HsName]) _annotationIundefOccGam :: IdUseOccGam _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 129, column 9) _pp = _annotationIppWrap _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 233, column 17) _eh = rngLift range_ EH.TyExpr_Ann _annotationIeh _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 363, column 9) _ehMbAsPr = _typeIehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 373, column 9) _ehMbAsPrL = _typeIehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _annotationIerrSq `Seq.union` _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _annotationIfreeTvarS `Set.union` _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _annotationIidUseOccGam `gamAddGam` _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _annotationIppWrap . _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _annotationIundefOccGam `gamUnion` _typeIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (up) _lhsOtyConIs = _typeItyConIs -- copy rule (down) _annotationOfixityGam = _lhsIfixityGam -- copy rule (down) _annotationOgUniq = _lhsIgUniq -- copy rule (down) _annotationOidGam = _lhsIidGam -- copy rule (down) _annotationOnmLev = _lhsInmLev -- copy rule (down) _annotationOopts = _lhsIopts -- copy rule (down) _annotationOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _annotationOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (chain) _typeOgUniq = _annotationIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (down) _typeOisAsPred = _lhsIisAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _typeOtopInstanceNmL = _annotationItopInstanceNmL ( _annotationIeh,_annotationIerrSq,_annotationIfreeTvarS,_annotationIgUniq,_annotationIidUseOccGam,_annotationIpp,_annotationIppWrap,_annotationItopInstanceNmL,_annotationIundefOccGam) = annotation_ _annotationOfixityGam _annotationOgUniq _annotationOidGam _annotationOnmLev _annotationOopts _annotationOpatchEhNmInInstance _annotationOtopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Wildcard :: Range -> T_Type sem_Type_Wildcard range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 131, column 9) _pp = pp "..." -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 235, column 9) _eh = rngLift range_ EH.TyExpr_Wild -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 385, column 17) _ehMbAsTyPr = Just $ rngLift range_ EH.TyExpr_Impls -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 395, column 17) _ehMbAsTyPrL = [_ehMbAsTyPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_MonoWildcard :: Range -> T_Type sem_Type_MonoWildcard range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 133, column 9) _pp = pp "...." -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 237, column 9) _eh = rngLift range_ EH.TyExpr_Mono -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 385, column 17) _ehMbAsTyPr = Just $ rngLift range_ EH.TyExpr_Impls -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 395, column 17) _ehMbAsTyPrL = [_ehMbAsTyPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Variable :: Range -> Name -> T_Type sem_Type_Variable range_ name_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOfreeTvarS :: HsNameS _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 577, column 9) _idAsp = IdAsp_Type_Var -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 577, column 9) _idOccKind = IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 581, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] _idOccKind _idAsp range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 61, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 135, column 9) _pp = pp name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 50, column 9) _lhsOoperatorName = Just _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 239, column 9) _eh = rngLift range_ (if _lhsIdoGenVarWild then EH.TyExpr_VarWild else EH.TyExpr_Var) name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 122, column 9) _lhsOfreeTvarS = Set.singleton name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_NamedWildcard :: Range -> Name -> T_Type sem_Type_NamedWildcard range_ name_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOfreeTvarS :: HsNameS _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 577, column 9) _idAsp = IdAsp_Type_Var -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 577, column 9) _idOccKind = IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 581, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] _idOccKind _idAsp range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 61, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 137, column 9) _pp = "%" >|< name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 241, column 9) _eh = rngLift range_ EH.TyExpr_VarWild name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 122, column 9) _lhsOfreeTvarS = Set.singleton name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Forall :: Range -> Names -> T_Type -> T_Type sem_Type_Forall range_ typevariables_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOfreeTvarS :: HsNameS _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 242, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _lhsInmLev range_ typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 408, column 9) _idGam = gamUnion _idDefOccGamInside _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 33, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 112, column 9) _errDupIntro = idDefOccGamCheckDupNames _idDefOccGamInside -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 63, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, _typeIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 139, column 9) _pp = "forall" >#< ppSpaces typevariables_ >#< "." >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 243, column 9) _eh = foldr (rngLift range_ EH.TyExpr_Quant tyQu_Forall) _typeIeh typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 351, column 9) _ehMbAsPr = foldr (\tv pr -> fmap (rngLift range_ EH.PrExpr_Forall tv) pr) _typeIehMbAsPr typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 124, column 9) _lhsOfreeTvarS = _typeIfreeTvarS `Set.difference` Set.fromList typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (from local) _typeOidGam = _idGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (from local) _typeOnmLev = _nmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Exists :: Range -> Names -> T_Type -> T_Type sem_Type_Exists range_ typevariables_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOfreeTvarS :: HsNameS _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 242, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _lhsInmLev range_ typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 408, column 9) _idGam = gamUnion _idDefOccGamInside _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameLevel.ag"(line 33, column 9) _nmLev = _lhsInmLev + 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ExtraChecks.ag"(line 112, column 9) _errDupIntro = idDefOccGamCheckDupNames _idDefOccGamInside -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 63, column 9) _errSq = Seq.unions [Seq.fromList _errDupIntro, _typeIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 141, column 9) _pp = "exists" >#< ppSpaces typevariables_ >#< "." >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 245, column 9) _eh = foldr (rngLift range_ EH.TyExpr_Quant tyQu_Exists) _typeIeh typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 124, column 9) _lhsOfreeTvarS = _typeIfreeTvarS `Set.difference` Set.fromList typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _errSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (from local) _typeOidGam = _idGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (from local) _typeOnmLev = _nmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowUpdate :: Range -> T_Type -> T_RowTypeUpdates -> T_Type sem_Type_RowUpdate range_ type_ rowTypeUpdates_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _rowTypeUpdatesOdoGenVarWild :: Bool _rowTypeUpdatesOfixityGam :: FixityGam _rowTypeUpdatesOgUniq :: UID _rowTypeUpdatesOidGam :: IdDefOccGam _rowTypeUpdatesOisAsPred :: Bool _rowTypeUpdatesOnmLev :: NmLev _rowTypeUpdatesOopts :: EHCOpts _rowTypeUpdatesOpatchEhNmInInstance :: PatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam _rowTypeUpdatesIeh :: ([EH.TyExpr -> EH.TyExpr]) _rowTypeUpdatesIehMbAsPrL :: ([Maybe EH.PrExpr]) _rowTypeUpdatesIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _rowTypeUpdatesIerrSq :: ErrSq _rowTypeUpdatesIfreeTvarS :: HsNameS _rowTypeUpdatesIgUniq :: UID _rowTypeUpdatesIidUseOccGam :: IdUseOccGam _rowTypeUpdatesIpp :: PP_Doc _rowTypeUpdatesIppL :: ([PP_Doc]) _rowTypeUpdatesIppWrap :: (PP_Doc -> PP_Doc) _rowTypeUpdatesItopInstanceNmL :: ([HsName]) _rowTypeUpdatesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 143, column 9) _pp = ppAppTop (hsnRow,mkPPAppFun hsnRowEmpty _typeIpp) _rowTypeUpdatesIppL _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 247, column 9) _eh = foldl (flip ($)) _typeIeh _rowTypeUpdatesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typeIerrSq `Seq.union` _rowTypeUpdatesIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typeIfreeTvarS `Set.union` _rowTypeUpdatesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam `gamAddGam` _rowTypeUpdatesIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap . _rowTypeUpdatesIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam `gamUnion` _rowTypeUpdatesIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _rowTypeUpdatesIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rowTypeUpdatesItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _rowTypeUpdatesOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _rowTypeUpdatesOfixityGam = _lhsIfixityGam -- copy rule (chain) _rowTypeUpdatesOgUniq = _typeIgUniq -- copy rule (down) _rowTypeUpdatesOidGam = _lhsIidGam -- copy rule (from local) _rowTypeUpdatesOisAsPred = _isAsPred -- copy rule (down) _rowTypeUpdatesOnmLev = _lhsInmLev -- copy rule (down) _rowTypeUpdatesOopts = _lhsIopts -- copy rule (down) _rowTypeUpdatesOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rowTypeUpdatesOtopInstanceNmL = _typeItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL ( _rowTypeUpdatesIeh,_rowTypeUpdatesIehMbAsPrL,_rowTypeUpdatesIehMbAsTyPrL,_rowTypeUpdatesIerrSq,_rowTypeUpdatesIfreeTvarS,_rowTypeUpdatesIgUniq,_rowTypeUpdatesIidUseOccGam,_rowTypeUpdatesIpp,_rowTypeUpdatesIppL,_rowTypeUpdatesIppWrap,_rowTypeUpdatesItopInstanceNmL,_rowTypeUpdatesIundefOccGam) = rowTypeUpdates_ _rowTypeUpdatesOdoGenVarWild _rowTypeUpdatesOfixityGam _rowTypeUpdatesOgUniq _rowTypeUpdatesOidGam _rowTypeUpdatesOisAsPred _rowTypeUpdatesOnmLev _rowTypeUpdatesOopts _rowTypeUpdatesOpatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowEmpty :: Range -> T_Type sem_Type_RowEmpty range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 146, column 9) _pp = hsnORow >|< hsnCRow -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 249, column 9) _eh = rngLift range_ EH.TyExpr_Row (rngLift range_ EH.RowTyExpr_Empty) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowRecUpdate :: Range -> T_Type -> T_RowTypeUpdates -> T_Type sem_Type_RowRecUpdate range_ type_ rowTypeUpdates_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _rowTypeUpdatesOdoGenVarWild :: Bool _rowTypeUpdatesOfixityGam :: FixityGam _rowTypeUpdatesOgUniq :: UID _rowTypeUpdatesOidGam :: IdDefOccGam _rowTypeUpdatesOisAsPred :: Bool _rowTypeUpdatesOnmLev :: NmLev _rowTypeUpdatesOopts :: EHCOpts _rowTypeUpdatesOpatchEhNmInInstance :: PatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam _rowTypeUpdatesIeh :: ([EH.TyExpr -> EH.TyExpr]) _rowTypeUpdatesIehMbAsPrL :: ([Maybe EH.PrExpr]) _rowTypeUpdatesIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _rowTypeUpdatesIerrSq :: ErrSq _rowTypeUpdatesIfreeTvarS :: HsNameS _rowTypeUpdatesIgUniq :: UID _rowTypeUpdatesIidUseOccGam :: IdUseOccGam _rowTypeUpdatesIpp :: PP_Doc _rowTypeUpdatesIppL :: ([PP_Doc]) _rowTypeUpdatesIppWrap :: (PP_Doc -> PP_Doc) _rowTypeUpdatesItopInstanceNmL :: ([HsName]) _rowTypeUpdatesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 148, column 9) _pp = ppAppTop (hsnRec,mkPPAppFun hsnRowEmpty _typeIpp) _rowTypeUpdatesIppL _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 251, column 9) _eh = foldl (\e u -> appCon1App hsnRec $ u $ ehTyExprArg $ e) _typeIeh _rowTypeUpdatesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 371, column 9) _ehMbAsPrL = _rowTypeUpdatesIehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 393, column 9) _ehMbAsTyPrL = _rowTypeUpdatesIehMbAsTyPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typeIerrSq `Seq.union` _rowTypeUpdatesIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typeIfreeTvarS `Set.union` _rowTypeUpdatesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam `gamAddGam` _rowTypeUpdatesIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap . _rowTypeUpdatesIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam `gamUnion` _rowTypeUpdatesIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _rowTypeUpdatesIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rowTypeUpdatesItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (down) _typeOisAsPred = _lhsIisAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _rowTypeUpdatesOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _rowTypeUpdatesOfixityGam = _lhsIfixityGam -- copy rule (chain) _rowTypeUpdatesOgUniq = _typeIgUniq -- copy rule (down) _rowTypeUpdatesOidGam = _lhsIidGam -- copy rule (down) _rowTypeUpdatesOisAsPred = _lhsIisAsPred -- copy rule (down) _rowTypeUpdatesOnmLev = _lhsInmLev -- copy rule (down) _rowTypeUpdatesOopts = _lhsIopts -- copy rule (down) _rowTypeUpdatesOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rowTypeUpdatesOtopInstanceNmL = _typeItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL ( _rowTypeUpdatesIeh,_rowTypeUpdatesIehMbAsPrL,_rowTypeUpdatesIehMbAsTyPrL,_rowTypeUpdatesIerrSq,_rowTypeUpdatesIfreeTvarS,_rowTypeUpdatesIgUniq,_rowTypeUpdatesIidUseOccGam,_rowTypeUpdatesIpp,_rowTypeUpdatesIppL,_rowTypeUpdatesIppWrap,_rowTypeUpdatesItopInstanceNmL,_rowTypeUpdatesIundefOccGam) = rowTypeUpdates_ _rowTypeUpdatesOdoGenVarWild _rowTypeUpdatesOfixityGam _rowTypeUpdatesOgUniq _rowTypeUpdatesOidGam _rowTypeUpdatesOisAsPred _rowTypeUpdatesOnmLev _rowTypeUpdatesOopts _rowTypeUpdatesOpatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowRecEmpty :: Range -> T_Type sem_Type_RowRecEmpty range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 151, column 9) _pp = pp hsnRec -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 253, column 9) _eh = appCon1App hsnRec $ rngLift range_ EH.TyExpr_Row (rngLift range_ EH.RowTyExpr_Empty) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowSumUpdate :: Range -> T_Type -> T_RowTypeUpdates -> T_Type sem_Type_RowSumUpdate range_ type_ rowTypeUpdates_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _rowTypeUpdatesOdoGenVarWild :: Bool _rowTypeUpdatesOfixityGam :: FixityGam _rowTypeUpdatesOgUniq :: UID _rowTypeUpdatesOidGam :: IdDefOccGam _rowTypeUpdatesOisAsPred :: Bool _rowTypeUpdatesOnmLev :: NmLev _rowTypeUpdatesOopts :: EHCOpts _rowTypeUpdatesOpatchEhNmInInstance :: PatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL :: ([HsName]) _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam _rowTypeUpdatesIeh :: ([EH.TyExpr -> EH.TyExpr]) _rowTypeUpdatesIehMbAsPrL :: ([Maybe EH.PrExpr]) _rowTypeUpdatesIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _rowTypeUpdatesIerrSq :: ErrSq _rowTypeUpdatesIfreeTvarS :: HsNameS _rowTypeUpdatesIgUniq :: UID _rowTypeUpdatesIidUseOccGam :: IdUseOccGam _rowTypeUpdatesIpp :: PP_Doc _rowTypeUpdatesIppL :: ([PP_Doc]) _rowTypeUpdatesIppWrap :: (PP_Doc -> PP_Doc) _rowTypeUpdatesItopInstanceNmL :: ([HsName]) _rowTypeUpdatesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 153, column 9) _pp = ppAppTop (hsnSum,mkPPAppFun hsnRowEmpty _typeIpp) _rowTypeUpdatesIppL _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 255, column 9) _eh = foldl (\e u -> appCon1App hsnSum $ u $ ehTyExprArg $ e) _typeIeh _rowTypeUpdatesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _typeIerrSq `Seq.union` _rowTypeUpdatesIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _typeIfreeTvarS `Set.union` _rowTypeUpdatesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _typeIidUseOccGam `gamAddGam` _rowTypeUpdatesIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _typeIppWrap . _rowTypeUpdatesIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _typeIundefOccGam `gamUnion` _rowTypeUpdatesIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _rowTypeUpdatesIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rowTypeUpdatesItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (down) _typeOgUniq = _lhsIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _typeOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _rowTypeUpdatesOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _rowTypeUpdatesOfixityGam = _lhsIfixityGam -- copy rule (chain) _rowTypeUpdatesOgUniq = _typeIgUniq -- copy rule (down) _rowTypeUpdatesOidGam = _lhsIidGam -- copy rule (from local) _rowTypeUpdatesOisAsPred = _isAsPred -- copy rule (down) _rowTypeUpdatesOnmLev = _lhsInmLev -- copy rule (down) _rowTypeUpdatesOopts = _lhsIopts -- copy rule (down) _rowTypeUpdatesOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rowTypeUpdatesOtopInstanceNmL = _typeItopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL ( _rowTypeUpdatesIeh,_rowTypeUpdatesIehMbAsPrL,_rowTypeUpdatesIehMbAsTyPrL,_rowTypeUpdatesIerrSq,_rowTypeUpdatesIfreeTvarS,_rowTypeUpdatesIgUniq,_rowTypeUpdatesIidUseOccGam,_rowTypeUpdatesIpp,_rowTypeUpdatesIppL,_rowTypeUpdatesIppWrap,_rowTypeUpdatesItopInstanceNmL,_rowTypeUpdatesIundefOccGam) = rowTypeUpdates_ _rowTypeUpdatesOdoGenVarWild _rowTypeUpdatesOfixityGam _rowTypeUpdatesOgUniq _rowTypeUpdatesOidGam _rowTypeUpdatesOisAsPred _rowTypeUpdatesOnmLev _rowTypeUpdatesOopts _rowTypeUpdatesOpatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowSumEmpty :: Range -> T_Type sem_Type_RowSumEmpty range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 156, column 9) _pp = pp hsnSum -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 257, column 9) _eh = appCon1App hsnSum $ rngLift range_ EH.TyExpr_Row (rngLift range_ EH.RowTyExpr_Empty) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Qualified :: Range -> T_ContextItems -> T_Type -> T_Type sem_Type_Qualified range_ context_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextIundefOccGam :: IdUseOccGam _typeIconNm :: Name _typeIeh :: (EH.TyExpr) _typeIehMbAsPr :: (Maybe EH.PrExpr) _typeIehMbAsPrL :: ([Maybe EH.PrExpr]) _typeIehMbAsTyPr :: (Maybe EH.TyExpr) _typeIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _typeIerrSq :: ErrSq _typeIfreeTvarS :: HsNameS _typeIgUniq :: UID _typeIidUseOccGam :: IdUseOccGam _typeImbRefConNm :: (Maybe Name) _typeIopChain :: (OpChain EH.TyExpr) _typeIoperatorName :: MaybeName _typeIpp :: PP_Doc _typeIppWrap :: (PP_Doc -> PP_Doc) _typeItopInstanceNmL :: ([HsName]) _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 158, column 9) _pp = _contextIpp >#< "=>" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 259, column 9) _eh = foldr app1Arr _typeIeh _contextIehTy -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _contextIerrSq `Seq.union` _typeIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _contextIfreeTvarS `Set.union` _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _contextIidUseOccGam `gamAddGam` _typeIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _contextIppWrap . _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _contextIundefOccGam `gamUnion` _typeIundefOccGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (up) _lhsOgUniq = _typeIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _contextOfixityGam = _lhsIfixityGam -- copy rule (down) _contextOgUniq = _lhsIgUniq -- copy rule (down) _contextOidGam = _lhsIidGam -- copy rule (down) _contextOnmLev = _lhsInmLev -- copy rule (down) _contextOopts = _lhsIopts -- copy rule (down) _contextOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _contextOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _typeOdoGenVarWild = _lhsIdoGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (chain) _typeOgUniq = _contextIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- copy rule (from local) _typeOisAsPred = _isAsPred -- copy rule (down) _typeOnmLev = _lhsInmLev -- copy rule (down) _typeOopts = _lhsIopts -- copy rule (down) _typeOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _typeOtopInstanceNmL = _contextItopInstanceNmL ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_TupleConstructor :: Range -> Int -> T_Type sem_Type_TupleConstructor range_ arity_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.TyExpr) _lhsOmbRefConNm :: (Maybe Name) _lhsOtyConIs :: TypeConFixedMeaning _lhsOehMbAsPrL :: ([Maybe EH.PrExpr]) _lhsOehMbAsTyPrL :: ([Maybe EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExpr) _lhsOehMbAsPr :: (Maybe EH.PrExpr) _lhsOehMbAsTyPr :: (Maybe EH.TyExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 259, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 52, column 9) _lhsOoperatorName = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Fixity.ag"(line 118, column 9) _lhsOopChain = OpChain_Leaf _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 261, column 9) _eh = ehTupleConstructor range_ arity_ EH.TyExpr_Var (rngAntilift id) EH.TyExpr_Lam (\ps r -> r) (rngAntilift $ \row -> appCon1App hsnRec (rngLift range_ EH.TyExpr_Row row)) EH.RowTyExpr_Ext EH.RowTyExpr_Empty -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 365, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 375, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 387, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 397, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 138, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 158, column 9) _lhsOtyConIs = TyConIsOther -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 367, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 389, column 46) _lhsOehMbAsTyPrL = _ehMbAsTyPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (from local) _lhsOehMbAsPr = _ehMbAsPr -- copy rule (from local) _lhsOehMbAsTyPr = _ehMbAsTyPr -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtyConIs,_lhsOundefOccGam))) -- TypeAnnotation ---------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.TyExprAnn errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Strict: visit 0: local ppWrap : _ local eh : _ alternative AnnotationName: child name : {Name} visit 0: local eh : _ alternative AnnotationVar: child name : {Name} child var : {Name} visit 0: local eh : _ -} -- cata sem_TypeAnnotation :: TypeAnnotation -> T_TypeAnnotation sem_TypeAnnotation (TypeAnnotation_Strict) = (sem_TypeAnnotation_Strict) sem_TypeAnnotation (TypeAnnotation_AnnotationName _name) = (sem_TypeAnnotation_AnnotationName _name) sem_TypeAnnotation (TypeAnnotation_AnnotationVar _name _var) = (sem_TypeAnnotation_AnnotationVar _name _var) -- semantic domain type T_TypeAnnotation = FixityGam -> UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.TyExprAnn),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_TypeAnnotation_Strict :: T_TypeAnnotation sem_TypeAnnotation_Strict = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 376, column 9) _ppWrap = \t -> "!" >|< t -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 887, column 9) _eh = EH.TyExprAnn_Strictness (Strictness_Strict) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _ppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_TypeAnnotation_AnnotationName :: Name -> T_TypeAnnotation sem_TypeAnnotation_AnnotationName name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 889, column 9) _eh = case show name_ of "strict" -> EH.TyExprAnn_Strictness (Strictness_Strict) "nonStrict" -> EH.TyExprAnn_Strictness (Strictness_NonStrict) _ -> EH.TyExprAnn_Empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_TypeAnnotation_AnnotationVar :: Name -> Name -> T_TypeAnnotation sem_TypeAnnotation_AnnotationVar name_ var_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 894, column 9) _eh = case show name_ of "strictness" -> EH.TyExprAnn_Strictness (Strictness_Var var_) _ -> EH.TyExprAnn_Empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (from local) _lhsOeh = _eh -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) -- TypeLeftHandSide -------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.TyVar] errSq : ErrSq freeTvarS : HsNameS idDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam name : Name pp : PP_Doc ppWrap : PP_Doc -> PP_Doc range : Range typevariables : Names undefOccGam : IdUseOccGam alternatives: alternative Function: child range : {Range} child name : {Name} child patterns : TypePatterns visit 0: local pp : _ alternative Infix: child range : {Range} child leftPattern : TypePattern child operator : {Name} child rightPattern : TypePattern visit 0: local pp : _ alternative Parenthesized: child range : {Range} child lefthandside : TypeLeftHandSide child patterns : TypePatterns visit 0: local pp : _ -} -- cata sem_TypeLeftHandSide :: TypeLeftHandSide -> T_TypeLeftHandSide sem_TypeLeftHandSide (TypeLeftHandSide_Function _range _name _patterns) = (sem_TypeLeftHandSide_Function _range _name (sem_TypePatterns _patterns)) sem_TypeLeftHandSide (TypeLeftHandSide_Infix _range _leftPattern _operator _rightPattern) = (sem_TypeLeftHandSide_Infix _range (sem_TypePattern _leftPattern) _operator (sem_TypePattern _rightPattern)) sem_TypeLeftHandSide (TypeLeftHandSide_Parenthesized _range _lefthandside _patterns) = (sem_TypeLeftHandSide_Parenthesized _range (sem_TypeLeftHandSide _lefthandside) (sem_TypePatterns _patterns)) -- semantic domain type T_TypeLeftHandSide = FixityGam -> UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.TyVar]),ErrSq,HsNameS,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,Name,PP_Doc,(PP_Doc -> PP_Doc),Range,([HsName]),Names,IdUseOccGam) sem_TypeLeftHandSide_Function :: Range -> Name -> T_TypePatterns -> T_TypeLeftHandSide sem_TypeLeftHandSide_Function range_ name_ patterns_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOrange :: Range _lhsOname :: Name _lhsOeh :: ([EH.TyVar]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtypevariables :: Names _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsIeh :: ([EH.TyVar]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsItypevariables :: Names _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 205, column 9) _lhsOrange = range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 205, column 9) _lhsOname = name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 333, column 9) _pp = name_ >#< ppSpaces _patternsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 773, column 9) _lhsOeh = rngLift range_ EH.TyVar_Var name_ : _patternsIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _patternsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _patternsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _patternsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 201, column 25) _lhsOtypevariables = _patternsItypevariables -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _patternsIundefOccGam -- copy rule (up) _lhsOgUniq = _patternsIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _patternsItopInstanceNmL -- copy rule (down) _patternsOgUniq = _lhsIgUniq -- copy rule (down) _patternsOidGam = _lhsIidGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternsOnmLev = _lhsInmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _patternsOtopInstanceNmL = _lhsItopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItypevariables,_patternsIundefOccGam) = patterns_ _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOname,_lhsOpp,_lhsOppWrap,_lhsOrange,_lhsOtopInstanceNmL,_lhsOtypevariables,_lhsOundefOccGam))) sem_TypeLeftHandSide_Infix :: Range -> T_TypePattern -> Name -> T_TypePattern -> T_TypeLeftHandSide sem_TypeLeftHandSide_Infix range_ leftPattern_ operator_ rightPattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOrange :: Range _lhsOname :: Name _lhsOeh :: ([EH.TyVar]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtypevariables :: Names _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftPatternOgUniq :: UID _leftPatternOidGam :: IdDefOccGam _leftPatternOmoduleNm :: HsName _leftPatternOnmLev :: NmLev _leftPatternOopts :: EHCOpts _leftPatternOpatchEhNmInInstance :: PatchEhNmInInstance _leftPatternOtopInstanceNmL :: ([HsName]) _rightPatternOgUniq :: UID _rightPatternOidGam :: IdDefOccGam _rightPatternOmoduleNm :: HsName _rightPatternOnmLev :: NmLev _rightPatternOopts :: EHCOpts _rightPatternOpatchEhNmInInstance :: PatchEhNmInInstance _rightPatternOtopInstanceNmL :: ([HsName]) _leftPatternIeh :: (EH.TyVar) _leftPatternIerrSq :: ErrSq _leftPatternIgUniq :: UID _leftPatternIidUseOccGam :: IdUseOccGam _leftPatternIpp :: PP_Doc _leftPatternIppWrap :: (PP_Doc -> PP_Doc) _leftPatternItopInstanceNmL :: ([HsName]) _leftPatternItypevariables :: Names _leftPatternIundefOccGam :: IdUseOccGam _rightPatternIeh :: (EH.TyVar) _rightPatternIerrSq :: ErrSq _rightPatternIgUniq :: UID _rightPatternIidUseOccGam :: IdUseOccGam _rightPatternIpp :: PP_Doc _rightPatternIppWrap :: (PP_Doc -> PP_Doc) _rightPatternItopInstanceNmL :: ([HsName]) _rightPatternItypevariables :: Names _rightPatternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 208, column 9) _lhsOrange = range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 208, column 9) _lhsOname = operator_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 335, column 9) _pp = _leftPatternIpp >#< operator_ >#< _rightPatternIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 775, column 9) _lhsOeh = [ rngLift range_ EH.TyVar_Var operator_ , _leftPatternIeh , _rightPatternIeh ] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _leftPatternIerrSq `Seq.union` _rightPatternIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _leftPatternIidUseOccGam `gamAddGam` _rightPatternIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _leftPatternIppWrap . _rightPatternIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 201, column 25) _lhsOtypevariables = _leftPatternItypevariables ++ _rightPatternItypevariables -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _leftPatternIundefOccGam `gamUnion` _rightPatternIundefOccGam -- copy rule (up) _lhsOgUniq = _rightPatternIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _rightPatternItopInstanceNmL -- copy rule (down) _leftPatternOgUniq = _lhsIgUniq -- copy rule (down) _leftPatternOidGam = _lhsIidGam -- copy rule (down) _leftPatternOmoduleNm = _lhsImoduleNm -- copy rule (down) _leftPatternOnmLev = _lhsInmLev -- copy rule (down) _leftPatternOopts = _lhsIopts -- copy rule (down) _leftPatternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _leftPatternOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (chain) _rightPatternOgUniq = _leftPatternIgUniq -- copy rule (down) _rightPatternOidGam = _lhsIidGam -- copy rule (down) _rightPatternOmoduleNm = _lhsImoduleNm -- copy rule (down) _rightPatternOnmLev = _lhsInmLev -- copy rule (down) _rightPatternOopts = _lhsIopts -- copy rule (down) _rightPatternOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _rightPatternOtopInstanceNmL = _leftPatternItopInstanceNmL ( _leftPatternIeh,_leftPatternIerrSq,_leftPatternIgUniq,_leftPatternIidUseOccGam,_leftPatternIpp,_leftPatternIppWrap,_leftPatternItopInstanceNmL,_leftPatternItypevariables,_leftPatternIundefOccGam) = leftPattern_ _leftPatternOgUniq _leftPatternOidGam _leftPatternOmoduleNm _leftPatternOnmLev _leftPatternOopts _leftPatternOpatchEhNmInInstance _leftPatternOtopInstanceNmL ( _rightPatternIeh,_rightPatternIerrSq,_rightPatternIgUniq,_rightPatternIidUseOccGam,_rightPatternIpp,_rightPatternIppWrap,_rightPatternItopInstanceNmL,_rightPatternItypevariables,_rightPatternIundefOccGam) = rightPattern_ _rightPatternOgUniq _rightPatternOidGam _rightPatternOmoduleNm _rightPatternOnmLev _rightPatternOopts _rightPatternOpatchEhNmInInstance _rightPatternOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOname,_lhsOpp,_lhsOppWrap,_lhsOrange,_lhsOtopInstanceNmL,_lhsOtypevariables,_lhsOundefOccGam))) sem_TypeLeftHandSide_Parenthesized :: Range -> T_TypeLeftHandSide -> T_TypePatterns -> T_TypeLeftHandSide sem_TypeLeftHandSide_Parenthesized range_ lefthandside_ patterns_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOeh :: ([EH.TyVar]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtypevariables :: Names _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOname :: Name _lhsOrange :: Range _lhsOtopInstanceNmL :: ([HsName]) _lefthandsideOfixityGam :: FixityGam _lefthandsideOgUniq :: UID _lefthandsideOidGam :: IdDefOccGam _lefthandsideOmoduleNm :: HsName _lefthandsideOnmLev :: NmLev _lefthandsideOopts :: EHCOpts _lefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _lefthandsideOtopInstanceNmL :: ([HsName]) _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _lefthandsideIeh :: ([EH.TyVar]) _lefthandsideIerrSq :: ErrSq _lefthandsideIfreeTvarS :: HsNameS _lefthandsideIgUniq :: UID _lefthandsideIidDefOccGam :: IdDefOccGam _lefthandsideIidOccDefs :: ([IdOcc]) _lefthandsideIidUseOccGam :: IdUseOccGam _lefthandsideIname :: Name _lefthandsideIpp :: PP_Doc _lefthandsideIppWrap :: (PP_Doc -> PP_Doc) _lefthandsideIrange :: Range _lefthandsideItopInstanceNmL :: ([HsName]) _lefthandsideItypevariables :: Names _lefthandsideIundefOccGam :: IdUseOccGam _patternsIeh :: ([EH.TyVar]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsItypevariables :: Names _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 337, column 9) _pp = ppParens _lefthandsideIpp >#< ppSpaces _patternsIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 780, column 9) _lhsOeh = _lefthandsideIeh ++ _patternsIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _lefthandsideIerrSq `Seq.union` _patternsIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _lefthandsideIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 129, column 23) _lhsOidDefOccGam = _lefthandsideIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 109, column 21) _lhsOidOccDefs = _lefthandsideIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _lefthandsideIidUseOccGam `gamAddGam` _patternsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _lefthandsideIppWrap . _patternsIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 201, column 25) _lhsOtypevariables = _lefthandsideItypevariables ++ _patternsItypevariables -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _lefthandsideIundefOccGam `gamUnion` _patternsIundefOccGam -- copy rule (up) _lhsOgUniq = _patternsIgUniq -- copy rule (up) _lhsOname = _lefthandsideIname -- copy rule (up) _lhsOrange = _lefthandsideIrange -- copy rule (up) _lhsOtopInstanceNmL = _patternsItopInstanceNmL -- copy rule (down) _lefthandsideOfixityGam = _lhsIfixityGam -- copy rule (down) _lefthandsideOgUniq = _lhsIgUniq -- copy rule (down) _lefthandsideOidGam = _lhsIidGam -- copy rule (down) _lefthandsideOmoduleNm = _lhsImoduleNm -- copy rule (down) _lefthandsideOnmLev = _lhsInmLev -- copy rule (down) _lefthandsideOopts = _lhsIopts -- copy rule (down) _lefthandsideOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _lefthandsideOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (chain) _patternsOgUniq = _lefthandsideIgUniq -- copy rule (down) _patternsOidGam = _lhsIidGam -- copy rule (down) _patternsOmoduleNm = _lhsImoduleNm -- copy rule (down) _patternsOnmLev = _lhsInmLev -- copy rule (down) _patternsOopts = _lhsIopts -- copy rule (down) _patternsOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _patternsOtopInstanceNmL = _lefthandsideItopInstanceNmL ( _lefthandsideIeh,_lefthandsideIerrSq,_lefthandsideIfreeTvarS,_lefthandsideIgUniq,_lefthandsideIidDefOccGam,_lefthandsideIidOccDefs,_lefthandsideIidUseOccGam,_lefthandsideIname,_lefthandsideIpp,_lefthandsideIppWrap,_lefthandsideIrange,_lefthandsideItopInstanceNmL,_lefthandsideItypevariables,_lefthandsideIundefOccGam) = lefthandside_ _lefthandsideOfixityGam _lefthandsideOgUniq _lefthandsideOidGam _lefthandsideOmoduleNm _lefthandsideOnmLev _lefthandsideOopts _lefthandsideOpatchEhNmInInstance _lefthandsideOtopInstanceNmL ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItypevariables,_patternsIundefOccGam) = patterns_ _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOname,_lhsOpp,_lhsOppWrap,_lhsOrange,_lhsOtopInstanceNmL,_lhsOtypevariables,_lhsOundefOccGam))) -- TypePattern ------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.TyVar errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc typevariables : Names undefOccGam : IdUseOccGam alternatives: alternative Variable: child range : {Range} child name : {Name} visit 0: local refname : _ local pp : _ -} -- cata sem_TypePattern :: TypePattern -> T_TypePattern sem_TypePattern (TypePattern_Variable _range _name) = (sem_TypePattern_Variable _range _name) -- semantic domain type T_TypePattern = UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( (EH.TyVar),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),Names,IdUseOccGam) sem_TypePattern_Variable :: Range -> Name -> T_TypePattern sem_TypePattern_Variable range_ name_ = (\ _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOtypevariables :: Names _lhsOeh :: (EH.TyVar) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 58, column 9) _refname = hsnSetLevQual _lhsInmLev _lhsImoduleNm name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 213, column 9) _lhsOtypevariables = [name_] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 380, column 9) _pp = pp name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 860, column 9) _lhsOeh = rngLift range_ EH.TyVar_Var _refname -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _pp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtypevariables,_lhsOundefOccGam))) -- TypePatterns ------------------------------------------------ {- visit 0: inherited attributes: idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.TyVar] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc typevariables : Names undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : TypePattern child tl : TypePatterns alternative Nil: -} -- cata sem_TypePatterns :: TypePatterns -> T_TypePatterns sem_TypePatterns list = (Prelude.foldr sem_TypePatterns_Cons sem_TypePatterns_Nil (Prelude.map sem_TypePattern list)) -- semantic domain type T_TypePatterns = UID -> IdDefOccGam -> HsName -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.TyVar]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),Names,IdUseOccGam) sem_TypePatterns_Cons :: T_TypePattern -> T_TypePatterns -> T_TypePatterns sem_TypePatterns_Cons hd_ tl_ = (\ _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyVar]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtypevariables :: Names _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIeh :: (EH.TyVar) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItypevariables :: Names _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.TyVar]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItypevariables :: Names _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 440, column 9) _lhsOppL = _hdIpp : _tlIppL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 854, column 28) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 201, column 25) _lhsOtypevariables = _hdItypevariables ++ _tlItypevariables -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItypevariables,_hdIundefOccGam) = hd_ _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItypevariables,_tlIundefOccGam) = tl_ _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtypevariables,_lhsOundefOccGam))) sem_TypePatterns_Nil :: T_TypePatterns sem_TypePatterns_Nil = (\ _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyVar]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtypevariables :: Names _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 442, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 854, column 28) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 201, column 25) _lhsOtypevariables = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtypevariables,_lhsOundefOccGam))) -- Types ------------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isAsPred : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.TyExpr] errSq : ErrSq freeTvarS : HsNameS idUseOccGam : IdUseOccGam pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc undefOccGam : IdUseOccGam alternatives: alternative Cons: child hd : Type child tl : Types visit 0: local doGenVarWild : _ alternative Nil: -} -- cata sem_Types :: Types -> T_Types sem_Types list = (Prelude.foldr sem_Types_Cons sem_Types_Nil (Prelude.map sem_Type list)) -- semantic domain type T_Types = FixityGam -> UID -> IdDefOccGam -> Bool -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> ( ([EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),IdUseOccGam) sem_Types_Cons :: T_Type -> T_Types -> T_Types sem_Types_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOdoGenVarWild :: Bool _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOisAsPred :: Bool _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisAsPred :: Bool _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _hdIconNm :: Name _hdIeh :: (EH.TyExpr) _hdIehMbAsPr :: (Maybe EH.PrExpr) _hdIehMbAsPrL :: ([Maybe EH.PrExpr]) _hdIehMbAsTyPr :: (Maybe EH.TyExpr) _hdIehMbAsTyPrL :: ([Maybe EH.TyExpr]) _hdIerrSq :: ErrSq _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdImbRefConNm :: (Maybe Name) _hdIopChain :: (OpChain EH.TyExpr) _hdIoperatorName :: MaybeName _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItyConIs :: TypeConFixedMeaning _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.TyExpr]) _tlIerrSq :: ErrSq _tlIfreeTvarS :: HsNameS _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 414, column 9) _lhsOppL = _hdIpp : _tlIppL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 210, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 197, column 21) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = _hdIerrSq `Seq.union` _tlIerrSq -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = _hdIpp >-< _tlIpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = _hdIppWrap . _tlIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = _hdIundefOccGam `gamUnion` _tlIundefOccGam -- copy rule (up) _lhsOgUniq = _tlIgUniq -- copy rule (up) _lhsOtopInstanceNmL = _tlItopInstanceNmL -- copy rule (from local) _hdOdoGenVarWild = _doGenVarWild -- copy rule (down) _hdOfixityGam = _lhsIfixityGam -- copy rule (down) _hdOgUniq = _lhsIgUniq -- copy rule (down) _hdOidGam = _lhsIidGam -- copy rule (down) _hdOisAsPred = _lhsIisAsPred -- copy rule (down) _hdOnmLev = _lhsInmLev -- copy rule (down) _hdOopts = _lhsIopts -- copy rule (down) _hdOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (down) _hdOtopInstanceNmL = _lhsItopInstanceNmL -- copy rule (down) _tlOfixityGam = _lhsIfixityGam -- copy rule (chain) _tlOgUniq = _hdIgUniq -- copy rule (down) _tlOidGam = _lhsIidGam -- copy rule (down) _tlOisAsPred = _lhsIisAsPred -- copy rule (down) _tlOnmLev = _lhsInmLev -- copy rule (down) _tlOopts = _lhsIopts -- copy rule (down) _tlOpatchEhNmInInstance = _lhsIpatchEhNmInInstance -- copy rule (chain) _tlOtopInstanceNmL = _hdItopInstanceNmL ( _hdIconNm,_hdIeh,_hdIehMbAsPr,_hdIehMbAsPrL,_hdIehMbAsTyPr,_hdIehMbAsTyPrL,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdImbRefConNm,_hdIopChain,_hdIoperatorName,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItyConIs,_hdIundefOccGam) = hd_ _hdOdoGenVarWild _hdOfixityGam _hdOgUniq _hdOidGam _hdOisAsPred _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL ( _tlIeh,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOisAsPred _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam))) sem_Types_Nil :: T_Types sem_Types_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 416, column 9) _lhsOppL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 197, column 21) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 1, column 30) _lhsOerrSq = Seq.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 118, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 1, column 27) _lhsOpp = empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 3, column 31) _lhsOppWrap = const empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 729, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOundefOccGam)))