-- UUAGC 0.9.52.1 (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 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 Data.Char import Data.Maybe import Data.List as List import qualified Data.Map as Map import UHC.Light.Compiler.Base.UnderDev import qualified UHC.Util.FastSeq as Seq import UHC.Util.Utils import UHC.Util.Pretty import UHC.Util.DependencyGraph import qualified UHC.Light.Compiler.EH as EH import UHC.Light.Compiler.Base.Trace 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 qualified UHC.Light.Compiler.Base.Pragma as Pragma -- | A name is used/occurs in a non plain context when their defs are to participate in the analysis on the same level as the context they occur in data NameDeclCxt = NameDeclCxt_Plain | NameDeclCxt_Instance | NameDeclCxt_Class deriving Eq 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' :: Bool -> Int -> IdUseOccGam -> (IdUseOccGam, IdUseOccAsc, IdUseOccAsc, IdUseOccGam) splitIdUseOccGam' delayHere level g = (assocDupLToGam o,h,i,assocDupLToGam e) where -- minLev = minimum levels -- maxLev = maximum levels (o,h,i,e) = foldr (\x@(k,occs) (o,h,i,e) -> case partition (idIsDef . uoccIsDef) occs of (occ:_,[]) -> {- if defLev < minLev then (x:o, h, i, e) else if defLev > maxLev then ( o, h,x:i, e) else ( o,x:h, i, e) -} case compare defLev level of LT -> (x:o, h, i, e) EQ | delayHere -> (x:o, h, i, e) | otherwise -> ( o,x:h, i, e) GT -> ( o, h,x:i, e) where defLev = idIsDefLev $ uoccIsDef $ occ (_,(_:_)) -> ( o, h, i,x:e) ) ([],[],[],[]) (gamToAssocDupL g) splitIdUseOccGam :: Int -> IdUseOccGam -> (IdUseOccGam, IdUseOccAsc, IdUseOccAsc, IdUseOccGam) splitIdUseOccGam level g = splitIdUseOccGam' False 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 -- | Variation which uses default aspects for IdOccKind mkUseOccGamDfltAsp :: EHCOpts -> IdDefOccGam -> [(HsName,IdOccKind)] -> Range -> (HsName,[HsName],IdUseOccGam,[Err]) mkUseOccGamDfltAsp opts idGam nmKs rng = mkUseOccGam' opts idGam [ ([n], k, fromMaybe IdAsp_Any $ mbUseAspOfIdOccKind k) | (n,k) <- nmKs ] 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] emptyIdDpdMp :: IdDpdMp emptyIdDpdMp = Map.empty idDpdMpList :: IdOcc -> [IdOcc] -> IdDpdMp idDpdMpList f t = Map.singleton f t idDpdMpSingleton :: IdOcc -> IdOcc -> IdDpdMp idDpdMpSingleton f t = idDpdMpList 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 [ idDpdMpList f ts | f <- fs ] where ts = assocLKeys l idToOccGam2DpdMp :: [IdOcc] -> Gam IdOcc x -> IdDpdMp idToOccGam2DpdMp fs l = idToOccL2DpdMp fs (gamToAssocL l) -- | Dpd mp where 'g' dpds on 'ts' idFrOccGam2DpdMp :: Gam IdOcc x -> [IdOcc] -> IdDpdMp idFrOccGam2DpdMp g ts = if null ts then Map.empty else idDpdMpUnions [ idDpdMpList f ts | (f,_) <- gamToAssocL g ] idDpdMp2SccOrder' :: IdDefOccGam -> IdDpdMp -> ([[IdOcc]],IdDpdMp) idDpdMp2SccOrder' gam mp = (dgSCCToList gr, dpmp) where dflt = idDpdMpUnions [ idDpdMpSingleton o o | o <- gamKeys gam ] `Map.difference` mp dpmp = idDpdMpUnions [mp,dflt] gr = mkDpdGrFromEdgesMp dpmp idDpdMp2SccOrder :: IdDefOccGam -> IdDpdMp -> [[IdOcc]] idDpdMp2SccOrder gam mp = fst $ idDpdMp2SccOrder' gam mp 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 :: EHCOpts -> [IdDefOcc] -> [[IdDefOcc]] splitOff opts = foldr (\df dfs -> zipWith (++) (s df) dfs) (repeat []) where s d = case doccAsp d of (IdAsp_Inst_Def _ _) | not (ehcOptIsUnderDev UnderDev_NameAnalysis opts) -> [[],[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 :: EHCOpts -> Range -> Bool -> IdDefOccGam -> Maybe [[IdOcc]] -> (EH.Expr -> EH.Expr,[[EH.Decl]],[Err]) mkIdOccSccEH opts 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 opts $ 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 deriving instance Typeable Syn_AGItf 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 trpp : TrPP alternatives: alternative AGItf: child module : Module visit 0: local tr : _ 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),TrPP) 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)),trpp_Syn_AGItf :: !(TrPP)} 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,_lhsOtrpp) = sem _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisTopMod _lhsImodEntToOrig _lhsImodInScope _lhsImoduleNm _lhsIopts _lhsItopInstanceNmL in (Syn_AGItf _lhsOeh _lhsOerrSq _lhsOfileHeaderPragmas _lhsOgathFixityGam _lhsOgathIdGam _lhsOmainValExists _lhsOpp _lhsOppWrap _lhsOtrpp)) 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) _lhsOtrpp :: TrPP _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]) _moduleOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _moduleItrpp :: TrPP _moduleIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 7, column 9) _tr = trPP (`Set.member` ehcOptTraceOn _lhsIopts) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1252, 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 259, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _moduleItrpp -- 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 -- copy rule (from local) _moduleOtr = _tr ( _moduleIeh,_moduleIerrSq,_moduleIfileHeaderPragmas,_moduleIgUniq,_moduleIgathFixityGam,_moduleIgathIdGam,_moduleIidUseOccGam,_moduleImainValExists,_moduleIpp,_moduleIppWrap,_moduleItopInstanceNmL,_moduleItrpp,_moduleIundefOccGam) = module_ _moduleOfixityGam _moduleOgUniq _moduleOidGam _moduleOisMainMod _moduleOisTopMod _moduleOmodEntToOrig _moduleOmodInScope _moduleOmoduleNm _moduleOnmLev _moduleOopts _moduleOpatchEhNmInInstance _moduleOtopInstanceNmL _moduleOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfileHeaderPragmas,_lhsOgathFixityGam,_lhsOgathIdGam,_lhsOmainValExists,_lhsOpp,_lhsOppWrap,_lhsOtrpp))) -- 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 tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.CaseAlt] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.CaseAlt]),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _righthandsideOidGam :: IdDefOccGam _righthandsideOsepPP :: PP_Doc _lhsOeh :: ([EH.CaseAlt]) _righthandsideOmustBeMono :: Bool _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _righthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _patternIundefOccGam :: IdUseOccGam _righthandsideIeh :: (EH.Expr) _righthandsideIerrSq :: ErrSq _righthandsideIgUniq :: UID _righthandsideIidUseOccGam :: IdUseOccGam _righthandsideIpp :: PP_Doc _righthandsideIppWrap :: (PP_Doc -> PP_Doc) _righthandsideItopInstanceNmL :: ([HsName]) _righthandsideItrpp :: TrPP _righthandsideIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 465, 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 94, 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 626, column 9) _lhsOeh = [EH.mkAlt range_ _patternIeh _righthandsideIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 289, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp >< _righthandsideItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _patternOtr = _lhsItr -- 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 -- copy rule (down) _righthandsideOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr ( _righthandsideIeh,_righthandsideIerrSq,_righthandsideIgUniq,_righthandsideIidUseOccGam,_righthandsideIpp,_righthandsideIppWrap,_righthandsideItopInstanceNmL,_righthandsideItrpp,_righthandsideIundefOccGam) = righthandside_ _righthandsideOcaseId _righthandsideOfixityGam _righthandsideOgUniq _righthandsideOgenerDerivMp _righthandsideOidGam _righthandsideOmoduleNm _righthandsideOmustBeMono _righthandsideOnmLev _righthandsideOopts _righthandsideOpatchEhNmInInstance _righthandsideOpragmas _righthandsideOsepPP _righthandsideOtopInstanceNmL _righthandsideOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Alternative_Empty :: Range -> T_Alternative sem_Alternative_Empty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.CaseAlt]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 628, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.CaseAlt] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.CaseAlt]),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOeh :: ([EH.CaseAlt]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: ([EH.CaseAlt]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.CaseAlt]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 620, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Alternatives_Nil :: T_Alternatives sem_Alternatives_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.CaseAlt]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 620, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP undefOccGam : IdUseOccGam alternatives: alternative Body: child range : {Range} child importdeclarations : ImportDeclarations child declarations : Declarations visit 0: local trpp : _ local nameDeclCxt : _ local idDefOccGamMain : _ local idGam : _ local mainrefname : _ local mainrefnames : _ local idUseOccGamMain : _ local errIdUse : _ local idUseHereOccL : _ local undefOccGamMain : _ local idDpdMp : _ local mainValExists : _ local sccOrder : _ local sccOrderDpdMp : _ 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.Expr),ErrSq,([ModImp]),UID,FixityGam,IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _declarationsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _lhsOundefOccGam :: IdUseOccGam _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _declarationsOfixityGam :: FixityGam _lhsOeh :: (EH.Expr) _lhsOgathIdGam :: IdDefOccGam _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _importdeclarationsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _declarationsOcaseId :: UID _declarationsOgUniq :: UID _declarationsOidGam :: IdDefOccGam _declarationsOmoduleNm :: HsName _declarationsOnameDeclCxt :: NameDeclCxt _declarationsOnmLev :: NmLev _declarationsOopts :: EHCOpts _declarationsOpatchEhNmInInstance :: PatchEhNmInInstance _declarationsOpragmas :: (Set.Set Pragma.Pragma) _declarationsOtopInstanceNmL :: ([HsName]) _declarationsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _importdeclarationsIerrSq :: ErrSq _importdeclarationsIgUniq :: UID _importdeclarationsIgathFixityGam :: FixityGam _importdeclarationsIidUseOccGam :: IdUseOccGam _importdeclarationsImodAsMp :: (Map.Map HsName HsName) _importdeclarationsIpp :: PP_Doc _importdeclarationsIppWrap :: (PP_Doc -> PP_Doc) _importdeclarationsItopInstanceNmL :: ([HsName]) _importdeclarationsItrpp :: TrPP _importdeclarationsIundefOccGam :: IdUseOccGam _declarationsIeh :: ([EH.Decl]) _declarationsIerrSq :: ErrSq _declarationsIgUniq :: UID _declarationsIgathFixityGam :: FixityGam _declarationsIgathPragmas :: (Set.Set Pragma.Pragma) _declarationsIidDefOccGam :: IdDefOccGam _declarationsIidDpdMp :: IdDpdMp _declarationsIidInClassTySigDefOccGam :: IdDefOccGam _declarationsIidInInstanceValDefOccGam :: IdDefOccGam _declarationsIidOccDefs :: ([IdOcc]) _declarationsIidUseOccGam :: IdUseOccGam _declarationsIneedsError :: Bool _declarationsIpp :: PP_Doc _declarationsIppWrap :: (PP_Doc -> PP_Doc) _declarationsItopInstanceNmL :: ([HsName]) _declarationsItrpp :: TrPP _declarationsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 11, column 9) _trpp = (_lhsItr TraceOn_HsDpd $ [pp "Body: sccOrderDpdMp"] ++ [ fr >|< ":" >#< vlist to | (fr,to) <- Map.toList _sccOrderDpdMp ]) >< (_lhsItr TraceOn_HsScc $ [pp "Body: sccOrder"] ++ map (ppBracketsCommas) _sccOrder) >< _importdeclarationsItrpp >< _declarationsItrpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDeclCxt.ag"(line 25, column 9) _nameDeclCxt = NameDeclCxt_Plain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 5, column 9) _declarationsOgenerDerivMp = let nm | ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts = id | otherwise = hsnSetLevQual _lhsInmLev _lhsImoduleNm in Map.unionsWith (++) [ Map.singleton clNm' [( nm fldNm,nm dfltNm)] | (Pragma.Pragma_Derivable clNm fldNm dfltNm) <- Set.toList _pragmas , let clNm' = nm clNm ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 317, 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 366, 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 738, 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 1010, column 29) (_,_idUseHereOccL,_,_undefOccGamMain) = splitIdUseOccGam _lhsInmLev _idUseOccGamMain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1015, 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 1020, 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 1040, 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 1069, column 29) (_sccOrder,_sccOrderDpdMp) = idDpdMp2SccOrder' (_idDefOccGamMain `gamUnion` _declarationsIidDefOccGam) _idDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1200, column 29) (_mkSccLet,_,_errReorder) = let g = if _lhsIisMainMod then _idDefOccGamMain else emptyGam in mkIdOccSccEH _lhsIopts range_ False (g `gamUnion` _declarationsIidDefOccGam) (Just _sccOrder) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1240, 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 186, column 9) _idOccDefMain = IdOcc hsnMain IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 278, 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 882, column 9) _caseId = uidStart -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 100, 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 320, column 9) _pragmas = _declarationsIgathPragmas `Set.union` _lhsIpragmas -- 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 550, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _trpp -- 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 (down) _importdeclarationsOtr = _lhsItr -- copy rule (from local) _declarationsOcaseId = _caseId -- copy rule (chain) _declarationsOgUniq = _importdeclarationsIgUniq -- copy rule (from local) _declarationsOidGam = _idGam -- copy rule (down) _declarationsOmoduleNm = _lhsImoduleNm -- copy rule (from local) _declarationsOnameDeclCxt = _nameDeclCxt -- 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 -- copy rule (down) _declarationsOtr = _lhsItr ( _importdeclarationsIerrSq,_importdeclarationsIgUniq,_importdeclarationsIgathFixityGam,_importdeclarationsIidUseOccGam,_importdeclarationsImodAsMp,_importdeclarationsIpp,_importdeclarationsIppWrap,_importdeclarationsItopInstanceNmL,_importdeclarationsItrpp,_importdeclarationsIundefOccGam) = importdeclarations_ _importdeclarationsOfixityGam _importdeclarationsOgUniq _importdeclarationsOidGam _importdeclarationsOisMainMod _importdeclarationsOisTopMod _importdeclarationsOmoduleNm _importdeclarationsOnmLev _importdeclarationsOopts _importdeclarationsOpatchEhNmInInstance _importdeclarationsOtopInstanceNmL _importdeclarationsOtr ( _declarationsIeh,_declarationsIerrSq,_declarationsIgUniq,_declarationsIgathFixityGam,_declarationsIgathPragmas,_declarationsIidDefOccGam,_declarationsIidDpdMp,_declarationsIidInClassTySigDefOccGam,_declarationsIidInInstanceValDefOccGam,_declarationsIidOccDefs,_declarationsIidUseOccGam,_declarationsIneedsError,_declarationsIpp,_declarationsIppWrap,_declarationsItopInstanceNmL,_declarationsItrpp,_declarationsIundefOccGam) = declarations_ _declarationsOcaseId _declarationsOfixityGam _declarationsOgUniq _declarationsOgenerDerivMp _declarationsOidGam _declarationsOmoduleNm _declarationsOnameDeclCxt _declarationsOnmLev _declarationsOopts _declarationsOpatchEhNmInInstance _declarationsOpragmas _declarationsOtopInstanceNmL _declarationsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOextraModImpL,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathIdGam,_lhsOidUseOccGam,_lhsOmainValExists,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Constructor ------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (AssocL Name Names),Names,(EH.DataConstr),ErrSq,HsNameS,UID,Bool,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Constructor_Constructor :: Range -> Name -> T_Types -> T_Constructor sem_Constructor_Constructor range_ constructor_ types_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typesOfixityGam :: FixityGam _typesOgUniq :: UID _typesOidGam :: IdDefOccGam _typesOisAsPred :: Bool _typesOnmLev :: NmLev _typesOopts :: EHCOpts _typesOpatchEhNmInInstance :: PatchEhNmInInstance _typesOtopInstanceNmL :: ([HsName]) _typesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typesIeh :: ([EH.TyExpr]) _typesIerrSq :: ErrSq _typesIfreeTvarS :: HsNameS _typesIgUniq :: UID _typesIidUseOccGam :: IdUseOccGam _typesIpp :: PP_Doc _typesIppL :: ([PP_Doc]) _typesIppWrap :: (PP_Doc -> PP_Doc) _typesItopInstanceNmL :: ([HsName]) _typesItrpp :: TrPP _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 308, 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 185, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 238, 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 129, column 21) _lhsOfreeTvarS = _typesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 248, column 35) _lhsOhasFlds = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typesItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typesOtr = _lhsItr ( _typesIeh,_typesIerrSq,_typesIfreeTvarS,_typesIgUniq,_typesIidUseOccGam,_typesIpp,_typesIppL,_typesIppWrap,_typesItopInstanceNmL,_typesItrpp,_typesIundefOccGam) = types_ _typesOfixityGam _typesOgUniq _typesOidGam _typesOisAsPred _typesOnmLev _typesOopts _typesOpatchEhNmInInstance _typesOtopInstanceNmL _typesOtr in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftTypeOdoGenVarWild :: Bool _leftTypeOfixityGam :: FixityGam _leftTypeOgUniq :: UID _leftTypeOidGam :: IdDefOccGam _leftTypeOisAsPred :: Bool _leftTypeOnmLev :: NmLev _leftTypeOopts :: EHCOpts _leftTypeOpatchEhNmInInstance :: PatchEhNmInInstance _leftTypeOtopInstanceNmL :: ([HsName]) _leftTypeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rightTypeOdoGenVarWild :: Bool _rightTypeOfixityGam :: FixityGam _rightTypeOgUniq :: UID _rightTypeOidGam :: IdDefOccGam _rightTypeOisAsPred :: Bool _rightTypeOnmLev :: NmLev _rightTypeOopts :: EHCOpts _rightTypeOpatchEhNmInInstance :: PatchEhNmInInstance _rightTypeOtopInstanceNmL :: ([HsName]) _rightTypeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _leftTypeItrpp :: TrPP _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]) _rightTypeItrpp :: TrPP _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 320, 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 185, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 238, 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 129, column 21) _lhsOfreeTvarS = _leftTypeIfreeTvarS `Set.union` _rightTypeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 248, column 35) _lhsOhasFlds = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftTypeItrpp >< _rightTypeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _leftTypeOtr = _lhsItr -- 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 -- copy rule (down) _rightTypeOtr = _lhsItr ( _leftTypeIconNm,_leftTypeIeh,_leftTypeIehMbAsPr,_leftTypeIehMbAsPrL,_leftTypeIehMbAsTyPr,_leftTypeIehMbAsTyPrL,_leftTypeIerrSq,_leftTypeIfreeTvarS,_leftTypeIgUniq,_leftTypeIidUseOccGam,_leftTypeImbRefConNm,_leftTypeIopChain,_leftTypeIoperatorName,_leftTypeIpp,_leftTypeIppWrap,_leftTypeItopInstanceNmL,_leftTypeItrpp,_leftTypeItyConIs,_leftTypeIundefOccGam) = leftType_ _leftTypeOdoGenVarWild _leftTypeOfixityGam _leftTypeOgUniq _leftTypeOidGam _leftTypeOisAsPred _leftTypeOnmLev _leftTypeOopts _leftTypeOpatchEhNmInInstance _leftTypeOtopInstanceNmL _leftTypeOtr ( _rightTypeIconNm,_rightTypeIeh,_rightTypeIehMbAsPr,_rightTypeIehMbAsPrL,_rightTypeIehMbAsTyPr,_rightTypeIehMbAsTyPrL,_rightTypeIerrSq,_rightTypeIfreeTvarS,_rightTypeIgUniq,_rightTypeIidUseOccGam,_rightTypeImbRefConNm,_rightTypeIopChain,_rightTypeIoperatorName,_rightTypeIpp,_rightTypeIppWrap,_rightTypeItopInstanceNmL,_rightTypeItrpp,_rightTypeItyConIs,_rightTypeIundefOccGam) = rightType_ _rightTypeOdoGenVarWild _rightTypeOfixityGam _rightTypeOgUniq _rightTypeOidGam _rightTypeOisAsPred _rightTypeOnmLev _rightTypeOopts _rightTypeOpatchEhNmInInstance _rightTypeOtopInstanceNmL _rightTypeOtr in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Constructor_Record :: Range -> Name -> T_FieldDeclarations -> T_Constructor sem_Constructor_Record range_ constructor_ fieldDeclarations_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _fieldDeclarationsOfixityGam :: FixityGam _fieldDeclarationsOgUniq :: UID _fieldDeclarationsOidGam :: IdDefOccGam _fieldDeclarationsOmoduleNm :: HsName _fieldDeclarationsOnmLev :: NmLev _fieldDeclarationsOopts :: EHCOpts _fieldDeclarationsOpatchEhNmInInstance :: PatchEhNmInInstance _fieldDeclarationsOtopInstanceNmL :: ([HsName]) _fieldDeclarationsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _fieldDeclarationsItrpp :: TrPP _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 328, column 9) _lhsOeh = rngLift range_ EH.DataConstr_Constr _conrefname Nothing _fieldDeclarationsIeh Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 252, 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 129, column 21) _lhsOfreeTvarS = _fieldDeclarationsIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _fieldDeclarationsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _fieldDeclarationsOtr = _lhsItr ( _fieldDeclarationsIeh,_fieldDeclarationsIerrSq,_fieldDeclarationsIfldrefnames,_fieldDeclarationsIfreeTvarS,_fieldDeclarationsIgUniq,_fieldDeclarationsIidUseOccGam,_fieldDeclarationsIpp,_fieldDeclarationsIppL,_fieldDeclarationsIppWrap,_fieldDeclarationsItopInstanceNmL,_fieldDeclarationsItrpp,_fieldDeclarationsIundefOccGam) = fieldDeclarations_ _fieldDeclarationsOfixityGam _fieldDeclarationsOgUniq _fieldDeclarationsOidGam _fieldDeclarationsOmoduleNm _fieldDeclarationsOnmLev _fieldDeclarationsOopts _fieldDeclarationsOpatchEhNmInInstance _fieldDeclarationsOtopInstanceNmL _fieldDeclarationsOtr in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _constructorOfixityGam :: FixityGam _constructorOgUniq :: UID _constructorOidGam :: IdDefOccGam _constructorOmoduleNm :: HsName _constructorOnmLev :: NmLev _constructorOopts :: EHCOpts _constructorOpatchEhNmInInstance :: PatchEhNmInInstance _constructorOtopInstanceNmL :: ([HsName]) _constructorOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextItrpp :: TrPP _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]) _constructorItrpp :: TrPP _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 333, 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 129, column 21) _lhsOfreeTvarS = _contextIfreeTvarS `Set.union` _constructorIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 248, column 35) _lhsOhasFlds = _constructorIhasFlds -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _contextItrpp >< _constructorItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _contextOtr = _lhsItr -- 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 -- copy rule (down) _constructorOtr = _lhsItr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr ( _constructorIconAndFldrefnames,_constructorIconrefnames,_constructorIeh,_constructorIerrSq,_constructorIfreeTvarS,_constructorIgUniq,_constructorIhasFlds,_constructorIidUseOccGam,_constructorIpp,_constructorIppWrap,_constructorItopInstanceNmL,_constructorItrpp,_constructorIundefOccGam) = constructor_ _constructorOfixityGam _constructorOgUniq _constructorOidGam _constructorOmoduleNm _constructorOnmLev _constructorOopts _constructorOpatchEhNmInInstance _constructorOtopInstanceNmL _constructorOtr in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Constructor_GADTFunction :: Range -> Name -> T_Type -> T_Constructor sem_Constructor_GADTFunction range_ constructor_ type_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _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 313, column 41) (_ehArgs,_ehRes) = appUnArr _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 315, 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 185, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 238, 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 129, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 248, column 35) _lhsOhasFlds = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Constructors ------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (AssocL Name Names),Names,([EH.DataConstr]),ErrSq,HsNameS,UID,Bool,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Constructors_Cons :: T_Constructor -> T_Constructors -> T_Constructors sem_Constructors_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 296, 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 129, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 248, column 35) _lhsOhasFlds = _hdIhasFlds || _tlIhasFlds -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIconAndFldrefnames,_hdIconrefnames,_hdIeh,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIhasFlds,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIconAndFldrefnames,_tlIconrefnames,_tlIeh,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIhasFlds,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOconAndFldrefnames,_lhsOconrefnames,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOhasFlds,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Constructors_Nil :: T_Constructors sem_Constructors_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 296, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 248, column 35) _lhsOhasFlds = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- ContextItem ------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.PrExpr),(EH.TyExpr),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_ContextItem_Class :: Range -> Name -> T_Types -> T_ContextItem sem_ContextItem_Class range_ name_ types_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _typesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typesIeh :: ([EH.TyExpr]) _typesIerrSq :: ErrSq _typesIfreeTvarS :: HsNameS _typesIgUniq :: UID _typesIidUseOccGam :: IdUseOccGam _typesIpp :: PP_Doc _typesIppL :: ([PP_Doc]) _typesIppWrap :: (PP_Doc -> PP_Doc) _typesItopInstanceNmL :: ([HsName]) _typesItrpp :: TrPP _typesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 696, 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 698, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_typesIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 126, 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 276, column 9) _eh = rngLift range_ EH.PrExpr_Class _refname _typesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 290, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 204, 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 129, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typesItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typesOtr = _lhsItr ( _typesIeh,_typesIerrSq,_typesIfreeTvarS,_typesIgUniq,_typesIidUseOccGam,_typesIpp,_typesIppL,_typesIppWrap,_typesItopInstanceNmL,_typesItrpp,_typesIundefOccGam) = types_ _typesOfixityGam _typesOgUniq _typesOidGam _typesOisAsPred _typesOnmLev _typesOopts _typesOpatchEhNmInInstance _typesOtopInstanceNmL _typesOtr in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextItem_Forall :: Range -> Names -> T_ContextItem -> T_ContextItem sem_ContextItem_Forall range_ typevariables_ context_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOfreeTvarS :: HsNameS _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextIeh :: (EH.PrExpr) _contextIehTy :: (EH.TyExpr) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextItrpp :: TrPP _contextIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 324, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _lhsInmLev range_ typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 489, 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 284, column 9) _eh = foldr (rngLift range_ EH.PrExpr_Forall) _contextIeh typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 290, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 139, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _contextItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _contextOtr = _lhsItr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextItem_Arrow :: Range -> T_ContextItem -> T_ContextItem -> T_ContextItem sem_ContextItem_Arrow range_ argument_ result_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _argumentOtr :: (TraceOn -> [PP_Doc] -> TrPP) _resultOfixityGam :: FixityGam _resultOgUniq :: UID _resultOidGam :: IdDefOccGam _resultOnmLev :: NmLev _resultOopts :: EHCOpts _resultOpatchEhNmInInstance :: PatchEhNmInInstance _resultOtopInstanceNmL :: ([HsName]) _resultOtr :: (TraceOn -> [PP_Doc] -> TrPP) _argumentIeh :: (EH.PrExpr) _argumentIehTy :: (EH.TyExpr) _argumentIerrSq :: ErrSq _argumentIfreeTvarS :: HsNameS _argumentIgUniq :: UID _argumentIidUseOccGam :: IdUseOccGam _argumentIpp :: PP_Doc _argumentIppWrap :: (PP_Doc -> PP_Doc) _argumentItopInstanceNmL :: ([HsName]) _argumentItrpp :: TrPP _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]) _resultItrpp :: TrPP _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 282, column 9) _eh = rngLift range_ EH.PrExpr_Arrow _argumentIeh _resultIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 290, 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 129, column 21) _lhsOfreeTvarS = _argumentIfreeTvarS `Set.union` _resultIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _argumentItrpp >< _resultItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _argumentOtr = _lhsItr -- 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 -- copy rule (down) _resultOtr = _lhsItr ( _argumentIeh,_argumentIehTy,_argumentIerrSq,_argumentIfreeTvarS,_argumentIgUniq,_argumentIidUseOccGam,_argumentIpp,_argumentIppWrap,_argumentItopInstanceNmL,_argumentItrpp,_argumentIundefOccGam) = argument_ _argumentOfixityGam _argumentOgUniq _argumentOidGam _argumentOnmLev _argumentOopts _argumentOpatchEhNmInInstance _argumentOtopInstanceNmL _argumentOtr ( _resultIeh,_resultIehTy,_resultIerrSq,_resultIfreeTvarS,_resultIgUniq,_resultIidUseOccGam,_resultIpp,_resultIppWrap,_resultItopInstanceNmL,_resultItrpp,_resultIundefOccGam) = result_ _resultOfixityGam _resultOgUniq _resultOidGam _resultOnmLev _resultOopts _resultOpatchEhNmInInstance _resultOtopInstanceNmL _resultOtr in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextItem_Implicits :: Range -> T_ContextItem sem_ContextItem_Implicits range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 278, column 9) _eh = undefined -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 292, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextItem_NoImplicits :: Range -> T_ContextItem sem_ContextItem_NoImplicits range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 278, column 9) _eh = undefined -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 294, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextItem_RowLacksLabel :: Range -> Name -> Name -> T_ContextItem sem_ContextItem_RowLacksLabel range_ rowvariable_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOfreeTvarS :: HsNameS _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 280, 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 290, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 141, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextItem_Equal :: Range -> T_Type -> T_Type -> T_ContextItem sem_ContextItem_Equal range_ type1_ type2_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _type1Otr :: (TraceOn -> [PP_Doc] -> TrPP) _type2OdoGenVarWild :: Bool _type2OfixityGam :: FixityGam _type2OgUniq :: UID _type2OidGam :: IdDefOccGam _type2OisAsPred :: Bool _type2OnmLev :: NmLev _type2Oopts :: EHCOpts _type2OpatchEhNmInInstance :: PatchEhNmInInstance _type2OtopInstanceNmL :: ([HsName]) _type2Otr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _type1Itrpp :: TrPP _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]) _type2Itrpp :: TrPP _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 286, column 9) _eh = rngLift range_ EH.PrExpr_Eq _type1Ieh _type2Ieh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 290, column 9) _ehTy = rngLift range_ EH.TyExpr_Pred _eh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 204, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 246, 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 129, column 21) _lhsOfreeTvarS = _type1IfreeTvarS `Set.union` _type2IfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _type1Itrpp >< _type2Itrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _type1Otr = _lhsItr -- 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 -- copy rule (down) _type2Otr = _lhsItr ( _type1IconNm,_type1Ieh,_type1IehMbAsPr,_type1IehMbAsPrL,_type1IehMbAsTyPr,_type1IehMbAsTyPrL,_type1IerrSq,_type1IfreeTvarS,_type1IgUniq,_type1IidUseOccGam,_type1ImbRefConNm,_type1IopChain,_type1IoperatorName,_type1Ipp,_type1IppWrap,_type1ItopInstanceNmL,_type1Itrpp,_type1ItyConIs,_type1IundefOccGam) = type1_ _type1OdoGenVarWild _type1OfixityGam _type1OgUniq _type1OidGam _type1OisAsPred _type1OnmLev _type1Oopts _type1OpatchEhNmInInstance _type1OtopInstanceNmL _type1Otr ( _type2IconNm,_type2Ieh,_type2IehMbAsPr,_type2IehMbAsPrL,_type2IehMbAsTyPr,_type2IehMbAsTyPrL,_type2IerrSq,_type2IfreeTvarS,_type2IgUniq,_type2IidUseOccGam,_type2ImbRefConNm,_type2IopChain,_type2IoperatorName,_type2Ipp,_type2IppWrap,_type2ItopInstanceNmL,_type2Itrpp,_type2ItyConIs,_type2IundefOccGam) = type2_ _type2OdoGenVarWild _type2OfixityGam _type2OgUniq _type2OidGam _type2OisAsPred _type2OnmLev _type2Oopts _type2OpatchEhNmInInstance _type2OtopInstanceNmL _type2Otr in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- ContextItems ------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.PrExpr]),([EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_ContextItems_Cons :: T_ContextItem -> T_ContextItems -> T_ContextItems sem_ContextItems_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.PrExpr]) _lhsOehTy :: ([EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: (EH.PrExpr) _hdIehTy :: (EH.TyExpr) _hdIerrSq :: ErrSq _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 270, column 28) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 270, 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 129, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIehTy,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIehTy,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextItems_Nil :: T_ContextItems sem_ContextItems_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.PrExpr]) _lhsOehTy :: ([EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 270, column 28) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 270, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOehTy,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ((EH.Expr,EH.PrExpr)),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOeh :: ((EH.Expr,EH.PrExpr)) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _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]) _contextItrpp :: TrPP _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 551, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp >< _contextItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _expressionOtr = _lhsItr -- 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 -- copy rule (down) _contextOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([(EH.Expr,EH.PrExpr)]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.Expr,EH.PrExpr)]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: ((EH.Expr,EH.PrExpr)) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 545, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextedExpressions_Nil :: T_ContextedExpressions sem_ContextedExpressions_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.Expr,EH.PrExpr)]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 545, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- ContextedPattern -------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ((EH.PatExpr,EH.PrExpr)),ErrSq,HsNameS,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOeh :: ((EH.PatExpr,EH.PrExpr)) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _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]) _contextItrpp :: TrPP _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 853, 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 129, column 21) _lhsOfreeTvarS = _contextIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp >< _contextItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _patternOtr = _lhsItr -- 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 -- copy rule (down) _contextOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- ContextedPatterns ------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([(EH.PatExpr,EH.PrExpr)]),ErrSq,HsNameS,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_ContextedPatterns_Cons :: T_ContextedPattern -> T_ContextedPatterns -> T_ContextedPatterns sem_ContextedPatterns_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 847, 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 129, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_ContextedPatterns_Nil :: T_ContextedPatterns sem_ContextedPatterns_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 847, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- Declaration ------------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.Decl] errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idInClassTySigDefOccGam : IdDefOccGam idInInstanceValDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP undefOccGam : IdUseOccGam alternatives: alternative FunctionBindings: child range : {Range} child bindings : FunctionBindings visit 0: local idInInstanceValDefOccGam : _ local idOccDefs : _ local isAsPred : _ local doGenVarWild : _ alternative PatternBinding: child range : {Range} child pattern : Pattern child righthandside : RightHandSide visit 0: local trpp : _ local idDefOccGamPat : _ local idDefOccGam : _ local idInInstanceValDefOccGam : _ 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 idInClassTySigDefOccGam : _ 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 trpp : _ local idDefOccGamType : _ local idDefOccGamType2 : _ local idDefOccGamConstrs : _ local idDefOccGamGener : _ local idDefOccGam : _ local idDefOccGamInside : _ local idGam : _ local idUseOccGamVal : _ local errIdUseVal : _ local idUseOccGamClass : _ local errIdUseClass : _ local idUseOccGamGener : _ local errIdUseGener : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idUseOccGenerGam : _ local idUseHereGenerOccL : _ local undefGenerOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local typerefname : _ local idOccDef : _ local idOccDefsCon : _ local idOccDefsFld : _ local generMaxRemArity : _ local idOccDefsGener : _ local generArities : _ local idOccDefs : _ local nmLev : _ local errDupIntro : _ local locErrs : _ local errSq : _ local pp : _ local eh : _ local mkEhGener : _ 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 idUseOccGamGener : _ local errIdUseGener : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idUseOccGenerGam : _ local idUseHereGenerOccL : _ local undefGenerOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local typerefname : _ local idOccDef : _ local idOccDefsCon : _ local idOccDefsFld : _ local generMaxRemArity : _ local idOccDefsGener : _ local generArities : _ local idOccDefs : _ local nmLev : _ local errNewtype : _ local errDupIntro : _ local locErrs : _ local errSq : _ local pp : _ local eh : _ local mkEhGener : _ 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 idUseOccGamGener : _ local errIdUseGener : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idUseOccGenerGam : _ local idUseHereGenerOccL : _ local undefGenerOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ local typerefname : _ local idOccDef : _ local idOccDefsCon : _ local idOccDefsFld : _ local generMaxRemArity : _ local idOccDefsGener : _ local generArities : _ local idOccDefs : _ local nmLev : _ local errDupIntro : _ local locErrs : _ local errSq : _ local pp : _ local eh : _ local mkEhGener : _ 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 trpp : _ local nameDeclCxt : _ local generderivnames : _ local idDefOccGamType : _ local idDefOccGamSigAsVar : _ local idDefOccGam : _ local idDefOccGamInside : _ local idGam : _ local idDefOccGamInstForClass : _ local generderivrefnames : _ local idUseOccGamGenerDeriv : _ local errIdUseGenerDeriv : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local ehReorderedDecls : _ local errReorder : _ local patchEhNmInInstance : _ local instancerefname : _ local classrefname : _ 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 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 trpp : _ local nameDeclCxt : _ local generRequiresReprTypes : _ local idDefOccGamType : _ local idDefOccGamValAsVar : _ local idDefOccGam : _ local idGam : _ local classrefname : _ local idUseOccGamInst : _ local errIdUse : _ local idUseOccGamGenerRepr : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idUseHereGenerReprOccL : _ 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 type : Type visit 0: local trpp : _ local idDefOccGam : _ local classrefname : _ local idUseOccGamInst : _ local errIdUse : _ local idUseOccGam : _ local idUseHereOccL : _ local undefOccGam : _ local idDpdMp : _ local patchEhNmInInstance : _ 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 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 _type) = (sem_Declaration_InstanceUseImplicitly _range (sem_Expression _expression) (sem_Type _type)) 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.Decl]),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,IdDefOccGam,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Declaration_FunctionBindings :: Range -> T_FunctionBindings -> T_Declaration sem_Declaration_FunctionBindings range_ bindings_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _bindingsOcaseId :: UID _bindingsOfixityGam :: FixityGam _bindingsOgUniq :: UID _bindingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _bindingsOidGam :: IdDefOccGam _bindingsOmoduleNm :: HsName _bindingsOnameDeclCxt :: NameDeclCxt _bindingsOnmLev :: NmLev _bindingsOopts :: EHCOpts _bindingsOpatchEhNmInInstance :: PatchEhNmInInstance _bindingsOpragmas :: (Set.Set Pragma.Pragma) _bindingsOtopInstanceNmL :: ([HsName]) _bindingsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _bindingsItrpp :: TrPP _bindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 347, column 9) _idInInstanceValDefOccGam = mkDefOccGam' _lhsInmLev range_ (\o -> IdAsp_Val_Var) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 111, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _bindingsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _bindingsIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _idInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _bindingsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _bindingsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _bindingsOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _bindingsOtr = _lhsItr ( _bindingsIeh,_bindingsIerrSq,_bindingsIgUniq,_bindingsIidDefOccGam,_bindingsIidDpdMp,_bindingsIidOccDefs,_bindingsIidUseOccGam,_bindingsIpp,_bindingsIppWrap,_bindingsItopInstanceNmL,_bindingsItrpp,_bindingsIundefOccGam) = bindings_ _bindingsOcaseId _bindingsOfixityGam _bindingsOgUniq _bindingsOgenerDerivMp _bindingsOidGam _bindingsOmoduleNm _bindingsOnameDeclCxt _bindingsOnmLev _bindingsOopts _bindingsOpatchEhNmInInstance _bindingsOpragmas _bindingsOtopInstanceNmL _bindingsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_PatternBinding :: Range -> T_Pattern -> T_RightHandSide -> T_Declaration sem_Declaration_PatternBinding range_ pattern_ righthandside_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (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 _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _righthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _patternIundefOccGam :: IdUseOccGam _righthandsideIeh :: (EH.Expr) _righthandsideIerrSq :: ErrSq _righthandsideIgUniq :: UID _righthandsideIidUseOccGam :: IdUseOccGam _righthandsideIpp :: PP_Doc _righthandsideIppWrap :: (PP_Doc -> PP_Doc) _righthandsideItopInstanceNmL :: ([HsName]) _righthandsideItrpp :: TrPP _righthandsideIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 24, column 9) _trpp = (_lhsItr TraceOn_HsOcc $ [_idOccDef >#< " = PatternBinding"] ++ [ "idUseHereOccL=" >#< ppBracketsCommas _idUseHereOccL ]) >< _patternItrpp >< _righthandsideItrpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 193, column 9) _idDefOccGamPat = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Pat _eh) _idOccDefsPat -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 193, column 9) _idDefOccGam = _idDefOccGamPat `gamAddGam` _patternIidDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 347, column 9) _idInInstanceValDefOccGam = mkDefOccGam' _lhsInmLev range_ (\o -> IdAsp_Val_Var) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 860, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam' (_lhsInameDeclCxt == NameDeclCxt_Instance) _lhsInmLev (gamUnions [_patternIidUseOccGam,_righthandsideIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 860, 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 868, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_righthandsideIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1260, column 9) _righthandsideOpatchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 113, column 9) _idOccDef = IdOcc (maybe (mkHNm _lUniq) id _patternImbTopRefname) IdOcc_Pat -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 113, column 9) _idOccDefsPat = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 113, 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 878, column 9) _caseId = _lUniq -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 281, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _idInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _trpp -- 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 (down) _patternOtr = _lhsItr -- 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 -- copy rule (down) _righthandsideOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr ( _righthandsideIeh,_righthandsideIerrSq,_righthandsideIgUniq,_righthandsideIidUseOccGam,_righthandsideIpp,_righthandsideIppWrap,_righthandsideItopInstanceNmL,_righthandsideItrpp,_righthandsideIundefOccGam) = righthandside_ _righthandsideOcaseId _righthandsideOfixityGam _righthandsideOgUniq _righthandsideOgenerDerivMp _righthandsideOidGam _righthandsideOmoduleNm _righthandsideOmustBeMono _righthandsideOnmLev _righthandsideOopts _righthandsideOpatchEhNmInInstance _righthandsideOpragmas _righthandsideOsepPP _righthandsideOtopInstanceNmL _righthandsideOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_TypeSignature :: Range -> Names -> T_Type -> T_Declaration sem_Declaration_TypeSignature range_ names_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _typeOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 187, 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 187, column 9) _idDefOccGamType = tvarS2IdDefOccGam _nmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 344, column 9) _idInClassTySigDefOccGam = mkDefOccGam' _lhsInmLev range_ (\o -> IdAsp_Val_Var) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 439, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 854, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam' (_lhsInameDeclCxt == NameDeclCxt_Class) _lhsInmLev _typeIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 854, column 9) _idDpdMp = idToOccL2DpdMp (gamKeys _idDefOccGam) _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 858, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typeIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 109, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _idInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_Fixity :: Range -> Fixity -> (Maybe Int) -> Names -> T_Declaration sem_Declaration_Fixity range_ fixity_ priority_ operators_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOgathFixityGam :: FixityGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 191, 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 1263, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_FusionDeclaration :: Range -> Name -> T_Declaration sem_Declaration_FusionDeclaration range_ fusename_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 266, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Fusion _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 779, 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 1003, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _idUseOccGamFusion -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1003, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1006, column 9) _lhsOundefOccGam = _undefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 161, column 9) _idOccDef = IdOcc (mkHNm _lUniq) IdOcc_Fusion -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 161, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 160, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_FusionConversion :: Range -> Name -> Name -> T_Declaration sem_Declaration_FusionConversion range_ absname_ conname_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 268, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Fusion_Conv _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 782, 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 1003, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _idUseOccGamFusion -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1003, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1006, column 9) _lhsOundefOccGam = _undefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 161, column 9) _idOccDef = IdOcc (mkHNm _lUniq) IdOcc_Fusion -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 161, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 160, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_Empty :: Range -> T_Declaration sem_Declaration_Empty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOneedsError :: Bool _lhsOundefOccGam :: IdUseOccGam _lhsOidUseOccGam :: IdUseOccGam _derivingsOidOccDefsData :: ([IdOcc]) _lhsOeh :: ([EH.Decl]) _derivingsOehDataTyExpr :: (EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _typelefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _constructorsOfixityGam :: FixityGam _constructorsOgUniq :: UID _constructorsOidGam :: IdDefOccGam _constructorsOmoduleNm :: HsName _constructorsOnmLev :: NmLev _constructorsOopts :: EHCOpts _constructorsOpatchEhNmInInstance :: PatchEhNmInInstance _constructorsOtopInstanceNmL :: ([HsName]) _constructorsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _derivingsOfixityGam :: FixityGam _derivingsOgUniq :: UID _derivingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _derivingsOidGam :: IdDefOccGam _derivingsOmoduleNm :: HsName _derivingsOnameDeclCxt :: NameDeclCxt _derivingsOnmLev :: NmLev _derivingsOopts :: EHCOpts _derivingsOpatchEhNmInInstance :: PatchEhNmInInstance _derivingsOpragmas :: (Set.Set Pragma.Pragma) _derivingsOtopInstanceNmL :: ([HsName]) _derivingsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextItrpp :: TrPP _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]) _typelefthandsideItrpp :: TrPP _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]) _constructorsItrpp :: TrPP _constructorsIundefOccGam :: IdUseOccGam _derivingsIerrSq :: ErrSq _derivingsIgUniq :: UID _derivingsIgathFixityGam :: FixityGam _derivingsIgathPragmas :: (Set.Set Pragma.Pragma) _derivingsIhasGenericDeriving :: Bool _derivingsIidDefOccGam :: IdDefOccGam _derivingsIidDpdMp :: IdDpdMp _derivingsIidInClassTySigDefOccGam :: IdDefOccGam _derivingsIidInInstanceValDefOccGam :: IdDefOccGam _derivingsIidOccDefs :: ([IdOcc]) _derivingsIidUseOccGam :: IdUseOccGam _derivingsIneedsError :: Bool _derivingsIpp :: PP_Doc _derivingsIppL :: ([PP_Doc]) _derivingsIppWrap :: (PP_Doc -> PP_Doc) _derivingsItopInstanceNmL :: ([HsName]) _derivingsItrpp :: TrPP _derivingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 43, column 9) _trpp = trppEmpty >< (_lhsItr TraceOn_HsOcc $ [_idOccDef >#< "= Data"] ++ [ "idOccDefs=" >#< ppBracketsCommas _idOccDefs, "idOccDefsGener=" >#< ppBracketsCommas _idOccDefsGener ]) >< _contextItrpp >< _typelefthandsideItrpp >< _constructorsItrpp >< _derivingsItrpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, column 9) _idDefOccGamType = tvarS2IdDefOccGam _nmLev _typelefthandsideIrange _constructorsIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, column 9) _idDefOccGamType2 = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, 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 198, column 9) _idDefOccGamGener = gamUnions $ zipWith (\arity def -> mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def $ _mkEhGener arity) [def]) _generArities _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, 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 256, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 443, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 750, column 29) (_,_,_idUseOccGamVal,_errIdUseVal) = mkUseOccGam _lhsIopts _lhsIidGam [] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 763, column 29) (_,_,_idUseOccGamClass,_errIdUseClass) = mkUseOccGam _lhsIopts _lhsIidGam (if (ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving) && not (ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts) then assocLKeys builtinGenerClassNmL else []) IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 769, column 29) (_,_,_idUseOccGamGener,_errIdUseGener) = mkUseOccGamDfltAsp _lhsIopts _lhsIidGam (if (ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving) && ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then builtinGenerClassNmL ++ builtinGenerTypeNmL ++ concat [builtinGenerClassArityNmL a ++ builtinGenerTypeArityNmL a | a <- [0 .. _generMaxRemArity]] else []) range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 803, column 9) _lhsOneedsError = _constructorsIhasFlds -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 871, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [ _constructorsIidUseOccGam , _idUseOccGamVal , _contextIidUseOccGam , if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then emptyGam else _idUseOccGamClass , _typelefthandsideIidUseOccGam, _constructorsIidUseOccGam ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 882, column 29) (_idUseOccGenerGam,_idUseHereGenerOccL,_,_undefGenerOccGam) = splitIdUseOccGam _lhsInmLev _idUseOccGamGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 871, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamConstrs [_idOccDef] `idDpdMpUnion` _derivingsIidDpdMp `idDpdMpUnion` (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then emptyIdDpdMp else idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef]) `idDpdMpUnion` (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then idToOccL2DpdMp _idOccDefsGener _idUseHereGenerOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef] else emptyIdDpdMp ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 900, column 9) _lhsOundefOccGam = gamUnions [ _undefOccGam , _undefGenerOccGam , _derivingsIundefOccGam , _contextIundefOccGam , _typelefthandsideIundefOccGam, _constructorsIundefOccGam ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 900, column 9) _lhsOidUseOccGam = gamUnions [ _idUseOccGam , _idUseOccGenerGam ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1050, column 9) _derivingsOidOccDefsData = (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then _idOccDefsGener else []) ++ [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 119, column 9) _idOccDef = IdOcc _typerefname IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, column 9) _idOccDefsCon = [ IdOcc n IdOcc_Val | n <- _constructorsIconrefnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, 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 119, column 9) _generMaxRemArity = length _typelefthandsideItypevariables `min` 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 124, column 29) (_idOccDefsGener,_generArities) = if ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving then let arities = [0 .. _generMaxRemArity] in ([IdOcc (hsnNm2GenerReprSyn a _typerefname) IdOcc_Type | a <- arities], arities) else ([], []) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, 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 _errIdUseGener , 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 || _derivingsIhasGenericDeriving 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) _mkEhGener = \arity -> rngLift range_ EH.Decl_GenerRep _generMaxRemArity arity _typerefname _constructorsIconrefnames _constructorsIconAndFldrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 165, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _derivingsIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _derivingsIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _trpp -- 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) _contextOtr = _lhsItr -- 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) _typelefthandsideOtr = _lhsItr -- 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) _constructorsOtr = _lhsItr -- 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 (down) _derivingsOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _derivingsOtr = _lhsItr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItrpp,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL _typelefthandsideOtr ( _constructorsIconAndFldrefnames,_constructorsIconrefnames,_constructorsIeh,_constructorsIerrSq,_constructorsIfreeTvarS,_constructorsIgUniq,_constructorsIhasFlds,_constructorsIidUseOccGam,_constructorsIpp,_constructorsIppWrap,_constructorsItopInstanceNmL,_constructorsItrpp,_constructorsIundefOccGam) = constructors_ _constructorsOfixityGam _constructorsOgUniq _constructorsOidGam _constructorsOmoduleNm _constructorsOnmLev _constructorsOopts _constructorsOpatchEhNmInInstance _constructorsOtopInstanceNmL _constructorsOtr ( _derivingsIerrSq,_derivingsIgUniq,_derivingsIgathFixityGam,_derivingsIgathPragmas,_derivingsIhasGenericDeriving,_derivingsIidDefOccGam,_derivingsIidDpdMp,_derivingsIidInClassTySigDefOccGam,_derivingsIidInInstanceValDefOccGam,_derivingsIidOccDefs,_derivingsIidUseOccGam,_derivingsIneedsError,_derivingsIpp,_derivingsIppL,_derivingsIppWrap,_derivingsItopInstanceNmL,_derivingsItrpp,_derivingsIundefOccGam) = derivings_ _derivingsOehDataTyExpr _derivingsOfixityGam _derivingsOgUniq _derivingsOgenerDerivMp _derivingsOidGam _derivingsOidOccDefsData _derivingsOmoduleNm _derivingsOnameDeclCxt _derivingsOnmLev _derivingsOopts _derivingsOpatchEhNmInInstance _derivingsOpragmas _derivingsOtopInstanceNmL _derivingsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOidUseOccGam :: IdUseOccGam _derivingsOidOccDefsData :: ([IdOcc]) _lhsOeh :: ([EH.Decl]) _derivingsOehDataTyExpr :: (EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _typelefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _constructorsOfixityGam :: FixityGam _constructorsOgUniq :: UID _constructorsOidGam :: IdDefOccGam _constructorsOmoduleNm :: HsName _constructorsOnmLev :: NmLev _constructorsOopts :: EHCOpts _constructorsOpatchEhNmInInstance :: PatchEhNmInInstance _constructorsOtopInstanceNmL :: ([HsName]) _constructorsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _derivingsOfixityGam :: FixityGam _derivingsOgUniq :: UID _derivingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _derivingsOidGam :: IdDefOccGam _derivingsOmoduleNm :: HsName _derivingsOnameDeclCxt :: NameDeclCxt _derivingsOnmLev :: NmLev _derivingsOopts :: EHCOpts _derivingsOpatchEhNmInInstance :: PatchEhNmInInstance _derivingsOpragmas :: (Set.Set Pragma.Pragma) _derivingsOtopInstanceNmL :: ([HsName]) _derivingsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextItrpp :: TrPP _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]) _typelefthandsideItrpp :: TrPP _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]) _constructorsItrpp :: TrPP _constructorsIundefOccGam :: IdUseOccGam _derivingsIerrSq :: ErrSq _derivingsIgUniq :: UID _derivingsIgathFixityGam :: FixityGam _derivingsIgathPragmas :: (Set.Set Pragma.Pragma) _derivingsIhasGenericDeriving :: Bool _derivingsIidDefOccGam :: IdDefOccGam _derivingsIidDpdMp :: IdDpdMp _derivingsIidInClassTySigDefOccGam :: IdDefOccGam _derivingsIidInInstanceValDefOccGam :: IdDefOccGam _derivingsIidOccDefs :: ([IdOcc]) _derivingsIidUseOccGam :: IdUseOccGam _derivingsIneedsError :: Bool _derivingsIpp :: PP_Doc _derivingsIppL :: ([PP_Doc]) _derivingsIppWrap :: (PP_Doc -> PP_Doc) _derivingsItopInstanceNmL :: ([HsName]) _derivingsItrpp :: TrPP _derivingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, column 9) _idDefOccGamType = tvarS2IdDefOccGam _nmLev _typelefthandsideIrange _constructorsIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, column 9) _idDefOccGamType2 = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, 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 198, column 9) _idDefOccGamGener = gamUnions $ zipWith (\arity def -> mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def $ _mkEhGener arity) [def]) _generArities _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, 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 256, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 443, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 753, 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 763, column 29) (_,_,_idUseOccGamClass,_errIdUseClass) = mkUseOccGam _lhsIopts _lhsIidGam (if (ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving) && not (ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts) then assocLKeys builtinGenerClassNmL else []) IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 769, column 29) (_,_,_idUseOccGamGener,_errIdUseGener) = mkUseOccGamDfltAsp _lhsIopts _lhsIidGam (if (ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving) && ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then builtinGenerClassNmL ++ builtinGenerTypeNmL ++ concat [builtinGenerClassArityNmL a ++ builtinGenerTypeArityNmL a | a <- [0 .. _generMaxRemArity]] else []) range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 871, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [ _constructorsIidUseOccGam , _idUseOccGamVal , _contextIidUseOccGam , if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then emptyGam else _idUseOccGamClass , _typelefthandsideIidUseOccGam, _constructorsIidUseOccGam ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 882, column 29) (_idUseOccGenerGam,_idUseHereGenerOccL,_,_undefGenerOccGam) = splitIdUseOccGam _lhsInmLev _idUseOccGamGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 871, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamConstrs [_idOccDef] `idDpdMpUnion` _derivingsIidDpdMp `idDpdMpUnion` (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then emptyIdDpdMp else idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef]) `idDpdMpUnion` (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then idToOccL2DpdMp _idOccDefsGener _idUseHereGenerOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef] else emptyIdDpdMp ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 900, column 9) _lhsOundefOccGam = gamUnions [ _undefOccGam , _undefGenerOccGam , _derivingsIundefOccGam , _contextIundefOccGam , _typelefthandsideIundefOccGam, _constructorsIundefOccGam ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 900, column 9) _lhsOidUseOccGam = gamUnions [ _idUseOccGam , _idUseOccGenerGam ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1050, column 9) _derivingsOidOccDefsData = (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then _idOccDefsGener else []) ++ [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 119, column 9) _idOccDef = IdOcc _typerefname IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, column 9) _idOccDefsCon = [ IdOcc n IdOcc_Val | n <- _constructorsIconrefnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, 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 119, column 9) _generMaxRemArity = length _typelefthandsideItypevariables `min` 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 124, column 29) (_idOccDefsGener,_generArities) = if ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving then let arities = [0 .. _generMaxRemArity] in ([IdOcc (hsnNm2GenerReprSyn a _typerefname) IdOcc_Type | a <- arities], arities) else ([], []) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, 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 _errIdUseGener , 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 || _derivingsIhasGenericDeriving 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) _mkEhGener = \arity -> rngLift range_ EH.Decl_GenerRep _generMaxRemArity arity _typerefname _constructorsIconrefnames _constructorsIconAndFldrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 165, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _derivingsIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _derivingsIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _contextItrpp >< _typelefthandsideItrpp >< _constructorsItrpp >< _derivingsItrpp -- 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) _contextOtr = _lhsItr -- 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) _typelefthandsideOtr = _lhsItr -- 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) _constructorsOtr = _lhsItr -- 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 (down) _derivingsOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _derivingsOtr = _lhsItr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItrpp,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL _typelefthandsideOtr ( _constructorsIconAndFldrefnames,_constructorsIconrefnames,_constructorsIeh,_constructorsIerrSq,_constructorsIfreeTvarS,_constructorsIgUniq,_constructorsIhasFlds,_constructorsIidUseOccGam,_constructorsIpp,_constructorsIppWrap,_constructorsItopInstanceNmL,_constructorsItrpp,_constructorsIundefOccGam) = constructors_ _constructorsOfixityGam _constructorsOgUniq _constructorsOidGam _constructorsOmoduleNm _constructorsOnmLev _constructorsOopts _constructorsOpatchEhNmInInstance _constructorsOtopInstanceNmL _constructorsOtr ( _derivingsIerrSq,_derivingsIgUniq,_derivingsIgathFixityGam,_derivingsIgathPragmas,_derivingsIhasGenericDeriving,_derivingsIidDefOccGam,_derivingsIidDpdMp,_derivingsIidInClassTySigDefOccGam,_derivingsIidInInstanceValDefOccGam,_derivingsIidOccDefs,_derivingsIidUseOccGam,_derivingsIneedsError,_derivingsIpp,_derivingsIppL,_derivingsIppWrap,_derivingsItopInstanceNmL,_derivingsItrpp,_derivingsIundefOccGam) = derivings_ _derivingsOehDataTyExpr _derivingsOfixityGam _derivingsOgUniq _derivingsOgenerDerivMp _derivingsOidGam _derivingsOidOccDefsData _derivingsOmoduleNm _derivingsOnameDeclCxt _derivingsOnmLev _derivingsOopts _derivingsOpatchEhNmInInstance _derivingsOpragmas _derivingsOtopInstanceNmL _derivingsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOidUseOccGam :: IdUseOccGam _derivingsOidOccDefsData :: ([IdOcc]) _lhsOeh :: ([EH.Decl]) _derivingsOehDataTyExpr :: (EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _contextOfixityGam :: FixityGam _contextOgUniq :: UID _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _typelefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _constructorsOfixityGam :: FixityGam _constructorsOgUniq :: UID _constructorsOidGam :: IdDefOccGam _constructorsOmoduleNm :: HsName _constructorsOnmLev :: NmLev _constructorsOopts :: EHCOpts _constructorsOpatchEhNmInInstance :: PatchEhNmInInstance _constructorsOtopInstanceNmL :: ([HsName]) _constructorsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _derivingsOfixityGam :: FixityGam _derivingsOgUniq :: UID _derivingsOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _derivingsOidGam :: IdDefOccGam _derivingsOmoduleNm :: HsName _derivingsOnameDeclCxt :: NameDeclCxt _derivingsOnmLev :: NmLev _derivingsOopts :: EHCOpts _derivingsOpatchEhNmInInstance :: PatchEhNmInInstance _derivingsOpragmas :: (Set.Set Pragma.Pragma) _derivingsOtopInstanceNmL :: ([HsName]) _derivingsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextItrpp :: TrPP _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]) _typelefthandsideItrpp :: TrPP _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]) _constructorsItrpp :: TrPP _constructorsIundefOccGam :: IdUseOccGam _derivingsIerrSq :: ErrSq _derivingsIgUniq :: UID _derivingsIgathFixityGam :: FixityGam _derivingsIgathPragmas :: (Set.Set Pragma.Pragma) _derivingsIhasGenericDeriving :: Bool _derivingsIidDefOccGam :: IdDefOccGam _derivingsIidDpdMp :: IdDpdMp _derivingsIidInClassTySigDefOccGam :: IdDefOccGam _derivingsIidInInstanceValDefOccGam :: IdDefOccGam _derivingsIidOccDefs :: ([IdOcc]) _derivingsIidUseOccGam :: IdUseOccGam _derivingsIneedsError :: Bool _derivingsIpp :: PP_Doc _derivingsIppL :: ([PP_Doc]) _derivingsIppWrap :: (PP_Doc -> PP_Doc) _derivingsItopInstanceNmL :: ([HsName]) _derivingsItrpp :: TrPP _derivingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, column 9) _idDefOccGamType = tvarS2IdDefOccGam _nmLev _typelefthandsideIrange _constructorsIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, column 9) _idDefOccGamType2 = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, 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 198, column 9) _idDefOccGamGener = gamUnions $ zipWith (\arity def -> mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def $ _mkEhGener arity) [def]) _generArities _idOccDefsGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 198, 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 256, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 443, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 750, column 29) (_,_,_idUseOccGamVal,_errIdUseVal) = mkUseOccGam _lhsIopts _lhsIidGam [] IdOcc_Val IdAsp_Val_Var range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 763, column 29) (_,_,_idUseOccGamClass,_errIdUseClass) = mkUseOccGam _lhsIopts _lhsIidGam (if (ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving) && not (ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts) then assocLKeys builtinGenerClassNmL else []) IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 769, column 29) (_,_,_idUseOccGamGener,_errIdUseGener) = mkUseOccGamDfltAsp _lhsIopts _lhsIidGam (if (ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving) && ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then builtinGenerClassNmL ++ builtinGenerTypeNmL ++ concat [builtinGenerClassArityNmL a ++ builtinGenerTypeArityNmL a | a <- [0 .. _generMaxRemArity]] else []) range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 871, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [ _constructorsIidUseOccGam , _idUseOccGamVal , _contextIidUseOccGam , if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then emptyGam else _idUseOccGamClass , _typelefthandsideIidUseOccGam, _constructorsIidUseOccGam ] ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 882, column 29) (_idUseOccGenerGam,_idUseHereGenerOccL,_,_undefGenerOccGam) = splitIdUseOccGam _lhsInmLev _idUseOccGamGener -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 871, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamConstrs [_idOccDef] `idDpdMpUnion` _derivingsIidDpdMp `idDpdMpUnion` (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then emptyIdDpdMp else idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef]) `idDpdMpUnion` (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then idToOccL2DpdMp _idOccDefsGener _idUseHereGenerOccL `idDpdMpUnion` idFrOccGam2DpdMp _idDefOccGamGener [_idOccDef] else emptyIdDpdMp ) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 900, column 9) _lhsOundefOccGam = gamUnions [ _undefOccGam , _undefGenerOccGam , _derivingsIundefOccGam , _contextIundefOccGam , _typelefthandsideIundefOccGam, _constructorsIundefOccGam ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 900, column 9) _lhsOidUseOccGam = gamUnions [ _idUseOccGam , _idUseOccGenerGam ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1050, column 9) _derivingsOidOccDefsData = (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then _idOccDefsGener else []) ++ [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 119, column 9) _idOccDef = IdOcc _typerefname IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, column 9) _idOccDefsCon = [ IdOcc n IdOcc_Val | n <- _constructorsIconrefnames ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, 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 119, column 9) _generMaxRemArity = length _typelefthandsideItypevariables `min` 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 124, column 29) (_idOccDefsGener,_generArities) = if ehcOptGenGenerics _lhsIopts || _derivingsIhasGenericDeriving then let arities = [0 .. _generMaxRemArity] in ([IdOcc (hsnNm2GenerReprSyn a _typerefname) IdOcc_Type | a <- arities], arities) else ([], []) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 119, 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 _errIdUseGener , 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 || _derivingsIhasGenericDeriving 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) _mkEhGener = \arity -> rngLift range_ EH.Decl_GenerRep _generMaxRemArity arity _typerefname _constructorsIconrefnames _constructorsIconAndFldrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 165, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _derivingsIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _derivingsIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _contextItrpp >< _typelefthandsideItrpp >< _constructorsItrpp >< _derivingsItrpp -- 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) _contextOtr = _lhsItr -- 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) _typelefthandsideOtr = _lhsItr -- 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) _constructorsOtr = _lhsItr -- 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 (down) _derivingsOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _derivingsOtr = _lhsItr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItrpp,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL _typelefthandsideOtr ( _constructorsIconAndFldrefnames,_constructorsIconrefnames,_constructorsIeh,_constructorsIerrSq,_constructorsIfreeTvarS,_constructorsIgUniq,_constructorsIhasFlds,_constructorsIidUseOccGam,_constructorsIpp,_constructorsIppWrap,_constructorsItopInstanceNmL,_constructorsItrpp,_constructorsIundefOccGam) = constructors_ _constructorsOfixityGam _constructorsOgUniq _constructorsOidGam _constructorsOmoduleNm _constructorsOnmLev _constructorsOopts _constructorsOpatchEhNmInInstance _constructorsOtopInstanceNmL _constructorsOtr ( _derivingsIerrSq,_derivingsIgUniq,_derivingsIgathFixityGam,_derivingsIgathPragmas,_derivingsIhasGenericDeriving,_derivingsIidDefOccGam,_derivingsIidDpdMp,_derivingsIidInClassTySigDefOccGam,_derivingsIidInInstanceValDefOccGam,_derivingsIidOccDefs,_derivingsIidUseOccGam,_derivingsIneedsError,_derivingsIpp,_derivingsIppL,_derivingsIppWrap,_derivingsItopInstanceNmL,_derivingsItrpp,_derivingsIundefOccGam) = derivings_ _derivingsOehDataTyExpr _derivingsOfixityGam _derivingsOgUniq _derivingsOgenerDerivMp _derivingsOidGam _derivingsOidOccDefsData _derivingsOmoduleNm _derivingsOnameDeclCxt _derivingsOnmLev _derivingsOopts _derivingsOpatchEhNmInInstance _derivingsOpragmas _derivingsOtopInstanceNmL _derivingsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_KindSignature :: Range -> Names -> T_Kind -> T_Declaration sem_Declaration_KindSignature range_ names_ kind_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _kindOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _kindOgUniq :: UID _kindOnmLev :: NmLev _kindOopts :: EHCOpts _kindOpatchEhNmInInstance :: PatchEhNmInInstance _kindOtopInstanceNmL :: ([HsName]) _kindOtr :: (TraceOn -> [PP_Doc] -> TrPP) _kindIconNm :: Name _kindIeh :: (EH.KiExpr) _kindIerrSq :: ErrSq _kindIfreeTvarS :: HsNameS _kindIgUniq :: UID _kindIidUseOccGam :: IdUseOccGam _kindIpp :: PP_Doc _kindIppWrap :: (PP_Doc -> PP_Doc) _kindItopInstanceNmL :: ([HsName]) _kindItrpp :: TrPP _kindIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 216, 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 216, column 9) _idDefOccGamKind = kvarS2IdDefOccGam _nmLev range_ _kindIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 445, column 9) _kindOidGam = gamUnion _idDefOccGamKind _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 915, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _kindIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 915, column 9) _idDpdMp = idToOccL2DpdMp (gamKeys _idDefOccGam) _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 918, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_kindIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 134, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _kindItrpp -- 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 -- copy rule (down) _kindOtr = _lhsItr ( _kindIconNm,_kindIeh,_kindIerrSq,_kindIfreeTvarS,_kindIgUniq,_kindIidUseOccGam,_kindIpp,_kindIppWrap,_kindItopInstanceNmL,_kindItrpp,_kindIundefOccGam) = kind_ _kindOgUniq _kindOidGam _kindOnmLev _kindOopts _kindOpatchEhNmInInstance _kindOtopInstanceNmL _kindOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _typeOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 260, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 264, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Foreign _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 439, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 920, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _typeIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 920, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 923, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typeIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 155, column 9) _idOccDef = IdOcc _refname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 155, 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 149, 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 324, column 9) _nmForParse = maybe "" id importname_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 325, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _typeOidGam :: IdDefOccGam _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 260, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 264, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Val_Foreign _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 439, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 758, 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 997, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamExport,_typeIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 997, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1001, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typeIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 158, column 9) _idOccDef = IdOcc _exportrefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 158, 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 153, 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 142, column 9) _nmForParse = maybe "" id exportname_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 143, column 25) (_ent,_entErrs) = parseForeignEnt ForeignDirection_Export callconvention_ (Just $ show name_) _nmForParse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 142, 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 146, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (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 _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _contextOfixityGam :: FixityGam _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _typelefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _dependenciesOfixityGam :: FixityGam _dependenciesOgUniq :: UID _dependenciesOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _dependenciesOidGam :: IdDefOccGam _dependenciesOmoduleNm :: HsName _dependenciesOnameDeclCxt :: NameDeclCxt _dependenciesOnmLev :: NmLev _dependenciesOopts :: EHCOpts _dependenciesOpatchEhNmInInstance :: PatchEhNmInInstance _dependenciesOpragmas :: (Set.Set Pragma.Pragma) _dependenciesOtopInstanceNmL :: ([HsName]) _dependenciesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _whereOcaseId :: UID _whereOfixityGam :: FixityGam _whereOgUniq :: UID _whereOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _whereOidGam :: IdDefOccGam _whereOmoduleNm :: HsName _whereOnameDeclCxt :: NameDeclCxt _whereOnmLev :: NmLev _whereOopts :: EHCOpts _whereOpatchEhNmInInstance :: PatchEhNmInInstance _whereOpragmas :: (Set.Set Pragma.Pragma) _whereOtopInstanceNmL :: ([HsName]) _whereOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextItrpp :: TrPP _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]) _typelefthandsideItrpp :: TrPP _typelefthandsideItypevariables :: Names _typelefthandsideIundefOccGam :: IdUseOccGam _dependenciesIeh :: ([EH.FuncDep]) _dependenciesIerrSq :: ErrSq _dependenciesIgUniq :: UID _dependenciesIgathFixityGam :: FixityGam _dependenciesIgathPragmas :: (Set.Set Pragma.Pragma) _dependenciesIidDefOccGam :: IdDefOccGam _dependenciesIidDpdMp :: IdDpdMp _dependenciesIidInClassTySigDefOccGam :: IdDefOccGam _dependenciesIidInInstanceValDefOccGam :: IdDefOccGam _dependenciesIidOccDefs :: ([IdOcc]) _dependenciesIidUseOccGam :: IdUseOccGam _dependenciesIneedsError :: Bool _dependenciesIpp :: PP_Doc _dependenciesIppWrap :: (PP_Doc -> PP_Doc) _dependenciesItopInstanceNmL :: ([HsName]) _dependenciesItrpp :: TrPP _dependenciesIundefOccGam :: IdUseOccGam _whereIeh :: (Maybe [EH.Decl]) _whereIerrSq :: ErrSq _whereIgUniq :: UID _whereIgathFixityGam :: FixityGam _whereIgathPragmas :: (Set.Set Pragma.Pragma) _whereIidDefOccGam :: IdDefOccGam _whereIidDpdMp :: IdDpdMp _whereIidInClassTySigDefOccGam :: IdDefOccGam _whereIidInInstanceValDefOccGam :: IdDefOccGam _whereIidOccDefs :: ([IdOcc]) _whereIidUseOccGam :: IdUseOccGam _whereIneedsError :: Bool _whereIpp :: PP_Doc _whereIppWrap :: (PP_Doc -> PP_Doc) _whereItopInstanceNmL :: ([HsName]) _whereItrpp :: TrPP _whereIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 27, column 9) _trpp = (_lhsItr TraceOn_HsOcc $ [_idOccDef >#< "= Class" >#< _classrefname] ++ [ "idUseHereOccL=" >#< ppBracketsCommas _idUseHereOccL ]) >< _contextItrpp >< _typelefthandsideItrpp >< _dependenciesItrpp >< _whereItrpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDeclCxt.ag"(line 21, column 9) _nameDeclCxt = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then NameDeclCxt_Class else NameDeclCxt_Plain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 15, column 9) _generderivnames = Map.findWithDefault [] (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then _typelefthandsideIname else _classrefname) _lhsIgenerDerivMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 220, column 9) _idDefOccGamType = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 220, column 9) _idDefOccGamSigAsVar = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then _whereIidInClassTySigDefOccGam else _whereIidInClassTySigDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 220, column 9) _idDefOccGam = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Class_Def _eh _ehInst) [_idOccDef] `gamUnion` _idDefOccGamSigAsVar else mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Class_Def _eh _ehInst) [_idOccDef] `gamUnion` _idDefOccGamSigAsVar -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 256, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 448, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 448, 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 789, column 29) (_generderivrefnames,_idUseOccGamGenerDeriv,_errIdUseGenerDeriv) = let (ns,gs,es) = unzip3 [ ((fld',dflt'),g,e) | (fld,dflt) <- _generderivnames , let (_,[fld',dflt'],g,e) = mkUseOccGam _lhsIopts _lhsIidGam [fld,dflt] IdOcc_Val IdAsp_Val_Var range_ ] in if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then (ns, gamUnions gs, concat es) else (_generderivnames, emptyGam, []) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 925, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [ _contextIidUseOccGam,_whereIidUseOccGam , if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then _idUseOccGamGenerDeriv else emptyGam ]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 925, column 9) _idDpdMp = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then idDpdMpUnions [ idToOccL2DpdMp [_idOccDef] _idUseHereOccL , idToOccGam2DpdMp [_idOccDef] _idDefOccGamSigAsVar , idFrOccGam2DpdMp _idDefOccGamSigAsVar [_idOccDef] , _whereIidDpdMp ] else 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 949, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_whereIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1222, column 29) (_,_ehReorderedDecls,_errReorder) = mkIdOccSccEH _lhsIopts range_ False _whereIidDefOccGam Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 136, column 9) _idOccDef = IdOcc _classrefname IdOcc_Class -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 136, column 9) _idOccDefVal = IdOcc _instancerefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 136, column 9) _idOccDefsSig = _whereIidOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 136, column 9) _idOccDefs = [_idOccDef] ++ _idOccDefsSig -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 242, 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 130, column 9) _errSq = Seq.unions [ Seq.fromList _errDupIntro, Seq.fromList _errReorder, _contextIerrSq, _typelefthandsideIerrSq , _dependenciesIerrSq , Seq.fromList _errIdUseGenerDeriv , _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 _classrefname a _dependenciesIeh (Just _instancerefname) sigs _generderivrefnames , 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 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 304, 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 = _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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _dependenciesIidInClassTySigDefOccGam `gamAddGam` _whereIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _dependenciesIidInInstanceValDefOccGam `gamAddGam` _whereIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _trpp -- 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) _contextOtr = _lhsItr -- 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) _typelefthandsideOtr = _lhsItr -- 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) _dependenciesOnameDeclCxt = _nameDeclCxt -- 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) _dependenciesOtr = _lhsItr -- 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) _whereOnameDeclCxt = _nameDeclCxt -- 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 -- copy rule (down) _whereOtr = _lhsItr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItrpp,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL _typelefthandsideOtr ( _dependenciesIeh,_dependenciesIerrSq,_dependenciesIgUniq,_dependenciesIgathFixityGam,_dependenciesIgathPragmas,_dependenciesIidDefOccGam,_dependenciesIidDpdMp,_dependenciesIidInClassTySigDefOccGam,_dependenciesIidInInstanceValDefOccGam,_dependenciesIidOccDefs,_dependenciesIidUseOccGam,_dependenciesIneedsError,_dependenciesIpp,_dependenciesIppWrap,_dependenciesItopInstanceNmL,_dependenciesItrpp,_dependenciesIundefOccGam) = dependencies_ _dependenciesOfixityGam _dependenciesOgUniq _dependenciesOgenerDerivMp _dependenciesOidGam _dependenciesOmoduleNm _dependenciesOnameDeclCxt _dependenciesOnmLev _dependenciesOopts _dependenciesOpatchEhNmInInstance _dependenciesOpragmas _dependenciesOtopInstanceNmL _dependenciesOtr ( _whereIeh,_whereIerrSq,_whereIgUniq,_whereIgathFixityGam,_whereIgathPragmas,_whereIidDefOccGam,_whereIidDpdMp,_whereIidInClassTySigDefOccGam,_whereIidInInstanceValDefOccGam,_whereIidOccDefs,_whereIidUseOccGam,_whereIneedsError,_whereIpp,_whereIppWrap,_whereItopInstanceNmL,_whereItrpp,_whereIundefOccGam) = where_ _whereOcaseId _whereOfixityGam _whereOgUniq _whereOgenerDerivMp _whereOidGam _whereOmoduleNm _whereOnameDeclCxt _whereOnmLev _whereOopts _whereOpatchEhNmInInstance _whereOpragmas _whereOtopInstanceNmL _whereOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (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 _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _contextOfixityGam :: FixityGam _contextOidGam :: IdDefOccGam _contextOnmLev :: NmLev _contextOopts :: EHCOpts _contextOpatchEhNmInInstance :: PatchEhNmInInstance _contextOtopInstanceNmL :: ([HsName]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _whereOcaseId :: UID _whereOfixityGam :: FixityGam _whereOgUniq :: UID _whereOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _whereOidGam :: IdDefOccGam _whereOmoduleNm :: HsName _whereOnameDeclCxt :: NameDeclCxt _whereOnmLev :: NmLev _whereOopts :: EHCOpts _whereOpragmas :: (Set.Set Pragma.Pragma) _whereOtopInstanceNmL :: ([HsName]) _whereOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextItrpp :: TrPP _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam _whereIeh :: (Maybe [EH.Decl]) _whereIerrSq :: ErrSq _whereIgUniq :: UID _whereIgathFixityGam :: FixityGam _whereIgathPragmas :: (Set.Set Pragma.Pragma) _whereIidDefOccGam :: IdDefOccGam _whereIidDpdMp :: IdDpdMp _whereIidInClassTySigDefOccGam :: IdDefOccGam _whereIidInInstanceValDefOccGam :: IdDefOccGam _whereIidOccDefs :: ([IdOcc]) _whereIidUseOccGam :: IdUseOccGam _whereIneedsError :: Bool _whereIpp :: PP_Doc _whereIppWrap :: (PP_Doc -> PP_Doc) _whereItopInstanceNmL :: ([HsName]) _whereItrpp :: TrPP _whereIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 32, column 9) _trpp = (_lhsItr TraceOn_HsOcc $ [_idOccDef >#< "= Instance" >#< _classrefname] ++ [ "idUseHereOccL=" >#< ppBracketsCommas _idUseHereOccL , "generRequiresReprTypes=" >#< _generRequiresReprTypes , "idUseOccGamGenerRepr=" >#< ppGam _idUseOccGamGenerRepr , "idUseHereGenerReprOccL=" >#< ppBracketsCommas _idUseHereGenerReprOccL ]) >< _contextItrpp >< _typeItrpp >< _whereItrpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDeclCxt.ag"(line 19, column 9) _nameDeclCxt = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then NameDeclCxt_Instance else NameDeclCxt_Plain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 20, column 9) _generRequiresReprTypes = case (instVariant_, Map.lookup _typeIconNm _lhsIgenerDerivMp) of (InstDeriving InstDerivingFrom_Standalone, Just (_:_)) | ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts -> True _ -> False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 232, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 232, column 9) _idDefOccGamValAsVar = _whereIidInInstanceValDefOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 232, column 9) _idDefOccGam = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then mkDefOccGam _lhsInmLev range_ (IdAsp_Inst_Def _eh _classrefname) [_idOccDef] `gamUnion` mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var [_idOccDefVal] else 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 452, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 702, 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 705, column 29) (_,_,_idUseOccGamGenerRepr,_) = mkUseOccGamDfltAsp _lhsIopts _lhsIidGam (if _generRequiresReprTypes then [(hsnNm2GenerReprSyn a $ ioccNm o, ioccKind o) | (o,_) <- gamToAssocL _typeIidUseOccGam, a <- [0 .. 1]] else []) range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 951, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamInst,_contextIidUseOccGam,_typeIidUseOccGam,_whereIidUseOccGam]) else splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamInst,_contextIidUseOccGam,_typeIidUseOccGam,_whereIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 957, column 29) (_,_idUseHereGenerReprOccL,_,_) = splitIdUseOccGam _lhsInmLev _idUseOccGamGenerRepr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 951, column 9) _idDpdMp = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then idDpdMpUnions [ idToOccL2DpdMp [_idOccDef] _idUseHereOccL , idDpdMpSingleton _idOccDefVal _idOccDef , idToOccL2DpdMp [_idOccDef] _idUseHereGenerReprOccL , _whereIidDpdMp ] else idDpdMpUnions [ idToOccL2DpdMp [_idOccDef] _idUseHereOccL , idDpdMpSingleton _idOccDefVal _idOccDef , _whereIidDpdMp ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 971, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_whereIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1222, column 29) (_,_ehReorderedDecls,_errReorder) = mkIdOccSccEH _lhsIopts range_ False _whereIidDefOccGam Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1257, 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 141, column 9) _idOccDef = IdOcc _instancerefname IdOcc_Inst -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 141, column 9) _idOccDefVal = IdOcc _instancerefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 141, column 9) _idOccDefs = [_idOccDef,_idOccDefVal] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 240, 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 137, 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 193, column 9) _isAsPred = True -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 304, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _whereIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _whereIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _trpp -- 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 (down) _contextOtr = _lhsItr -- 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) _typeOtr = _lhsItr -- 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) _whereOnameDeclCxt = _nameDeclCxt -- copy rule (from local) _whereOnmLev = _nmLev -- copy rule (down) _whereOopts = _lhsIopts -- copy rule (down) _whereOpragmas = _lhsIpragmas -- copy rule (chain) _whereOtopInstanceNmL = _typeItopInstanceNmL -- copy rule (down) _whereOtr = _lhsItr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr ( _whereIeh,_whereIerrSq,_whereIgUniq,_whereIgathFixityGam,_whereIgathPragmas,_whereIidDefOccGam,_whereIidDpdMp,_whereIidInClassTySigDefOccGam,_whereIidInInstanceValDefOccGam,_whereIidOccDefs,_whereIidUseOccGam,_whereIneedsError,_whereIpp,_whereIppWrap,_whereItopInstanceNmL,_whereItrpp,_whereIundefOccGam) = where_ _whereOcaseId _whereOfixityGam _whereOgUniq _whereOgenerDerivMp _whereOidGam _whereOmoduleNm _whereOnameDeclCxt _whereOnmLev _whereOopts _whereOpatchEhNmInInstance _whereOpragmas _whereOtopInstanceNmL _whereOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_InstanceUseImplicitly :: Range -> T_Expression -> T_Type -> T_Declaration sem_Declaration_InstanceUseImplicitly range_ expression_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOtopInstanceNmL :: ([HsName]) _expressionOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 40, column 9) _trpp = (_lhsItr TraceOn_HsOcc $ [_idOccDef >#< "= InstanceUseImplicitly" >#< _classrefname] ++ [ "idUseHereOccL=" >#< ppBracketsCommas _idUseHereOccL ]) >< _expressionItrpp >< _typeItrpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 242, column 9) _idDefOccGam = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then mkDefOccGam _lhsInmLev range_ (IdAsp_Inst_Def _eh _classrefname) [_idOccDef] `gamUnion` mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var [_idOccDefVal] else mkDefOccGam _lhsInmLev range_ (IdAsp_Inst_Def _eh _classrefname) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 715, 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 973, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamInst,_typeIidUseOccGam,_expressionIidUseOccGam]) else splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamInst,_typeIidUseOccGam,_expressionIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 973, column 9) _idDpdMp = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then idDpdMpUnions [ idToOccL2DpdMp [_idOccDef] _idUseHereOccL , idDpdMpSingleton _idOccDefVal _idOccDef ] else idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 145, column 9) _idOccDef = IdOcc _instancerefname IdOcc_Inst -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 145, column 9) _idOccDefVal = IdOcc _instancerefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 145, column 9) _idOccDefs = if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then [_idOccDef,_idOccDefVal] else [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 244, 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 139, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _expressionIerrSq, _typeIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pretty.ag"(line 65, column 9) _pp = "instance" >#< _expressionIpp >#< "<:" >#< _typeIpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 130, column 9) _eh = let h = panicJust "HS.ToEH.InstanceUseImplicitly.eh.type.ehMbAsPr" _typeIehMbAsPr in rngLift range_ EH.Decl_InstanceIntro (Just _instancerefname) _expressionIeh h -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 133, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 193, column 9) _isAsPred = True -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 304, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 . _typeIppWrap -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _trpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = _undefOccGam -- copy rule (up) _lhsOgUniq = _typeIgUniq -- 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) _expressionOtr = _lhsItr -- copy rule (from local) _typeOdoGenVarWild = _doGenVarWild -- copy rule (down) _typeOfixityGam = _lhsIfixityGam -- copy rule (chain) _typeOgUniq = _expressionIgUniq -- copy rule (down) _typeOidGam = _lhsIidGam -- 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 = _expressionItopInstanceNmL -- copy rule (down) _typeOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_Default :: Range -> MaybeName -> T_Types -> T_Declaration sem_Declaration_Default range_ name_ types_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _typesOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typesOfixityGam :: FixityGam _typesOidGam :: IdDefOccGam _typesOisAsPred :: Bool _typesOnmLev :: NmLev _typesOopts :: EHCOpts _typesOpatchEhNmInInstance :: PatchEhNmInInstance _typesOtopInstanceNmL :: ([HsName]) _typesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typesIeh :: ([EH.TyExpr]) _typesIerrSq :: ErrSq _typesIfreeTvarS :: HsNameS _typesIgUniq :: UID _typesIidUseOccGam :: IdUseOccGam _typesIpp :: PP_Doc _typesIppL :: ([PP_Doc]) _typesIppWrap :: (PP_Doc -> PP_Doc) _typesItopInstanceNmL :: ([HsName]) _typesItrpp :: TrPP _typesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 247, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ (IdAsp_Dflt_Def _eh _ignoredecl) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 718, 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 986, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev (gamUnions [_idUseOccGamDflt,_typesIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 986, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 990, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typesIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 149, column 9) _idOccDef = IdOcc _defaultname IdOcc_Dflt -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 149, column 9) _idOccDefs = [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 246, 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 141, 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 135, column 9) _ignoredecl = null _classrefnames -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 135, column 9) _eh = rngLift range_ EH.Decl_Default _classrefname _typesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 137, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _typesItrpp -- 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 -- copy rule (down) _typesOtr = _lhsItr ( _typesIeh,_typesIerrSq,_typesIfreeTvarS,_typesIgUniq,_typesIidUseOccGam,_typesIpp,_typesIppL,_typesIppWrap,_typesItopInstanceNmL,_typesItrpp,_typesIundefOccGam) = types_ _typesOfixityGam _typesOgUniq _typesOidGam _typesOisAsPred _typesOnmLev _typesOopts _typesOpatchEhNmInInstance _typesOtopInstanceNmL _typesOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_Type :: Range -> T_TypeLeftHandSide -> T_Type -> T_Declaration sem_Declaration_Type range_ typelefthandside_ type_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typelefthandsideOfixityGam :: FixityGam _typelefthandsideOgUniq :: UID _typelefthandsideOidGam :: IdDefOccGam _typelefthandsideOmoduleNm :: HsName _typelefthandsideOnmLev :: NmLev _typelefthandsideOopts :: EHCOpts _typelefthandsideOpatchEhNmInInstance :: PatchEhNmInInstance _typelefthandsideOtopInstanceNmL :: ([HsName]) _typelefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typelefthandsideItrpp :: TrPP _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 249, column 9) _idDefOccGamType = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 249, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev _typelefthandsideIrange (IdAsp_Type_Def _eh) _idOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 256, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _nmLev _typelefthandsideIrange _typelefthandsideItypevariables -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 443, column 9) _idGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 992, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam _lhsInmLev _typeIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 992, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 995, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_typeIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 152, column 9) _idOccDef = IdOcc _typerefname IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 152, 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 145, 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 139, 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 140, column 9) _lhsOeh = [_eh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _typelefthandsideItrpp >< _typeItrpp -- 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 (down) _typelefthandsideOtr = _lhsItr -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _typelefthandsideIeh,_typelefthandsideIerrSq,_typelefthandsideIfreeTvarS,_typelefthandsideIgUniq,_typelefthandsideIidDefOccGam,_typelefthandsideIidOccDefs,_typelefthandsideIidUseOccGam,_typelefthandsideIname,_typelefthandsideIpp,_typelefthandsideIppWrap,_typelefthandsideIrange,_typelefthandsideItopInstanceNmL,_typelefthandsideItrpp,_typelefthandsideItypevariables,_typelefthandsideIundefOccGam) = typelefthandside_ _typelefthandsideOfixityGam _typelefthandsideOgUniq _typelefthandsideOidGam _typelefthandsideOmoduleNm _typelefthandsideOnmLev _typelefthandsideOopts _typelefthandsideOpatchEhNmInInstance _typelefthandsideOtopInstanceNmL _typelefthandsideOtr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_Pragma :: Range -> T_Pragma -> T_Declaration sem_Declaration_Pragma range_ pragma_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _pragmaOgUniq :: UID _pragmaOidGam :: IdDefOccGam _pragmaOnmLev :: NmLev _pragmaOopts :: EHCOpts _pragmaOpatchEhNmInInstance :: PatchEhNmInInstance _pragmaOtopInstanceNmL :: ([HsName]) _pragmaOtr :: (TraceOn -> [PP_Doc] -> TrPP) _pragmaIerrSq :: ErrSq _pragmaIgUniq :: UID _pragmaIgathPragmas :: (Set.Set Pragma.Pragma) _pragmaIidUseOccGam :: IdUseOccGam _pragmaIpp :: PP_Doc _pragmaIppWrap :: (PP_Doc -> PP_Doc) _pragmaItopInstanceNmL :: ([HsName]) _pragmaItrpp :: TrPP _pragmaIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, 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 148, column 9) _eh = undefined -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 149, column 9) _lhsOeh = [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _pragmaIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _pragmaItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _pragmaOtr = _lhsItr ( _pragmaIerrSq,_pragmaIgUniq,_pragmaIgathPragmas,_pragmaIidUseOccGam,_pragmaIpp,_pragmaIppWrap,_pragmaItopInstanceNmL,_pragmaItrpp,_pragmaIundefOccGam) = pragma_ _pragmaOgUniq _pragmaOidGam _pragmaOnmLev _pragmaOopts _pragmaOpatchEhNmInInstance _pragmaOtopInstanceNmL _pragmaOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declaration_Module :: Range -> MaybeName -> T_MaybeExports -> T_Declaration sem_Declaration_Module range_ name_ exports_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _exportsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _exportsIerrSq :: ErrSq _exportsIgUniq :: UID _exportsIgathFixityGam :: FixityGam _exportsIidUseOccGam :: IdUseOccGam _exportsIpp :: PP_Doc _exportsIppWrap :: (PP_Doc -> PP_Doc) _exportsItopInstanceNmL :: ([HsName]) _exportsItrpp :: TrPP _exportsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1263, column 9) _patchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 148, column 9) _eh = undefined -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 149, column 9) _lhsOeh = [] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 195, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 233, column 9) _doGenVarWild = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, column 9) _isMainMod = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 264, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _exportsIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _exportsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _exportsOtr = _lhsItr ( _exportsIerrSq,_exportsIgUniq,_exportsIgathFixityGam,_exportsIidUseOccGam,_exportsIpp,_exportsIppWrap,_exportsItopInstanceNmL,_exportsItrpp,_exportsIundefOccGam) = exports_ _exportsOfixityGam _exportsOgUniq _exportsOidGam _exportsOisMainMod _exportsOisTopMod _exportsOmoduleNm _exportsOnmLev _exportsOopts _exportsOpatchEhNmInInstance _exportsOtopInstanceNmL _exportsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Declarations ------------------------------------------------ {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.Decl] errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idInClassTySigDefOccGam : IdDefOccGam idInInstanceValDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.Decl]),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,IdDefOccGam,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Declarations_Cons :: T_Declaration -> T_Declarations -> T_Declarations sem_Declarations_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnameDeclCxt :: NameDeclCxt _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnameDeclCxt :: NameDeclCxt _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: ([EH.Decl]) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIgathPragmas :: (Set.Set Pragma.Pragma) _hdIidDefOccGam :: IdDefOccGam _hdIidDpdMp :: IdDpdMp _hdIidInClassTySigDefOccGam :: IdDefOccGam _hdIidInInstanceValDefOccGam :: IdDefOccGam _hdIidOccDefs :: ([IdOcc]) _hdIidUseOccGam :: IdUseOccGam _hdIneedsError :: Bool _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.Decl]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIgathPragmas :: (Set.Set Pragma.Pragma) _tlIidDefOccGam :: IdDefOccGam _tlIidDpdMp :: IdDpdMp _tlIidInClassTySigDefOccGam :: IdDefOccGam _tlIidInInstanceValDefOccGam :: IdDefOccGam _tlIidOccDefs :: ([IdOcc]) _tlIidUseOccGam :: IdUseOccGam _tlIneedsError :: Bool _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _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 182, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _hdIidDpdMp `idDpdMpUnion` _tlIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _hdIidInClassTySigDefOccGam `gamAddGam` _tlIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _hdIidInInstanceValDefOccGam `gamAddGam` _tlIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOnameDeclCxt = _lhsInameDeclCxt -- 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) _hdOtr = _lhsItr -- 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) _tlOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIgathPragmas,_hdIidDefOccGam,_hdIidDpdMp,_hdIidInClassTySigDefOccGam,_hdIidInInstanceValDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIneedsError,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnameDeclCxt _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIgathPragmas,_tlIidDefOccGam,_tlIidDpdMp,_tlIidInClassTySigDefOccGam,_tlIidInInstanceValDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIneedsError,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnameDeclCxt _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Declarations_Nil :: T_Declarations sem_Declarations_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Deriving ---------------------------------------------------- {- visit 0: inherited attributes: ehDataTyExpr : EH.TyExpr fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam idOccDefsData : [IdOcc] moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma hasGenericDeriving : Bool idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idInClassTySigDefOccGam : IdDefOccGam idInInstanceValDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP undefOccGam : IdUseOccGam alternatives: alternative Deriving: child range : {Range} child maybeinstancename : {MaybeName} child useimplicitly : {Bool} child name : {Name} visit 0: local idDefOccGam : _ local classrefname : _ local idUseOccGam : _ local errIdUse : _ local instancerefname : _ local idOccDef : _ local idOccDefVal : _ local idOccDefs : _ local hasGenericDeriving : _ 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),Bool,IdDefOccGam,IdDpdMp,IdDefOccGam,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Deriving_Deriving :: Range -> MaybeName -> Bool -> Name -> T_Deriving sem_Deriving_Deriving range_ maybeinstancename_ useimplicitly_ name_ = (\ _lhsIehDataTyExpr _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsIidOccDefsData _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOidDpdMp :: IdDpdMp _lhsOtopInstanceNmL :: ([HsName]) _lhsOgUniq :: UID _lUniq :: UID _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOhasGenericDeriving :: Bool _lhsOidDefOccGam :: IdDefOccGam _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 329, column 9) _idDefOccGam = if _hasGenericDeriving then emptyGam else 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 723, column 29) (_classrefname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] IdOcc_Class IdAsp_Class_Class range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1025, column 9) _lhsOidDpdMp = if _hasGenericDeriving then emptyIdDpdMp else (if ehcOptIsUnderDev UnderDev_NameAnalysis _lhsIopts then idToOccGam2DpdMp [_idOccDef] _idUseOccGam else emptyIdDpdMp) `idDpdMpUnion` idDpdMpUnions [ idDpdMpList _idOccDef _lhsIidOccDefsData , 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 190, column 9) _idOccDef = IdOcc _instancerefname IdOcc_Inst -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 190, column 9) _idOccDefVal = IdOcc _instancerefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 190, column 9) _idOccDefs = if _hasGenericDeriving then [] else [_idOccDef,_idOccDefVal] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 200, column 9) _hasGenericDeriving = name_ == (hsnQualified $ ehbnGenerClassGeneric $ ehcOptBuiltinNames $ _lhsIopts) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 254, column 9) _instancename = maybe (mkHNm _lUniq) id maybeinstancename_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 164, 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 169, column 9) _eh = let h = rngLift range_ EH.TyExpr_Pred $ rngLift range_ EH.PrExpr_Class _classrefname [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 309, 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/NameDef.ag"(line 196, column 43) _lhsOhasGenericDeriving = _hasGenericDeriving -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _idUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOhasGenericDeriving,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Derivings --------------------------------------------------- {- visit 0: inherited attributes: ehDataTyExpr : EH.TyExpr fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam idOccDefsData : [IdOcc] moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma hasGenericDeriving : Bool idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idInClassTySigDefOccGam : IdDefOccGam idInInstanceValDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppL : [PP_Doc] ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),Bool,IdDefOccGam,IdDpdMp,IdDefOccGam,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Derivings_Cons :: T_Deriving -> T_Derivings -> T_Derivings sem_Derivings_Cons hd_ tl_ = (\ _lhsIehDataTyExpr _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsIidOccDefsData _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOhasGenericDeriving :: Bool _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOehDataTyExpr :: (EH.TyExpr) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOidOccDefsData :: ([IdOcc]) _hdOmoduleNm :: HsName _hdOnameDeclCxt :: NameDeclCxt _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOehDataTyExpr :: (EH.TyExpr) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOidOccDefsData :: ([IdOcc]) _tlOmoduleNm :: HsName _tlOnameDeclCxt :: NameDeclCxt _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIgathPragmas :: (Set.Set Pragma.Pragma) _hdIhasGenericDeriving :: Bool _hdIidDefOccGam :: IdDefOccGam _hdIidDpdMp :: IdDpdMp _hdIidInClassTySigDefOccGam :: IdDefOccGam _hdIidInInstanceValDefOccGam :: IdDefOccGam _hdIidOccDefs :: ([IdOcc]) _hdIidUseOccGam :: IdUseOccGam _hdIneedsError :: Bool _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIgathPragmas :: (Set.Set Pragma.Pragma) _tlIhasGenericDeriving :: Bool _tlIidDefOccGam :: IdDefOccGam _tlIidDpdMp :: IdDpdMp _tlIidInClassTySigDefOccGam :: IdDefOccGam _tlIidInInstanceValDefOccGam :: IdDefOccGam _tlIidOccDefs :: ([IdOcc]) _tlIidUseOccGam :: IdUseOccGam _tlIneedsError :: Bool _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _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/NameDef.ag"(line 196, column 43) _lhsOhasGenericDeriving = _hdIhasGenericDeriving || _tlIhasGenericDeriving -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _hdIidDpdMp `idDpdMpUnion` _tlIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _hdIidInClassTySigDefOccGam `gamAddGam` _tlIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _hdIidInInstanceValDefOccGam `gamAddGam` _tlIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOidOccDefsData = _lhsIidOccDefsData -- copy rule (down) _hdOmoduleNm = _lhsImoduleNm -- copy rule (down) _hdOnameDeclCxt = _lhsInameDeclCxt -- 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) _hdOtr = _lhsItr -- 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) _tlOidOccDefsData = _lhsIidOccDefsData -- copy rule (down) _tlOmoduleNm = _lhsImoduleNm -- copy rule (down) _tlOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIgathPragmas,_hdIhasGenericDeriving,_hdIidDefOccGam,_hdIidDpdMp,_hdIidInClassTySigDefOccGam,_hdIidInInstanceValDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIneedsError,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOehDataTyExpr _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOidOccDefsData _hdOmoduleNm _hdOnameDeclCxt _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIgathPragmas,_tlIhasGenericDeriving,_tlIidDefOccGam,_tlIidDpdMp,_tlIidInClassTySigDefOccGam,_tlIidInInstanceValDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIneedsError,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOehDataTyExpr _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOidOccDefsData _tlOmoduleNm _tlOnameDeclCxt _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOhasGenericDeriving,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Derivings_Nil :: T_Derivings sem_Derivings_Nil = (\ _lhsIehDataTyExpr _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsIidOccDefsData _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOhasGenericDeriving :: Bool _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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/NameDef.ag"(line 196, column 43) _lhsOhasGenericDeriving = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOhasGenericDeriving,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Export ------------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Export_Variable :: Range -> Name -> T_Export sem_Export_Variable range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Export_TypeOrClassComplete :: Range -> Name -> T_Export sem_Export_TypeOrClassComplete range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Export_Module :: Range -> Name -> T_Export sem_Export_Module range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Exports ----------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisMainMod :: Bool _tlOisTopMod :: Bool _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOisMainMod _hdOisTopMod _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOisMainMod _tlOisTopMod _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Exports_Nil :: T_Exports sem_Exports_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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 nameDeclCxt : _ 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( Name,(EH.Expr),ErrSq,UID,IdUseOccGam,(OpChain EH.Expr),MaybeName,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _literalOgUniq :: UID _literalOidGam :: IdDefOccGam _literalOnmLev :: NmLev _literalOopts :: EHCOpts _literalOpatchEhNmInInstance :: PatchEhNmInInstance _literalOtopInstanceNmL :: ([HsName]) _literalOtr :: (TraceOn -> [PP_Doc] -> TrPP) _literalIeh :: Literal _literalIerrSq :: ErrSq _literalIgUniq :: UID _literalIidUseOccGam :: IdUseOccGam _literalIpp :: PP_Doc _literalIppWrap :: (PP_Doc -> PP_Doc) _literalItopInstanceNmL :: ([HsName]) _literalItrpp :: TrPP _literalIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 554, column 9) _litnames = litNames _lhsIopts _literalIeh False 1 -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 555, column 29) (_litrefname,_litrefnames,_idUseOccGam,_errIdUse) = mkUseOccGam' _lhsIopts _lhsIidGam _litnames range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 557, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam, _literalIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 467, 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 199, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _literalItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _literalOtr = _lhsItr ( _literalIeh,_literalIerrSq,_literalIgUniq,_literalIidUseOccGam,_literalIpp,_literalIppWrap,_literalItopInstanceNmL,_literalItrpp,_literalIundefOccGam) = literal_ _literalOgUniq _literalOidGam _literalOnmLev _literalOopts _literalOpatchEhNmInInstance _literalOtopInstanceNmL _literalOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Expression_Variable :: Range -> Name -> T_Expression sem_Expression_Variable range_ name_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 559, column 9) _idAsp = IdAsp_Val_Var -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 565, 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 272, 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 473, column 9) _eh = rngLift range_ EH.Expr_Var _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_Expression_Constructor :: Range -> Name -> T_Expression sem_Expression_Constructor range_ name_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 562, column 9) _idAsp = IdAsp_Val_Con -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 565, 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 270, 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 475, column 9) _eh = rngLift range_ EH.Expr_Con _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_Expression_TupleConstructor :: Range -> Int -> T_Expression sem_Expression_TupleConstructor range_ arity_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 477, 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 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 480, column 9) _eh = rngLift range_ EH.Expr_Parens _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _functionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _argumentsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _functionItrpp :: TrPP _functionIundefOccGam :: IdUseOccGam _argumentsIeh :: ([EH.Expr]) _argumentsIerrSq :: ErrSq _argumentsIgUniq :: UID _argumentsIidUseOccGam :: IdUseOccGam _argumentsIpp :: PP_Doc _argumentsIppL :: ([PP_Doc]) _argumentsIppWrap :: (PP_Doc -> PP_Doc) _argumentsItopInstanceNmL :: ([HsName]) _argumentsItrpp :: TrPP _argumentsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 482, column 9) _eh = appRngTopApp range_ (_functionIeh : _argumentsIeh) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _functionItrpp >< _argumentsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _functionOtr = _lhsItr -- 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 -- copy rule (down) _argumentsOtr = _lhsItr ( _functionIconNm,_functionIeh,_functionIerrSq,_functionIgUniq,_functionIidUseOccGam,_functionIopChain,_functionIoperatorName,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionItrpp,_functionIundefOccGam) = function_ _functionOcaseId _functionOfixityGam _functionOgUniq _functionOgenerDerivMp _functionOidGam _functionOmoduleNm _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOpragmas _functionOtopInstanceNmL _functionOtr ( _argumentsIeh,_argumentsIerrSq,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsItrpp,_argumentsIundefOccGam) = arguments_ _argumentsOcaseId _argumentsOfixityGam _argumentsOgUniq _argumentsOgenerDerivMp _argumentsOidGam _argumentsOmoduleNm _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOpragmas _argumentsOtopInstanceNmL _argumentsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _leftExpressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _operatorOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _rightExpressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _leftExpressionIeh :: (Maybe EH.Expr) _leftExpressionIerrSq :: ErrSq _leftExpressionIgUniq :: UID _leftExpressionIidUseOccGam :: IdUseOccGam _leftExpressionIpp :: PP_Doc _leftExpressionIppMb :: (Maybe PP_Doc) _leftExpressionIppWrap :: (PP_Doc -> PP_Doc) _leftExpressionItopInstanceNmL :: ([HsName]) _leftExpressionItrpp :: TrPP _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]) _operatorItrpp :: TrPP _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]) _rightExpressionItrpp :: TrPP _rightExpressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 488, 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 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftExpressionItrpp >< _operatorItrpp >< _rightExpressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _leftExpressionOtr = _lhsItr -- 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) _operatorOtr = _lhsItr -- 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 -- copy rule (down) _rightExpressionOtr = _lhsItr ( _leftExpressionIeh,_leftExpressionIerrSq,_leftExpressionIgUniq,_leftExpressionIidUseOccGam,_leftExpressionIpp,_leftExpressionIppMb,_leftExpressionIppWrap,_leftExpressionItopInstanceNmL,_leftExpressionItrpp,_leftExpressionIundefOccGam) = leftExpression_ _leftExpressionOcaseId _leftExpressionOfixityGam _leftExpressionOgUniq _leftExpressionOgenerDerivMp _leftExpressionOidGam _leftExpressionOmoduleNm _leftExpressionOnmLev _leftExpressionOopts _leftExpressionOpatchEhNmInInstance _leftExpressionOpragmas _leftExpressionOtopInstanceNmL _leftExpressionOtr ( _operatorIconNm,_operatorIeh,_operatorIerrSq,_operatorIgUniq,_operatorIidUseOccGam,_operatorIopChain,_operatorIoperatorName,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorItrpp,_operatorIundefOccGam) = operator_ _operatorOcaseId _operatorOfixityGam _operatorOgUniq _operatorOgenerDerivMp _operatorOidGam _operatorOmoduleNm _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOpragmas _operatorOtopInstanceNmL _operatorOtr ( _rightExpressionIeh,_rightExpressionIerrSq,_rightExpressionIgUniq,_rightExpressionIidUseOccGam,_rightExpressionIpp,_rightExpressionIppMb,_rightExpressionIppWrap,_rightExpressionItopInstanceNmL,_rightExpressionItrpp,_rightExpressionIundefOccGam) = rightExpression_ _rightExpressionOcaseId _rightExpressionOfixityGam _rightExpressionOgUniq _rightExpressionOgenerDerivMp _rightExpressionOidGam _rightExpressionOmoduleNm _rightExpressionOnmLev _rightExpressionOopts _rightExpressionOpatchEhNmInInstance _rightExpressionOpragmas _rightExpressionOtopInstanceNmL _rightExpressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _leftExpressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _operatorOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _rightExpressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _leftExpressionItrpp :: TrPP _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]) _operatorItrpp :: TrPP _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]) _rightExpressionItrpp :: TrPP _rightExpressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 484, column 9) _eh = appRngParApp range_ [_operatorIeh,_leftExpressionIeh,_rightExpressionIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftExpressionItrpp >< _operatorItrpp >< _rightExpressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _leftExpressionOtr = _lhsItr -- 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) _operatorOtr = _lhsItr -- 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 -- copy rule (down) _rightExpressionOtr = _lhsItr ( _leftExpressionIconNm,_leftExpressionIeh,_leftExpressionIerrSq,_leftExpressionIgUniq,_leftExpressionIidUseOccGam,_leftExpressionIopChain,_leftExpressionIoperatorName,_leftExpressionIpp,_leftExpressionIppWrap,_leftExpressionItopInstanceNmL,_leftExpressionItrpp,_leftExpressionIundefOccGam) = leftExpression_ _leftExpressionOcaseId _leftExpressionOfixityGam _leftExpressionOgUniq _leftExpressionOgenerDerivMp _leftExpressionOidGam _leftExpressionOmoduleNm _leftExpressionOnmLev _leftExpressionOopts _leftExpressionOpatchEhNmInInstance _leftExpressionOpragmas _leftExpressionOtopInstanceNmL _leftExpressionOtr ( _operatorIconNm,_operatorIeh,_operatorIerrSq,_operatorIgUniq,_operatorIidUseOccGam,_operatorIopChain,_operatorIoperatorName,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorItrpp,_operatorIundefOccGam) = operator_ _operatorOcaseId _operatorOfixityGam _operatorOgUniq _operatorOgenerDerivMp _operatorOidGam _operatorOmoduleNm _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOpragmas _operatorOtopInstanceNmL _operatorOtr ( _rightExpressionIconNm,_rightExpressionIeh,_rightExpressionIerrSq,_rightExpressionIgUniq,_rightExpressionIidUseOccGam,_rightExpressionIopChain,_rightExpressionIoperatorName,_rightExpressionIpp,_rightExpressionIppWrap,_rightExpressionItopInstanceNmL,_rightExpressionItrpp,_rightExpressionIundefOccGam) = rightExpression_ _rightExpressionOcaseId _rightExpressionOfixityGam _rightExpressionOgUniq _rightExpressionOgenerDerivMp _rightExpressionOidGam _rightExpressionOmoduleNm _rightExpressionOnmLev _rightExpressionOopts _rightExpressionOpatchEhNmInInstance _rightExpressionOpragmas _rightExpressionOtopInstanceNmL _rightExpressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 486, column 9) _eh = _ehFromOpChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _expressionOidGam :: IdDefOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternsItrpp :: TrPP _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 417, column 9) _expressionOidGam = gamUnion _patternsIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 494, column 9) _eh = foldr (rngLift range_ EH.Expr_Lam) _expressionIeh _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternsItrpp >< _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _patternsOtr = _lhsItr -- 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 -- copy rule (down) _expressionOtr = _lhsItr ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 _declarationsOnameDeclCxt :: NameDeclCxt _declarationsOnmLev :: NmLev _declarationsOopts :: EHCOpts _declarationsOpatchEhNmInInstance :: PatchEhNmInInstance _declarationsOpragmas :: (Set.Set Pragma.Pragma) _declarationsOtopInstanceNmL :: ([HsName]) _declarationsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _declarationsIeh :: ([EH.Decl]) _declarationsIerrSq :: ErrSq _declarationsIgUniq :: UID _declarationsIgathFixityGam :: FixityGam _declarationsIgathPragmas :: (Set.Set Pragma.Pragma) _declarationsIidDefOccGam :: IdDefOccGam _declarationsIidDpdMp :: IdDpdMp _declarationsIidInClassTySigDefOccGam :: IdDefOccGam _declarationsIidInInstanceValDefOccGam :: IdDefOccGam _declarationsIidOccDefs :: ([IdOcc]) _declarationsIidUseOccGam :: IdUseOccGam _declarationsIneedsError :: Bool _declarationsIpp :: PP_Doc _declarationsIppWrap :: (PP_Doc -> PP_Doc) _declarationsItopInstanceNmL :: ([HsName]) _declarationsItrpp :: TrPP _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDeclCxt.ag"(line 31, column 9) _nameDeclCxt = NameDeclCxt_Plain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 415, column 9) _idGam = gamUnion _declarationsIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1074, column 9) _sccOrder = idDpdMp2SccOrder _declarationsIidDefOccGam _declarationsIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1206, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH _lhsIopts range_ isStrict_ _declarationsIidDefOccGam (Just _sccOrder) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 496, column 9) _eh = _mkSccLet _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _declarationsItrpp >< _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _declarationsOnameDeclCxt = _nameDeclCxt -- 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) _declarationsOtr = _lhsItr -- 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 -- copy rule (down) _expressionOtr = _lhsItr ( _declarationsIeh,_declarationsIerrSq,_declarationsIgUniq,_declarationsIgathFixityGam,_declarationsIgathPragmas,_declarationsIidDefOccGam,_declarationsIidDpdMp,_declarationsIidInClassTySigDefOccGam,_declarationsIidInInstanceValDefOccGam,_declarationsIidOccDefs,_declarationsIidUseOccGam,_declarationsIneedsError,_declarationsIpp,_declarationsIppWrap,_declarationsItopInstanceNmL,_declarationsItrpp,_declarationsIundefOccGam) = declarations_ _declarationsOcaseId _declarationsOfixityGam _declarationsOgUniq _declarationsOgenerDerivMp _declarationsOidGam _declarationsOmoduleNm _declarationsOnameDeclCxt _declarationsOnmLev _declarationsOopts _declarationsOpatchEhNmInInstance _declarationsOpragmas _declarationsOtopInstanceNmL _declarationsOtr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _expressionsIeh :: ([EH.Expr]) _expressionsIerrSq :: ErrSq _expressionsIgUniq :: UID _expressionsIidUseOccGam :: IdUseOccGam _expressionsIpp :: PP_Doc _expressionsIppL :: ([PP_Doc]) _expressionsIppWrap :: (PP_Doc -> PP_Doc) _expressionsItopInstanceNmL :: ([HsName]) _expressionsItrpp :: TrPP _expressionsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 498, column 9) _eh = ehExpConApp range_ (hsnProd (length _expressionsIeh)) _expressionsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionsOtr = _lhsItr ( _expressionsIeh,_expressionsIerrSq,_expressionsIgUniq,_expressionsIidUseOccGam,_expressionsIpp,_expressionsIppL,_expressionsIppWrap,_expressionsItopInstanceNmL,_expressionsItrpp,_expressionsIundefOccGam) = expressions_ _expressionsOcaseId _expressionsOfixityGam _expressionsOgUniq _expressionsOgenerDerivMp _expressionsOidGam _expressionsOmoduleNm _expressionsOnmLev _expressionsOopts _expressionsOpatchEhNmInInstance _expressionsOpragmas _expressionsOtopInstanceNmL _expressionsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 299, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 419, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 500, column 9) _eh = rngLift range_ EH.Expr_TypeAs False _typeIeh _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 229, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp >< _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _expressionOtr = _lhsItr -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 575, 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 577, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_expressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 502, column 9) _eh = ehExpVarApp range_ _refname [_expressionIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _annotationOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _annotationIeh :: (EH.ExprAnn) _annotationIerrSq :: ErrSq _annotationIgUniq :: UID _annotationIidUseOccGam :: IdUseOccGam _annotationIpp :: PP_Doc _annotationIppWrap :: (PP_Doc -> PP_Doc) _annotationItopInstanceNmL :: ([HsName]) _annotationItrpp :: TrPP _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 504, column 17) _eh = rngLift range_ EH.Expr_Ann _annotationIeh _expressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _annotationItrpp >< _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _annotationOtr = _lhsItr -- 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 -- copy rule (down) _expressionOtr = _lhsItr ( _annotationIeh,_annotationIerrSq,_annotationIgUniq,_annotationIidUseOccGam,_annotationIpp,_annotationIppWrap,_annotationItopInstanceNmL,_annotationItrpp,_annotationIundefOccGam) = annotation_ _annotationOcaseId _annotationOfixityGam _annotationOgUniq _annotationOgenerDerivMp _annotationOidGam _annotationOmoduleNm _annotationOnmLev _annotationOopts _annotationOpatchEhNmInInstance _annotationOpragmas _annotationOtopInstanceNmL _annotationOtr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _functionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _argumentsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _functionItrpp :: TrPP _functionIundefOccGam :: IdUseOccGam _argumentsIeh :: ([EH.Expr]) _argumentsIerrSq :: ErrSq _argumentsIgUniq :: UID _argumentsIidUseOccGam :: IdUseOccGam _argumentsIpp :: PP_Doc _argumentsIppL :: ([PP_Doc]) _argumentsIppWrap :: (PP_Doc -> PP_Doc) _argumentsItopInstanceNmL :: ([HsName]) _argumentsItrpp :: TrPP _argumentsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 506, column 9) _eh = ehExpApp' (rngLift range_ EH.Expr_AppImpred) range_ _functionIeh _argumentsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _functionItrpp >< _argumentsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _functionOtr = _lhsItr -- 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 -- copy rule (down) _argumentsOtr = _lhsItr ( _functionIconNm,_functionIeh,_functionIerrSq,_functionIgUniq,_functionIidUseOccGam,_functionIopChain,_functionIoperatorName,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionItrpp,_functionIundefOccGam) = function_ _functionOcaseId _functionOfixityGam _functionOgUniq _functionOgenerDerivMp _functionOidGam _functionOmoduleNm _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOpragmas _functionOtopInstanceNmL _functionOtr ( _argumentsIeh,_argumentsIerrSq,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsItrpp,_argumentsIundefOccGam) = arguments_ _argumentsOcaseId _argumentsOfixityGam _argumentsOgUniq _argumentsOgenerDerivMp _argumentsOidGam _argumentsOmoduleNm _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOpragmas _argumentsOtopInstanceNmL _argumentsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _guardExpressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _thenExpressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _elseExpressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _guardExpressionItrpp :: TrPP _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]) _thenExpressionItrpp :: TrPP _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]) _elseExpressionItrpp :: TrPP _elseExpressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 587, 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 589, 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 587, column 9) _idUseOccGam = gamUnions [_idUseOccGamVal,_idUseOccGamType] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 592, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_guardExpressionIidUseOccGam,_thenExpressionIidUseOccGam,_elseExpressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 508, column 9) _eh = EH.mkIf' (_typerefname : _valrefnames) range_ _guardExpressionIeh _thenExpressionIeh _elseExpressionIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _guardExpressionItrpp >< _thenExpressionItrpp >< _elseExpressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _guardExpressionOtr = _lhsItr -- 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) _thenExpressionOtr = _lhsItr -- 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 -- copy rule (down) _elseExpressionOtr = _lhsItr ( _guardExpressionIconNm,_guardExpressionIeh,_guardExpressionIerrSq,_guardExpressionIgUniq,_guardExpressionIidUseOccGam,_guardExpressionIopChain,_guardExpressionIoperatorName,_guardExpressionIpp,_guardExpressionIppWrap,_guardExpressionItopInstanceNmL,_guardExpressionItrpp,_guardExpressionIundefOccGam) = guardExpression_ _guardExpressionOcaseId _guardExpressionOfixityGam _guardExpressionOgUniq _guardExpressionOgenerDerivMp _guardExpressionOidGam _guardExpressionOmoduleNm _guardExpressionOnmLev _guardExpressionOopts _guardExpressionOpatchEhNmInInstance _guardExpressionOpragmas _guardExpressionOtopInstanceNmL _guardExpressionOtr ( _thenExpressionIconNm,_thenExpressionIeh,_thenExpressionIerrSq,_thenExpressionIgUniq,_thenExpressionIidUseOccGam,_thenExpressionIopChain,_thenExpressionIoperatorName,_thenExpressionIpp,_thenExpressionIppWrap,_thenExpressionItopInstanceNmL,_thenExpressionItrpp,_thenExpressionIundefOccGam) = thenExpression_ _thenExpressionOcaseId _thenExpressionOfixityGam _thenExpressionOgUniq _thenExpressionOgenerDerivMp _thenExpressionOidGam _thenExpressionOmoduleNm _thenExpressionOnmLev _thenExpressionOopts _thenExpressionOpatchEhNmInInstance _thenExpressionOpragmas _thenExpressionOtopInstanceNmL _thenExpressionOtr ( _elseExpressionIconNm,_elseExpressionIeh,_elseExpressionIerrSq,_elseExpressionIgUniq,_elseExpressionIidUseOccGam,_elseExpressionIopChain,_elseExpressionIoperatorName,_elseExpressionIpp,_elseExpressionIppWrap,_elseExpressionItopInstanceNmL,_elseExpressionItrpp,_elseExpressionIundefOccGam) = elseExpression_ _elseExpressionOcaseId _elseExpressionOfixityGam _elseExpressionOgUniq _elseExpressionOgenerDerivMp _elseExpressionOidGam _elseExpressionOmoduleNm _elseExpressionOnmLev _elseExpressionOopts _elseExpressionOpatchEhNmInInstance _elseExpressionOpragmas _elseExpressionOtopInstanceNmL _elseExpressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _alternativesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam _alternativesIeh :: ([EH.CaseAlt]) _alternativesIerrSq :: ErrSq _alternativesIgUniq :: UID _alternativesIidUseOccGam :: IdUseOccGam _alternativesIpp :: PP_Doc _alternativesIppWrap :: (PP_Doc -> PP_Doc) _alternativesItopInstanceNmL :: ([HsName]) _alternativesItrpp :: TrPP _alternativesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 510, 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 869, column 9) _caseId = _lUniq -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp >< _alternativesItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _expressionOtr = _lhsItr -- 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 -- copy rule (down) _alternativesOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr ( _alternativesIeh,_alternativesIerrSq,_alternativesIgUniq,_alternativesIidUseOccGam,_alternativesIpp,_alternativesIppWrap,_alternativesItopInstanceNmL,_alternativesItrpp,_alternativesIundefOccGam) = alternatives_ _alternativesOcaseId _alternativesOfixityGam _alternativesOgUniq _alternativesOgenerDerivMp _alternativesOidGam _alternativesOmoduleNm _alternativesOnmLev _alternativesOopts _alternativesOpatchEhNmInInstance _alternativesOpragmas _alternativesOtopInstanceNmL _alternativesOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _expressionsIeh :: ([EH.Expr]) _expressionsIerrSq :: ErrSq _expressionsIgUniq :: UID _expressionsIidUseOccGam :: IdUseOccGam _expressionsIpp :: PP_Doc _expressionsIppL :: ([PP_Doc]) _expressionsIppWrap :: (PP_Doc -> PP_Doc) _expressionsItopInstanceNmL :: ([HsName]) _expressionsItrpp :: TrPP _expressionsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 579, 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 581, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_expressionsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 512, 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 199, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionsOtr = _lhsItr ( _expressionsIeh,_expressionsIerrSq,_expressionsIgUniq,_expressionsIidUseOccGam,_expressionsIpp,_expressionsIppL,_expressionsIppWrap,_expressionsItopInstanceNmL,_expressionsItrpp,_expressionsIundefOccGam) = expressions_ _expressionsOcaseId _expressionsOfixityGam _expressionsOgUniq _expressionsOgenerDerivMp _expressionsOidGam _expressionsOmoduleNm _expressionsOnmLev _expressionsOopts _expressionsOpatchEhNmInInstance _expressionsOpragmas _expressionsOtopInstanceNmL _expressionsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _fromOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _thenOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _toOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _fromItrpp :: TrPP _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]) _thenItrpp :: TrPP _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]) _toItrpp :: TrPP _toIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 583, 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 585, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_fromIidUseOccGam,_thenIidUseOccGam,_toIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 514, 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 514, 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 199, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _fromItrpp >< _thenItrpp >< _toItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _fromOtr = _lhsItr -- 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) _thenOtr = _lhsItr -- 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 -- copy rule (down) _toOtr = _lhsItr ( _fromIconNm,_fromIeh,_fromIerrSq,_fromIgUniq,_fromIidUseOccGam,_fromIopChain,_fromIoperatorName,_fromIpp,_fromIppWrap,_fromItopInstanceNmL,_fromItrpp,_fromIundefOccGam) = from_ _fromOcaseId _fromOfixityGam _fromOgUniq _fromOgenerDerivMp _fromOidGam _fromOmoduleNm _fromOnmLev _fromOopts _fromOpatchEhNmInInstance _fromOpragmas _fromOtopInstanceNmL _fromOtr ( _thenIeh,_thenIerrSq,_thenIgUniq,_thenIidUseOccGam,_thenIpp,_thenIppMb,_thenIppWrap,_thenItopInstanceNmL,_thenItrpp,_thenIundefOccGam) = then_ _thenOcaseId _thenOfixityGam _thenOgUniq _thenOgenerDerivMp _thenOidGam _thenOmoduleNm _thenOnmLev _thenOopts _thenOpatchEhNmInInstance _thenOpragmas _thenOtopInstanceNmL _thenOtr ( _toIeh,_toIerrSq,_toIgUniq,_toIidUseOccGam,_toIpp,_toIppMb,_toIppWrap,_toItopInstanceNmL,_toItrpp,_toIundefOccGam) = to_ _toOcaseId _toOfixityGam _toOgUniq _toOgenerDerivMp _toOidGam _toOmoduleNm _toOnmLev _toOopts _toOpatchEhNmInInstance _toOpragmas _toOtopInstanceNmL _toOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _qualifiersOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _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]) _qualifiersItrpp :: TrPP _qualifiersIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 421, column 9) _expressionOidGam = _qualifiersIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 422, column 9) _qualifiersOidGam = _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 525, column 9) _eh = foldr ($) _expressionIeh _qualifiersIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp >< _qualifiersItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _expressionOtr = _lhsItr -- 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 -- copy rule (down) _qualifiersOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr ( _qualifiersIeh,_qualifiersIerrSq,_qualifiersIgUniq,_qualifiersIidGam,_qualifiersIidUseOccGam,_qualifiersIpp,_qualifiersIppL,_qualifiersIppWrap,_qualifiersItopInstanceNmL,_qualifiersItrpp,_qualifiersIundefOccGam) = qualifiers_ _qualifiersOcaseId _qualifiersOfixityGam _qualifiersOgUniq _qualifiersOgenerDerivMp _qualifiersOidGam _qualifiersOmoduleNm _qualifiersOnmLev _qualifiersOopts _qualifiersOpatchEhNmInInstance _qualifiersOpragmas _qualifiersOtopInstanceNmL _qualifiersOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _recordExpressionBindingsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _recordExpressionBindingsIeh :: ([EH.DataFieldExpr -> EH.DataFieldExpr]) _recordExpressionBindingsIerrSq :: ErrSq _recordExpressionBindingsIgUniq :: UID _recordExpressionBindingsIidUseOccGam :: IdUseOccGam _recordExpressionBindingsIpp :: PP_Doc _recordExpressionBindingsIppL :: ([PP_Doc]) _recordExpressionBindingsIppWrap :: (PP_Doc -> PP_Doc) _recordExpressionBindingsItopInstanceNmL :: ([HsName]) _recordExpressionBindingsItrpp :: TrPP _recordExpressionBindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 562, column 9) _idAsp = IdAsp_Val_Con -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 565, 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 573, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_recordExpressionBindingsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 527, 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 199, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _recordExpressionBindingsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _recordExpressionBindingsOtr = _lhsItr ( _recordExpressionBindingsIeh,_recordExpressionBindingsIerrSq,_recordExpressionBindingsIgUniq,_recordExpressionBindingsIidUseOccGam,_recordExpressionBindingsIpp,_recordExpressionBindingsIppL,_recordExpressionBindingsIppWrap,_recordExpressionBindingsItopInstanceNmL,_recordExpressionBindingsItrpp,_recordExpressionBindingsIundefOccGam) = recordExpressionBindings_ _recordExpressionBindingsOcaseId _recordExpressionBindingsOfixityGam _recordExpressionBindingsOgUniq _recordExpressionBindingsOgenerDerivMp _recordExpressionBindingsOidGam _recordExpressionBindingsOmoduleNm _recordExpressionBindingsOnmLev _recordExpressionBindingsOopts _recordExpressionBindingsOpatchEhNmInInstance _recordExpressionBindingsOpragmas _recordExpressionBindingsOtopInstanceNmL _recordExpressionBindingsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _recordExpressionBindingsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _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]) _recordExpressionBindingsItrpp :: TrPP _recordExpressionBindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 529, 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 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp >< _recordExpressionBindingsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _expressionOtr = _lhsItr -- 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 -- copy rule (down) _recordExpressionBindingsOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr ( _recordExpressionBindingsIeh,_recordExpressionBindingsIerrSq,_recordExpressionBindingsIgUniq,_recordExpressionBindingsIidUseOccGam,_recordExpressionBindingsIpp,_recordExpressionBindingsIppL,_recordExpressionBindingsIppWrap,_recordExpressionBindingsItopInstanceNmL,_recordExpressionBindingsItrpp,_recordExpressionBindingsIundefOccGam) = recordExpressionBindings_ _recordExpressionBindingsOcaseId _recordExpressionBindingsOfixityGam _recordExpressionBindingsOgUniq _recordExpressionBindingsOgenerDerivMp _recordExpressionBindingsOidGam _recordExpressionBindingsOmoduleNm _recordExpressionBindingsOnmLev _recordExpressionBindingsOopts _recordExpressionBindingsOpatchEhNmInInstance _recordExpressionBindingsOpragmas _recordExpressionBindingsOtopInstanceNmL _recordExpressionBindingsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _rowRecordExpressionUpdatesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _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]) _rowRecordExpressionUpdatesItrpp :: TrPP _rowRecordExpressionUpdatesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 533, column 9) _eh = foldl (flip ($)) _expressionIeh _rowRecordExpressionUpdatesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp >< _rowRecordExpressionUpdatesItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _expressionOtr = _lhsItr -- 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 -- copy rule (down) _rowRecordExpressionUpdatesOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr ( _rowRecordExpressionUpdatesIeh,_rowRecordExpressionUpdatesIerrSq,_rowRecordExpressionUpdatesIgUniq,_rowRecordExpressionUpdatesIidUseOccGam,_rowRecordExpressionUpdatesIpp,_rowRecordExpressionUpdatesIppL,_rowRecordExpressionUpdatesIppWrap,_rowRecordExpressionUpdatesItopInstanceNmL,_rowRecordExpressionUpdatesItrpp,_rowRecordExpressionUpdatesIundefOccGam) = rowRecordExpressionUpdates_ _rowRecordExpressionUpdatesOcaseId _rowRecordExpressionUpdatesOfixityGam _rowRecordExpressionUpdatesOgUniq _rowRecordExpressionUpdatesOgenerDerivMp _rowRecordExpressionUpdatesOidGam _rowRecordExpressionUpdatesOmoduleNm _rowRecordExpressionUpdatesOnmLev _rowRecordExpressionUpdatesOopts _rowRecordExpressionUpdatesOpatchEhNmInInstance _rowRecordExpressionUpdatesOpragmas _rowRecordExpressionUpdatesOtopInstanceNmL _rowRecordExpressionUpdatesOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Expression_RowRecordEmpty :: Range -> T_Expression sem_Expression_RowRecordEmpty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 535, column 9) _eh = rngLift range_ EH.Expr_Rec (rngLift range_ EH.RecExpr_Empty) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 537, column 9) _eh = rngLift range_ EH.Expr_Sel _expressionIeh name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _statementsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _statementsItrpp :: TrPP _statementsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 539, column 25) (_eh,_) = foldr1 (\(_,s) (e,_) -> (s e,undefined)) _statementsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _statementsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _statementsOtr = _lhsItr ( _statementsIeh,_statementsIerrSq,_statementsIgUniq,_statementsIidUseOccGam,_statementsIpp,_statementsIppL,_statementsIppWrap,_statementsItopInstanceNmL,_statementsItrpp,_statementsIundefOccGam) = statements_ _statementsOcaseId _statementsOfixityGam _statementsOgUniq _statementsOgenerDerivMp _statementsOidGam _statementsOmoduleNm _statementsOnmLev _statementsOopts _statementsOpatchEhNmInInstance _statementsOpragmas _statementsOtopInstanceNmL _statementsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _functionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _argumentsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _functionItrpp :: TrPP _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]) _argumentsItrpp :: TrPP _argumentsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 541, 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 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _functionItrpp >< _argumentsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _functionOtr = _lhsItr -- 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 -- copy rule (down) _argumentsOtr = _lhsItr ( _functionIconNm,_functionIeh,_functionIerrSq,_functionIgUniq,_functionIidUseOccGam,_functionIopChain,_functionIoperatorName,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionItrpp,_functionIundefOccGam) = function_ _functionOcaseId _functionOfixityGam _functionOgUniq _functionOgenerDerivMp _functionOidGam _functionOmoduleNm _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOpragmas _functionOtopInstanceNmL _functionOtr ( _argumentsIeh,_argumentsIerrSq,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsItrpp,_argumentsIundefOccGam) = arguments_ _argumentsOcaseId _argumentsOfixityGam _argumentsOgUniq _argumentsOgenerDerivMp _argumentsOidGam _argumentsOmoduleNm _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOpragmas _argumentsOtopInstanceNmL _argumentsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _expressionOidGam :: IdDefOccGam _lhsOconNm :: Name _lhsOoperatorName :: MaybeName _lhsOopChain :: (OpChain EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternsItrpp :: TrPP _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 302, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _patternsIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 424, column 9) _idGam = gamUnions [_idDefOccGamType, _lhsIidGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 425, column 9) _expressionOidGam = gamUnions [_patternsIidDefOccGam, _idGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 272, 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 543, 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 199, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternsItrpp >< _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _patternsOtr = _lhsItr -- 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 -- copy rule (down) _expressionOtr = _lhsItr ( _patternsIeh,_patternsIerrSq,_patternsIfreeTvarS,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.ExprAnn errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.ExprAnn),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_ExpressionAnnotation_Empty :: T_ExpressionAnnotation sem_ExpressionAnnotation_Empty = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.ExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 909, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.Expr]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.Expr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppL :: ([PP_Doc]) _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _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 455, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIconNm,_hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIopChain,_hdIoperatorName,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Expressions_Nil :: T_Expressions sem_Expressions_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 455, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- FieldDeclaration -------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.DataField),ErrSq,Names,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_FieldDeclaration_FieldDeclaration :: Range -> Names -> T_Type -> T_FieldDeclaration sem_FieldDeclaration_FieldDeclaration range_ names_ type_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.DataField) _lhsOerrSq :: ErrSq _lhsOfldrefnames :: Names _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _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 341, column 9) _lhsOeh = rngLift range_ EH.DataField_Field (Just _fldrefnames) _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 189, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 242, 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 129, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfldrefnames,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- FieldDeclarations ------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.DataField]),ErrSq,Names,HsNameS,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_FieldDeclarations_Cons :: T_FieldDeclaration -> T_FieldDeclarations -> T_FieldDeclarations sem_FieldDeclarations_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataField]) _lhsOerrSq :: ErrSq _lhsOfldrefnames :: Names _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: (EH.DataField) _hdIerrSq :: ErrSq _hdIfldrefnames :: Names _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 335, 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 129, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIfldrefnames,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIfldrefnames,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfldrefnames,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_FieldDeclarations_Nil :: T_FieldDeclarations sem_FieldDeclarations_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataField]) _lhsOerrSq :: ErrSq _lhsOfldrefnames :: Names _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 335, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- FunctionBinding --------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP undefOccGam : IdUseOccGam alternatives: alternative FunctionBinding: child range : {Range} child lefthandside : LeftHandSide child righthandside : RightHandSide visit 0: local trpp : _ 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.Decl),ErrSq,UID,IdDefOccGam,IdDpdMp,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_FunctionBinding_FunctionBinding :: Range -> T_LeftHandSide -> T_RightHandSide -> T_FunctionBinding sem_FunctionBinding_FunctionBinding range_ lefthandside_ righthandside_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _lefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _righthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _lefthandsideItrpp :: TrPP _lefthandsideIundefOccGam :: IdUseOccGam _righthandsideIeh :: (EH.Expr) _righthandsideIerrSq :: ErrSq _righthandsideIgUniq :: UID _righthandsideIidUseOccGam :: IdUseOccGam _righthandsideIpp :: PP_Doc _righthandsideIppWrap :: (PP_Doc -> PP_Doc) _righthandsideItopInstanceNmL :: ([HsName]) _righthandsideItrpp :: TrPP _righthandsideIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 19, column 9) _trpp = (_lhsItr TraceOn_HsOcc $ [_idOccDef >#< " = FunctionBinding"] ++ [ "idUseHereOccL=" >#< ppBracketsCommas _idUseHereOccL ]) >< _lefthandsideItrpp >< _righthandsideItrpp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 272, 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 456, column 9) _righthandsideOidGam = gamUnion _lefthandsideIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 846, column 29) (_idUseOccGam,_idUseHereOccL,_,_undefOccGam) = splitIdUseOccGam' (_lhsInameDeclCxt == NameDeclCxt_Instance) _lhsInmLev (gamUnions [_lefthandsideIidUseOccGam,_righthandsideIidUseOccGam]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 846, column 9) _idDpdMp = idToOccL2DpdMp [_idOccDef] _idUseHereOccL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 850, column 9) _lhsOundefOccGam = gamUnions [_undefOccGam,_lefthandsideIundefOccGam,_righthandsideIundefOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1268, column 9) _righthandsideOpatchEhNmInInstance = id -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 167, column 9) _idOccDef = IdOcc _lefthandsideIrefname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 167, 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 719, 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 874, column 9) _caseId = _lUniq -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 285, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _idDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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 -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/Trace.ag"(line 1, column 29) _lhsOtrpp = _trpp -- 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 (down) _lefthandsideOtr = _lhsItr -- 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 -- copy rule (down) _righthandsideOtr = _lhsItr ( _lefthandsideIeh,_lefthandsideIehTyMk,_lefthandsideIerrSq,_lefthandsideIgUniq,_lefthandsideIidDefOccGam,_lefthandsideIidOccDefs,_lefthandsideIidUseOccGam,_lefthandsideIpp,_lefthandsideIppWrap,_lefthandsideIrefname,_lefthandsideItopInstanceNmL,_lefthandsideItrpp,_lefthandsideIundefOccGam) = lefthandside_ _lefthandsideOcaseId _lefthandsideOfixityGam _lefthandsideOgUniq _lefthandsideOgenerDerivMp _lefthandsideOidGam _lefthandsideOmoduleNm _lefthandsideOnmLev _lefthandsideOnmLevFun _lefthandsideOopts _lefthandsideOpatchEhNmInInstance _lefthandsideOpragmas _lefthandsideOtopInstanceNmL _lefthandsideOtr ( _righthandsideIeh,_righthandsideIerrSq,_righthandsideIgUniq,_righthandsideIidUseOccGam,_righthandsideIpp,_righthandsideIppWrap,_righthandsideItopInstanceNmL,_righthandsideItrpp,_righthandsideIundefOccGam) = righthandside_ _righthandsideOcaseId _righthandsideOfixityGam _righthandsideOgUniq _righthandsideOgenerDerivMp _righthandsideOidGam _righthandsideOmoduleNm _righthandsideOmustBeMono _righthandsideOnmLev _righthandsideOopts _righthandsideOpatchEhNmInInstance _righthandsideOpragmas _righthandsideOsepPP _righthandsideOtopInstanceNmL _righthandsideOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- FunctionBindings -------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.Decl]),ErrSq,UID,IdDefOccGam,IdDpdMp,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_FunctionBindings_Cons :: T_FunctionBinding -> T_FunctionBindings -> T_FunctionBindings sem_FunctionBindings_Cons hd_ tl_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOcaseId :: UID _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnameDeclCxt :: NameDeclCxt _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOcaseId :: UID _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnameDeclCxt :: NameDeclCxt _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 713, 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 182, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _hdIidDpdMp `idDpdMpUnion` _tlIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOnameDeclCxt = _lhsInameDeclCxt -- 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) _hdOtr = _lhsItr -- 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) _tlOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidDefOccGam,_hdIidDpdMp,_hdIidOccDefs,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnameDeclCxt _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidDefOccGam,_tlIidDpdMp,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnameDeclCxt _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_FunctionBindings_Nil :: T_FunctionBindings sem_FunctionBindings_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.Decl]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 713, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- FunctionalDependencies -------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [EH.FuncDep] errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idInClassTySigDefOccGam : IdDefOccGam idInInstanceValDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.FuncDep]),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,IdDefOccGam,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_FunctionalDependencies_Cons :: T_FunctionalDependency -> T_FunctionalDependencies -> T_FunctionalDependencies sem_FunctionalDependencies_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.FuncDep]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnameDeclCxt :: NameDeclCxt _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOpragmas :: (Set.Set Pragma.Pragma) _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnameDeclCxt :: NameDeclCxt _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOpragmas :: (Set.Set Pragma.Pragma) _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: (EH.FuncDep) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIgathPragmas :: (Set.Set Pragma.Pragma) _hdIidDefOccGam :: IdDefOccGam _hdIidDpdMp :: IdDpdMp _hdIidInClassTySigDefOccGam :: IdDefOccGam _hdIidInInstanceValDefOccGam :: IdDefOccGam _hdIidOccDefs :: ([IdOcc]) _hdIidUseOccGam :: IdUseOccGam _hdIneedsError :: Bool _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([EH.FuncDep]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIgathPragmas :: (Set.Set Pragma.Pragma) _tlIidDefOccGam :: IdDefOccGam _tlIidDpdMp :: IdDpdMp _tlIidInClassTySigDefOccGam :: IdDefOccGam _tlIidInInstanceValDefOccGam :: IdDefOccGam _tlIidOccDefs :: ([IdOcc]) _tlIidUseOccGam :: IdUseOccGam _tlIneedsError :: Bool _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 151, 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 182, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _hdIidDpdMp `idDpdMpUnion` _tlIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _hdIidInClassTySigDefOccGam `gamAddGam` _tlIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _hdIidInInstanceValDefOccGam `gamAddGam` _tlIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOnameDeclCxt = _lhsInameDeclCxt -- 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) _hdOtr = _lhsItr -- 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) _tlOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIgathPragmas,_hdIidDefOccGam,_hdIidDpdMp,_hdIidInClassTySigDefOccGam,_hdIidInInstanceValDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIneedsError,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnameDeclCxt _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIgathPragmas,_tlIidDefOccGam,_tlIidDpdMp,_tlIidInClassTySigDefOccGam,_tlIidInInstanceValDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIneedsError,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnameDeclCxt _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_FunctionalDependencies_Nil :: T_FunctionalDependencies sem_FunctionalDependencies_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([EH.FuncDep]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 151, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- FunctionalDependency ---------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.FuncDep errSq : ErrSq gathFixityGam : FixityGam gathPragmas : Set.Set Pragma.Pragma idDefOccGam : IdDefOccGam idDpdMp : IdDpdMp idInClassTySigDefOccGam : IdDefOccGam idInInstanceValDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.FuncDep),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,IdDefOccGam,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_FunctionalDependency_Dependency :: Range -> Names -> Names -> T_FunctionalDependency sem_FunctionalDependency_Dependency range_ fromtypevariables_ totypevariables_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.FuncDep) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 157, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (UIDS -> EH.Expr -> EH.Expr),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (UIDS -> EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _guardOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _guardItrpp :: TrPP _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 627, 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 629, 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 627, column 9) _idUseOccGam = gamUnions [_idUseOccGamVal,_idUseOccGamType] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 632, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_guardIidUseOccGam,_expressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 90, 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 635, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _guardItrpp >< _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _guardOtr = _lhsItr -- 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 -- copy rule (down) _expressionOtr = _lhsItr ( _guardIconNm,_guardIeh,_guardIerrSq,_guardIgUniq,_guardIidUseOccGam,_guardIopChain,_guardIoperatorName,_guardIpp,_guardIppWrap,_guardItopInstanceNmL,_guardItrpp,_guardIundefOccGam) = guard_ _guardOcaseId _guardOfixityGam _guardOgUniq _guardOgenerDerivMp _guardOidGam _guardOmoduleNm _guardOnmLev _guardOopts _guardOpatchEhNmInInstance _guardOpragmas _guardOtopInstanceNmL _guardOtr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([UIDS -> EH.Expr -> EH.Expr]),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOeh :: ([UIDS -> EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: (UIDS -> EH.Expr -> EH.Expr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIeh :: ([UIDS -> EH.Expr -> EH.Expr]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 630, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOmustBeMono _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOsepPP _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOmustBeMono _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOsepPP _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_GuardedExpressions_Nil :: T_GuardedExpressions sem_GuardedExpressions_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsImustBeMono _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsIsepPP _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([UIDS -> EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 630, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Import ------------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Import_Variable :: Range -> Name -> T_Import sem_Import_Variable range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Import_TypeOrClassComplete :: Range -> Name -> T_Import sem_Import_TypeOrClassComplete range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- ImportDeclaration ------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,(Map.Map HsName HsName),PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOmodAsMp :: (Map.Map HsName HsName) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _importspecificationOtr :: (TraceOn -> [PP_Doc] -> TrPP) _importspecificationIerrSq :: ErrSq _importspecificationIgUniq :: UID _importspecificationIgathFixityGam :: FixityGam _importspecificationIidUseOccGam :: IdUseOccGam _importspecificationIpp :: PP_Doc _importspecificationIppWrap :: (PP_Doc -> PP_Doc) _importspecificationItopInstanceNmL :: ([HsName]) _importspecificationItrpp :: TrPP _importspecificationIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1234, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _importspecificationItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _importspecificationOtr = _lhsItr ( _importspecificationIerrSq,_importspecificationIgUniq,_importspecificationIgathFixityGam,_importspecificationIidUseOccGam,_importspecificationIpp,_importspecificationIppWrap,_importspecificationItopInstanceNmL,_importspecificationItrpp,_importspecificationIundefOccGam) = importspecification_ _importspecificationOfixityGam _importspecificationOgUniq _importspecificationOidGam _importspecificationOisMainMod _importspecificationOisTopMod _importspecificationOmoduleNm _importspecificationOnmLev _importspecificationOopts _importspecificationOpatchEhNmInInstance _importspecificationOtopInstanceNmL _importspecificationOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOmodAsMp,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_ImportDeclaration_Empty :: Range -> T_ImportDeclaration sem_ImportDeclaration_Empty range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOmodAsMp :: (Map.Map HsName HsName) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1236, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOmodAsMp,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- ImportDeclarations ------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,(Map.Map HsName HsName),PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOmodAsMp :: (Map.Map HsName HsName) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisMainMod :: Bool _tlOisTopMod :: Bool _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIidUseOccGam :: IdUseOccGam _hdImodAsMp :: (Map.Map HsName HsName) _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 550, column 30) _lhsOidUseOccGam = _hdIidUseOccGam `gamAddGam` _tlIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1230, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidUseOccGam,_hdImodAsMp,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOisMainMod _hdOisTopMod _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIidUseOccGam,_tlImodAsMp,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOisMainMod _tlOisTopMod _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOmodAsMp,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_ImportDeclarations_Nil :: T_ImportDeclarations sem_ImportDeclarations_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOmodAsMp :: (Map.Map HsName HsName) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1230, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOmodAsMp,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- ImportSpecification ----------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _importsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _importsIerrSq :: ErrSq _importsIgUniq :: UID _importsIgathFixityGam :: FixityGam _importsIidUseOccGam :: IdUseOccGam _importsIpp :: PP_Doc _importsIppWrap :: (PP_Doc -> PP_Doc) _importsItopInstanceNmL :: ([HsName]) _importsItrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _importsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _importsOtr = _lhsItr ( _importsIerrSq,_importsIgUniq,_importsIgathFixityGam,_importsIidUseOccGam,_importsIpp,_importsIppWrap,_importsItopInstanceNmL,_importsItrpp,_importsIundefOccGam) = imports_ _importsOfixityGam _importsOgUniq _importsOidGam _importsOisMainMod _importsOisTopMod _importsOmoduleNm _importsOnmLev _importsOopts _importsOpatchEhNmInInstance _importsOtopInstanceNmL _importsOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Imports ----------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisMainMod :: Bool _tlOisTopMod :: Bool _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathFixityGam :: FixityGam _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathFixityGam :: FixityGam _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOisMainMod _hdOisTopMod _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIerrSq,_tlIgUniq,_tlIgathFixityGam,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOisMainMod _tlOisTopMod _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Imports_Nil :: T_Imports sem_Imports_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Kind -------------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( Name,(EH.KiExpr),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Kind_NormalApplication :: Range -> T_Kind -> T_Kinds -> T_Kind sem_Kind_NormalApplication range_ function_ arguments_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _functionOgUniq :: UID _functionOidGam :: IdDefOccGam _functionOnmLev :: NmLev _functionOopts :: EHCOpts _functionOpatchEhNmInInstance :: PatchEhNmInInstance _functionOtopInstanceNmL :: ([HsName]) _functionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _argumentsOgUniq :: UID _argumentsOidGam :: IdDefOccGam _argumentsOnmLev :: NmLev _argumentsOopts :: EHCOpts _argumentsOpatchEhNmInInstance :: PatchEhNmInInstance _argumentsOtopInstanceNmL :: ([HsName]) _argumentsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _functionIconNm :: Name _functionIeh :: (EH.KiExpr) _functionIerrSq :: ErrSq _functionIfreeTvarS :: HsNameS _functionIgUniq :: UID _functionIidUseOccGam :: IdUseOccGam _functionIpp :: PP_Doc _functionIppWrap :: (PP_Doc -> PP_Doc) _functionItopInstanceNmL :: ([HsName]) _functionItrpp :: TrPP _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]) _argumentsItrpp :: TrPP _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 179, column 9) _lhsOeh = appTopApp (_functionIeh : _argumentsIeh) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 115, 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 117, column 30) _lhsOfreeTvarS = _functionIfreeTvarS `Set.union` _argumentsIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _functionItrpp >< _argumentsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _functionOtr = _lhsItr -- 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 -- copy rule (down) _argumentsOtr = _lhsItr ( _functionIconNm,_functionIeh,_functionIerrSq,_functionIfreeTvarS,_functionIgUniq,_functionIidUseOccGam,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionItrpp,_functionIundefOccGam) = function_ _functionOgUniq _functionOidGam _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOtopInstanceNmL _functionOtr ( _argumentsIeh,_argumentsIerrSq,_argumentsIfreeTvarS,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsItrpp,_argumentsIundefOccGam) = arguments_ _argumentsOgUniq _argumentsOidGam _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOtopInstanceNmL _argumentsOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.KiExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftKindOgUniq :: UID _leftKindOidGam :: IdDefOccGam _leftKindOnmLev :: NmLev _leftKindOopts :: EHCOpts _leftKindOpatchEhNmInInstance :: PatchEhNmInInstance _leftKindOtopInstanceNmL :: ([HsName]) _leftKindOtr :: (TraceOn -> [PP_Doc] -> TrPP) _operatorOgUniq :: UID _operatorOidGam :: IdDefOccGam _operatorOnmLev :: NmLev _operatorOopts :: EHCOpts _operatorOpatchEhNmInInstance :: PatchEhNmInInstance _operatorOtopInstanceNmL :: ([HsName]) _operatorOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rightKindOgUniq :: UID _rightKindOidGam :: IdDefOccGam _rightKindOnmLev :: NmLev _rightKindOopts :: EHCOpts _rightKindOpatchEhNmInInstance :: PatchEhNmInInstance _rightKindOtopInstanceNmL :: ([HsName]) _rightKindOtr :: (TraceOn -> [PP_Doc] -> TrPP) _leftKindIconNm :: Name _leftKindIeh :: (EH.KiExpr) _leftKindIerrSq :: ErrSq _leftKindIfreeTvarS :: HsNameS _leftKindIgUniq :: UID _leftKindIidUseOccGam :: IdUseOccGam _leftKindIpp :: PP_Doc _leftKindIppWrap :: (PP_Doc -> PP_Doc) _leftKindItopInstanceNmL :: ([HsName]) _leftKindItrpp :: TrPP _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]) _operatorItrpp :: TrPP _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]) _rightKindItrpp :: TrPP _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 181, column 9) _eh = appRngParApp range_ [_operatorIeh,_leftKindIeh,_rightKindIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 115, 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 117, column 30) _lhsOfreeTvarS = _leftKindIfreeTvarS `Set.union` _operatorIfreeTvarS `Set.union` _rightKindIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftKindItrpp >< _operatorItrpp >< _rightKindItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _leftKindOtr = _lhsItr -- 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 (down) _operatorOtr = _lhsItr -- 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 -- copy rule (down) _rightKindOtr = _lhsItr ( _leftKindIconNm,_leftKindIeh,_leftKindIerrSq,_leftKindIfreeTvarS,_leftKindIgUniq,_leftKindIidUseOccGam,_leftKindIpp,_leftKindIppWrap,_leftKindItopInstanceNmL,_leftKindItrpp,_leftKindIundefOccGam) = leftKind_ _leftKindOgUniq _leftKindOidGam _leftKindOnmLev _leftKindOopts _leftKindOpatchEhNmInInstance _leftKindOtopInstanceNmL _leftKindOtr ( _operatorIconNm,_operatorIeh,_operatorIerrSq,_operatorIfreeTvarS,_operatorIgUniq,_operatorIidUseOccGam,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorItrpp,_operatorIundefOccGam) = operator_ _operatorOgUniq _operatorOidGam _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOtopInstanceNmL _operatorOtr ( _rightKindIconNm,_rightKindIeh,_rightKindIerrSq,_rightKindIfreeTvarS,_rightKindIgUniq,_rightKindIidUseOccGam,_rightKindIpp,_rightKindIppWrap,_rightKindItopInstanceNmL,_rightKindItrpp,_rightKindIundefOccGam) = rightKind_ _rightKindOgUniq _rightKindOidGam _rightKindOnmLev _rightKindOopts _rightKindOpatchEhNmInInstance _rightKindOtopInstanceNmL _rightKindOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Kind_Constructor :: Range -> Name -> T_Kind sem_Kind_Constructor range_ name_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 665, column 9) _idAsp = IdAsp_Kind_Con -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 665, column 9) _idOccKind = IdOcc_Kind -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 671, 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 183, column 9) _lhsOeh = rngLift range_ EH.KiExpr_Con _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 113, 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 117, column 30) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Kind_Parenthesized :: Range -> T_Kind -> T_Kind sem_Kind_Parenthesized range_ kind_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _kindOgUniq :: UID _kindOidGam :: IdDefOccGam _kindOnmLev :: NmLev _kindOopts :: EHCOpts _kindOpatchEhNmInInstance :: PatchEhNmInInstance _kindOtopInstanceNmL :: ([HsName]) _kindOtr :: (TraceOn -> [PP_Doc] -> TrPP) _kindIconNm :: Name _kindIeh :: (EH.KiExpr) _kindIerrSq :: ErrSq _kindIfreeTvarS :: HsNameS _kindIgUniq :: UID _kindIidUseOccGam :: IdUseOccGam _kindIpp :: PP_Doc _kindIppWrap :: (PP_Doc -> PP_Doc) _kindItopInstanceNmL :: ([HsName]) _kindItrpp :: TrPP _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 185, column 9) _lhsOeh = rngLift range_ EH.KiExpr_Parens _kindIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 115, 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 117, column 30) _lhsOfreeTvarS = _kindIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _kindItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _kindOtr = _lhsItr ( _kindIconNm,_kindIeh,_kindIerrSq,_kindIfreeTvarS,_kindIgUniq,_kindIidUseOccGam,_kindIpp,_kindIppWrap,_kindItopInstanceNmL,_kindItrpp,_kindIundefOccGam) = kind_ _kindOgUniq _kindOidGam _kindOnmLev _kindOopts _kindOpatchEhNmInInstance _kindOtopInstanceNmL _kindOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Kind_Variable :: Range -> Name -> T_Kind sem_Kind_Variable range_ name_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOfreeTvarS :: HsNameS _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 668, column 9) _idAsp = IdAsp_Kind_Var -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 668, column 9) _idOccKind = IdOcc_Kind -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 671, 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 187, column 9) _lhsOeh = rngLift range_ EH.KiExpr_Var name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 115, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 121, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Kind_Forall :: Range -> Names -> T_Kind -> T_Kind sem_Kind_Forall range_ kindvariables_ kind_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.KiExpr) _lhsOconNm :: Name _lhsOfreeTvarS :: HsNameS _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _kindOgUniq :: UID _kindOidGam :: IdDefOccGam _kindOnmLev :: NmLev _kindOopts :: EHCOpts _kindOpatchEhNmInInstance :: PatchEhNmInInstance _kindOtopInstanceNmL :: ([HsName]) _kindOtr :: (TraceOn -> [PP_Doc] -> TrPP) _kindIconNm :: Name _kindIeh :: (EH.KiExpr) _kindIerrSq :: ErrSq _kindIfreeTvarS :: HsNameS _kindIgUniq :: UID _kindIidUseOccGam :: IdUseOccGam _kindIpp :: PP_Doc _kindIppWrap :: (PP_Doc -> PP_Doc) _kindItopInstanceNmL :: ([HsName]) _kindItrpp :: TrPP _kindIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 312, column 9) _idDefOccGamInside = kvarL2IdDefOccGam _lhsInmLev range_ kindvariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 485, 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 189, column 9) _lhsOeh = _kindIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 115, column 9) _lhsOconNm = hsnUnknown -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 123, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _kindItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _kindOtr = _lhsItr ( _kindIconNm,_kindIeh,_kindIerrSq,_kindIfreeTvarS,_kindIgUniq,_kindIidUseOccGam,_kindIpp,_kindIppWrap,_kindItopInstanceNmL,_kindItrpp,_kindIundefOccGam) = kind_ _kindOgUniq _kindOidGam _kindOnmLev _kindOopts _kindOpatchEhNmInInstance _kindOtopInstanceNmL _kindOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Kind_Annotate :: Range -> T_KindAnnotation -> T_Kind -> T_Kind sem_Kind_Annotate range_ annotation_ kind_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOconNm :: Name _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.KiExpr) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _annotationOgUniq :: UID _annotationOidGam :: IdDefOccGam _annotationOnmLev :: NmLev _annotationOopts :: EHCOpts _annotationOpatchEhNmInInstance :: PatchEhNmInInstance _annotationOtopInstanceNmL :: ([HsName]) _annotationOtr :: (TraceOn -> [PP_Doc] -> TrPP) _kindOgUniq :: UID _kindOidGam :: IdDefOccGam _kindOnmLev :: NmLev _kindOopts :: EHCOpts _kindOpatchEhNmInInstance :: PatchEhNmInInstance _kindOtopInstanceNmL :: ([HsName]) _kindOtr :: (TraceOn -> [PP_Doc] -> TrPP) _annotationIeh :: (EH.KiExprAnn) _annotationIerrSq :: ErrSq _annotationIfreeTvarS :: HsNameS _annotationIgUniq :: UID _annotationIidUseOccGam :: IdUseOccGam _annotationIpp :: PP_Doc _annotationIppWrap :: (PP_Doc -> PP_Doc) _annotationItopInstanceNmL :: ([HsName]) _annotationItrpp :: TrPP _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]) _kindItrpp :: TrPP _kindIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 191, column 17) _eh = rngLift range_ EH.KiExpr_Ann _annotationIeh _kindIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 115, 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 117, column 30) _lhsOfreeTvarS = _annotationIfreeTvarS `Set.union` _kindIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _annotationItrpp >< _kindItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _annotationOtr = _lhsItr -- 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 -- copy rule (down) _kindOtr = _lhsItr ( _annotationIeh,_annotationIerrSq,_annotationIfreeTvarS,_annotationIgUniq,_annotationIidUseOccGam,_annotationIpp,_annotationIppWrap,_annotationItopInstanceNmL,_annotationItrpp,_annotationIundefOccGam) = annotation_ _annotationOgUniq _annotationOidGam _annotationOnmLev _annotationOopts _annotationOpatchEhNmInInstance _annotationOtopInstanceNmL _annotationOtr ( _kindIconNm,_kindIeh,_kindIerrSq,_kindIfreeTvarS,_kindIgUniq,_kindIidUseOccGam,_kindIpp,_kindIppWrap,_kindItopInstanceNmL,_kindItrpp,_kindIundefOccGam) = kind_ _kindOgUniq _kindOidGam _kindOnmLev _kindOopts _kindOpatchEhNmInInstance _kindOtopInstanceNmL _kindOtr in ( _lhsOconNm,_lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- KindAnnotation ---------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.KiExprAnn),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_KindAnnotation_Empty :: T_KindAnnotation sem_KindAnnotation_Empty = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.KiExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 915, 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 117, column 30) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- Kinds ------------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.KiExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Kinds_Cons :: T_Kind -> T_Kinds -> T_Kinds sem_Kinds_Cons hd_ tl_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.KiExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIconNm :: Name _hdIeh :: (EH.KiExpr) _hdIerrSq :: ErrSq _hdIfreeTvarS :: HsNameS _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 173, 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 117, column 30) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIconNm,_hdIeh,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOgUniq _hdOidGam _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOgUniq _tlOidGam _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Kinds_Nil :: T_Kinds sem_Kinds_Nil = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.KiExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 173, 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 117, column 30) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.PatExpr]),(EH.Expr -> EH.Expr),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),HsName,([HsName]),TrPP,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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOrefname :: HsName _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOtopInstanceNmL :: ([HsName]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternsItrpp :: TrPP _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1273, 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 736, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Var (_lhsIpatchEhNmInInstance _refname) : _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 756, 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 182, column 23) _lhsOidDefOccGam = _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternsOtr = _lhsItr ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr in ( _lhsOeh,_lhsOehTyMk,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOrefname,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOrefname :: HsName _lhsOtopInstanceNmL :: ([HsName]) _leftPatternOfixityGam :: FixityGam _leftPatternOgUniq :: UID _leftPatternOidGam :: IdDefOccGam _leftPatternOmoduleNm :: HsName _leftPatternOnmLev :: NmLev _leftPatternOopts :: EHCOpts _leftPatternOpatchEhNmInInstance :: PatchEhNmInInstance _leftPatternOtopInstanceNmL :: ([HsName]) _leftPatternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rightPatternOfixityGam :: FixityGam _rightPatternOgUniq :: UID _rightPatternOidGam :: IdDefOccGam _rightPatternOmoduleNm :: HsName _rightPatternOnmLev :: NmLev _rightPatternOopts :: EHCOpts _rightPatternOpatchEhNmInInstance :: PatchEhNmInInstance _rightPatternOtopInstanceNmL :: ([HsName]) _rightPatternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _leftPatternItrpp :: TrPP _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]) _rightPatternItrpp :: TrPP _rightPatternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1276, 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 740, column 9) _lhsOeh = [ rngLift range_ EH.PatExpr_Var (_lhsIpatchEhNmInInstance _refname) , _leftPatternIeh , _rightPatternIeh ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 756, 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 182, column 23) _lhsOidDefOccGam = _leftPatternIidDefOccGam `gamAddGam` _rightPatternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _leftPatternIidOccDefs ++ _rightPatternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftPatternItrpp >< _rightPatternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _leftPatternOtr = _lhsItr -- 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 -- copy rule (down) _rightPatternOtr = _lhsItr ( _leftPatternIeh,_leftPatternIerrSq,_leftPatternIgUniq,_leftPatternIidDefOccGam,_leftPatternIidOccDefs,_leftPatternIidUseOccGam,_leftPatternIisVar,_leftPatternImbTopRefname,_leftPatternIpp,_leftPatternIppWrap,_leftPatternItopInstanceNmL,_leftPatternItrpp,_leftPatternIundefOccGam) = leftPattern_ _leftPatternOfixityGam _leftPatternOgUniq _leftPatternOidGam _leftPatternOmoduleNm _leftPatternOnmLev _leftPatternOopts _leftPatternOpatchEhNmInInstance _leftPatternOtopInstanceNmL _leftPatternOtr ( _rightPatternIeh,_rightPatternIerrSq,_rightPatternIgUniq,_rightPatternIidDefOccGam,_rightPatternIidOccDefs,_rightPatternIidUseOccGam,_rightPatternIisVar,_rightPatternImbTopRefname,_rightPatternIpp,_rightPatternIppWrap,_rightPatternItopInstanceNmL,_rightPatternItrpp,_rightPatternIundefOccGam) = rightPattern_ _rightPatternOfixityGam _rightPatternOgUniq _rightPatternOidGam _rightPatternOmoduleNm _rightPatternOnmLev _rightPatternOopts _rightPatternOpatchEhNmInInstance _rightPatternOtopInstanceNmL _rightPatternOtr in ( _lhsOeh,_lhsOehTyMk,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOrefname,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _lefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _lefthandsideItrpp :: TrPP _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]) _patternsItrpp :: TrPP _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 746, column 9) _lhsOeh = _lefthandsideIeh ++ _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 756, 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 182, column 23) _lhsOidDefOccGam = _lefthandsideIidDefOccGam `gamAddGam` _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _lefthandsideIidOccDefs ++ _patternsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _lefthandsideItrpp >< _patternsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _lefthandsideOtr = _lhsItr -- 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 -- copy rule (down) _patternsOtr = _lhsItr ( _lefthandsideIeh,_lefthandsideIehTyMk,_lefthandsideIerrSq,_lefthandsideIgUniq,_lefthandsideIidDefOccGam,_lefthandsideIidOccDefs,_lefthandsideIidUseOccGam,_lefthandsideIpp,_lefthandsideIppWrap,_lefthandsideIrefname,_lefthandsideItopInstanceNmL,_lefthandsideItrpp,_lefthandsideIundefOccGam) = lefthandside_ _lefthandsideOcaseId _lefthandsideOfixityGam _lefthandsideOgUniq _lefthandsideOgenerDerivMp _lefthandsideOidGam _lefthandsideOmoduleNm _lefthandsideOnmLev _lefthandsideOnmLevFun _lefthandsideOopts _lefthandsideOpatchEhNmInInstance _lefthandsideOpragmas _lefthandsideOtopInstanceNmL _lefthandsideOtr ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr in ( _lhsOeh,_lhsOehTyMk,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOrefname,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _lefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _lefthandsideItrpp :: TrPP _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 290, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 433, 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 748, column 9) _lhsOeh = _lefthandsideIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 754, column 9) _lhsOehTyMk = rngLift range_ EH.Expr_TypeAs True _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 208, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 217, 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 182, column 23) _lhsOidDefOccGam = _lefthandsideIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _lefthandsideIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _lefthandsideItrpp >< _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _lefthandsideOtr = _lhsItr -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _lefthandsideIeh,_lefthandsideIehTyMk,_lefthandsideIerrSq,_lefthandsideIgUniq,_lefthandsideIidDefOccGam,_lefthandsideIidOccDefs,_lefthandsideIidUseOccGam,_lefthandsideIpp,_lefthandsideIppWrap,_lefthandsideIrefname,_lefthandsideItopInstanceNmL,_lefthandsideItrpp,_lefthandsideIundefOccGam) = lefthandside_ _lefthandsideOcaseId _lefthandsideOfixityGam _lefthandsideOgUniq _lefthandsideOgenerDerivMp _lefthandsideOidGam _lefthandsideOmoduleNm _lefthandsideOnmLev _lefthandsideOnmLevFun _lefthandsideOopts _lefthandsideOpatchEhNmInInstance _lefthandsideOpragmas _lefthandsideOtopInstanceNmL _lefthandsideOtr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOehTyMk,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOrefname,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Literal ----------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : Literal errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( Literal,ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Literal_Int :: Range -> Int -> String -> T_Literal sem_Literal_Int range_ base_ value_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_Literal_Char :: Range -> String -> T_Literal sem_Literal_Char range_ value_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_Literal_String :: Range -> String -> T_Literal sem_Literal_String range_ value_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_Literal_Float :: Range -> String -> T_Literal sem_Literal_Float range_ value_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- MaybeDeclarations ------------------------------------------- {- visit 0: inherited attributes: caseId : UID fixityGam : FixityGam generDerivMp : Map.Map HsName [(HsName,HsName)] idGam : IdDefOccGam moduleNm : HsName nameDeclCxt : NameDeclCxt nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance pragmas : Set.Set Pragma.Pragma tr : TraceOn -> [PP_Doc] -> TrPP 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 idInClassTySigDefOccGam : IdDefOccGam idInInstanceValDefOccGam : IdDefOccGam idOccDefs : [IdOcc] idUseOccGam : IdUseOccGam needsError : Bool pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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 -> NameDeclCxt -> NmLev -> EHCOpts -> PatchEhNmInInstance -> (Set.Set Pragma.Pragma) -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (Maybe [EH.Decl]),ErrSq,UID,FixityGam,(Set.Set Pragma.Pragma),IdDefOccGam,IdDpdMp,IdDefOccGam,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_MaybeDeclarations_Just :: T_Declarations -> T_MaybeDeclarations sem_MaybeDeclarations_Just just_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (Maybe [EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _justOcaseId :: UID _justOfixityGam :: FixityGam _justOgUniq :: UID _justOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _justOidGam :: IdDefOccGam _justOmoduleNm :: HsName _justOnameDeclCxt :: NameDeclCxt _justOnmLev :: NmLev _justOopts :: EHCOpts _justOpatchEhNmInInstance :: PatchEhNmInInstance _justOpragmas :: (Set.Set Pragma.Pragma) _justOtopInstanceNmL :: ([HsName]) _justOtr :: (TraceOn -> [PP_Doc] -> TrPP) _justIeh :: ([EH.Decl]) _justIerrSq :: ErrSq _justIgUniq :: UID _justIgathFixityGam :: FixityGam _justIgathPragmas :: (Set.Set Pragma.Pragma) _justIidDefOccGam :: IdDefOccGam _justIidDpdMp :: IdDpdMp _justIidInClassTySigDefOccGam :: IdDefOccGam _justIidInInstanceValDefOccGam :: IdDefOccGam _justIidOccDefs :: ([IdOcc]) _justIidUseOccGam :: IdUseOccGam _justIneedsError :: Bool _justIpp :: PP_Doc _justIppWrap :: (PP_Doc -> PP_Doc) _justItopInstanceNmL :: ([HsName]) _justItrpp :: TrPP _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 182, column 23) _lhsOidDefOccGam = _justIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = _justIidDpdMp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = _justIidInClassTySigDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = _justIidInInstanceValDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _justIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = _justIidUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _justItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _justOnameDeclCxt = _lhsInameDeclCxt -- 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 -- copy rule (down) _justOtr = _lhsItr ( _justIeh,_justIerrSq,_justIgUniq,_justIgathFixityGam,_justIgathPragmas,_justIidDefOccGam,_justIidDpdMp,_justIidInClassTySigDefOccGam,_justIidInInstanceValDefOccGam,_justIidOccDefs,_justIidUseOccGam,_justIneedsError,_justIpp,_justIppWrap,_justItopInstanceNmL,_justItrpp,_justIundefOccGam) = just_ _justOcaseId _justOfixityGam _justOgUniq _justOgenerDerivMp _justOidGam _justOmoduleNm _justOnameDeclCxt _justOnmLev _justOopts _justOpatchEhNmInInstance _justOpragmas _justOtopInstanceNmL _justOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_MaybeDeclarations_Nothing :: T_MaybeDeclarations sem_MaybeDeclarations_Nothing = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInameDeclCxt _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (Maybe [EH.Decl]) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidDefOccGam :: IdDefOccGam _lhsOidDpdMp :: IdDpdMp _lhsOidInClassTySigDefOccGam :: IdDefOccGam _lhsOidInInstanceValDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOneedsError :: Bool _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 841, column 19) _lhsOidDpdMp = Map.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 338, column 35) _lhsOidInClassTySigDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 339, column 36) _lhsOidInInstanceValDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, column 30) _lhsOidUseOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 799, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathPragmas,_lhsOidDefOccGam,_lhsOidDpdMp,_lhsOidInClassTySigDefOccGam,_lhsOidInInstanceValDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOneedsError,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- MaybeExports ------------------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_MaybeExports_Just :: T_Exports -> T_MaybeExports sem_MaybeExports_Just just_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _justOtr :: (TraceOn -> [PP_Doc] -> TrPP) _justIerrSq :: ErrSq _justIgUniq :: UID _justIgathFixityGam :: FixityGam _justIidUseOccGam :: IdUseOccGam _justIpp :: PP_Doc _justIppWrap :: (PP_Doc -> PP_Doc) _justItopInstanceNmL :: ([HsName]) _justItrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _justItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _justOtr = _lhsItr ( _justIerrSq,_justIgUniq,_justIgathFixityGam,_justIidUseOccGam,_justIpp,_justIppWrap,_justItopInstanceNmL,_justItrpp,_justIundefOccGam) = just_ _justOfixityGam _justOgUniq _justOidGam _justOisMainMod _justOisTopMod _justOmoduleNm _justOnmLev _justOopts _justOpatchEhNmInInstance _justOtopInstanceNmL _justOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_MaybeExports_Nothing :: T_MaybeExports sem_MaybeExports_Nothing = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (Maybe EH.Expr),ErrSq,UID,IdUseOccGam,PP_Doc,(Maybe PP_Doc),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_MaybeExpression_Just :: T_Expression -> T_MaybeExpression sem_MaybeExpression_Just just_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppMb :: (Maybe PP_Doc) _lhsOeh :: (Maybe EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _justOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _justItrpp :: TrPP _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 463, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _justItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _justOtr = _lhsItr ( _justIconNm,_justIeh,_justIerrSq,_justIgUniq,_justIidUseOccGam,_justIopChain,_justIoperatorName,_justIpp,_justIppWrap,_justItopInstanceNmL,_justItrpp,_justIundefOccGam) = just_ _justOcaseId _justOfixityGam _justOgUniq _justOgenerDerivMp _justOidGam _justOmoduleNm _justOnmLev _justOopts _justOpatchEhNmInInstance _justOpragmas _justOtopInstanceNmL _justOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppMb,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_MaybeExpression_Nothing :: T_MaybeExpression sem_MaybeExpression_Nothing = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppMb :: (Maybe PP_Doc) _lhsOeh :: (Maybe EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 457, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppMb,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- MaybeImportSpecification ------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isMainMod : Bool isTopMod : Bool moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: errSq : ErrSq gathFixityGam : FixityGam idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,FixityGam,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_MaybeImportSpecification_Just :: T_ImportSpecification -> T_MaybeImportSpecification sem_MaybeImportSpecification_Just just_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _justOtr :: (TraceOn -> [PP_Doc] -> TrPP) _justIerrSq :: ErrSq _justIgUniq :: UID _justIgathFixityGam :: FixityGam _justIidUseOccGam :: IdUseOccGam _justIpp :: PP_Doc _justIppWrap :: (PP_Doc -> PP_Doc) _justItopInstanceNmL :: ([HsName]) _justItrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _justItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _justOtr = _lhsItr ( _justIerrSq,_justIgUniq,_justIgathFixityGam,_justIidUseOccGam,_justIpp,_justIppWrap,_justItopInstanceNmL,_justItrpp,_justIundefOccGam) = just_ _justOfixityGam _justOgUniq _justOidGam _justOisMainMod _justOisTopMod _justOmoduleNm _justOnmLev _justOopts _justOpatchEhNmInInstance _justOtopInstanceNmL _justOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_MaybeImportSpecification_Nothing :: T_MaybeImportSpecification sem_MaybeImportSpecification_Nothing = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisMainMod _lhsIisTopMod _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- MaybeType --------------------------------------------------- {- visit 0: inherited attributes: doGenVarWild : Bool fixityGam : FixityGam idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (Maybe EH.TyExpr),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(Maybe PP_Doc),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_MaybeType_Just :: T_Type -> T_MaybeType sem_MaybeType_Just just_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppMb :: (Maybe PP_Doc) _lhsOeh :: (Maybe EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _justOdoGenVarWild :: Bool _justOfixityGam :: FixityGam _justOgUniq :: UID _justOidGam :: IdDefOccGam _justOisAsPred :: Bool _justOnmLev :: NmLev _justOopts :: EHCOpts _justOpatchEhNmInInstance :: PatchEhNmInInstance _justOtopInstanceNmL :: ([HsName]) _justOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _justItrpp :: TrPP _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 206, column 9) _lhsOeh = Just _justIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 129, column 21) _lhsOfreeTvarS = _justIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _justItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _justOtr = _lhsItr ( _justIconNm,_justIeh,_justIehMbAsPr,_justIehMbAsPrL,_justIehMbAsTyPr,_justIehMbAsTyPrL,_justIerrSq,_justIfreeTvarS,_justIgUniq,_justIidUseOccGam,_justImbRefConNm,_justIopChain,_justIoperatorName,_justIpp,_justIppWrap,_justItopInstanceNmL,_justItrpp,_justItyConIs,_justIundefOccGam) = just_ _justOdoGenVarWild _justOfixityGam _justOgUniq _justOidGam _justOisAsPred _justOnmLev _justOopts _justOpatchEhNmInInstance _justOtopInstanceNmL _justOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppMb,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_MaybeType_Nothing :: T_MaybeType sem_MaybeType_Nothing = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppMb :: (Maybe PP_Doc) _lhsOeh :: (Maybe EH.TyExpr) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 199, column 9) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 202, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppMb,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.Expr),ErrSq,(Set.Set Pragma.Pragma),UID,FixityGam,IdDefOccGam,IdUseOccGam,Bool,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _fileheaderpragmasOtr :: (TraceOn -> [PP_Doc] -> TrPP) _exportsOfixityGam :: FixityGam _exportsOgUniq :: UID _exportsOidGam :: IdDefOccGam _exportsOisMainMod :: Bool _exportsOisTopMod :: Bool _exportsOmoduleNm :: HsName _exportsOnmLev :: NmLev _exportsOopts :: EHCOpts _exportsOpatchEhNmInInstance :: PatchEhNmInInstance _exportsOtopInstanceNmL :: ([HsName]) _exportsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _bodyOfixityGam :: FixityGam _bodyOgUniq :: UID _bodyOidGam :: IdDefOccGam _bodyOisMainMod :: Bool _bodyOisTopMod :: Bool _bodyOmodEntToOrig :: ModEntRngMp _bodyOmodInScope :: ModEntDomMp _bodyOmoduleNm :: HsName _bodyOnmLev :: NmLev _bodyOopts :: EHCOpts _bodyOpatchEhNmInInstance :: PatchEhNmInInstance _bodyOtopInstanceNmL :: ([HsName]) _bodyOtr :: (TraceOn -> [PP_Doc] -> TrPP) _fileheaderpragmasIerrSq :: ErrSq _fileheaderpragmasIgUniq :: UID _fileheaderpragmasIgathPragmas :: (Set.Set Pragma.Pragma) _fileheaderpragmasIidUseOccGam :: IdUseOccGam _fileheaderpragmasIpp :: PP_Doc _fileheaderpragmasIppWrap :: (PP_Doc -> PP_Doc) _fileheaderpragmasItopInstanceNmL :: ([HsName]) _fileheaderpragmasItrpp :: TrPP _fileheaderpragmasIundefOccGam :: IdUseOccGam _exportsIerrSq :: ErrSq _exportsIgUniq :: UID _exportsIgathFixityGam :: FixityGam _exportsIidUseOccGam :: IdUseOccGam _exportsIpp :: PP_Doc _exportsIppWrap :: (PP_Doc -> PP_Doc) _exportsItopInstanceNmL :: ([HsName]) _exportsItrpp :: TrPP _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]) _bodyItrpp :: TrPP _bodyIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 27, column 9) _fileHeaderPragmas = _fileheaderpragmasIgathPragmas -- "build/103/lib-ehc/UHC/Light/Compiler/HS/Pragmas.ag"(line 27, 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 316, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _fileheaderpragmasItrpp >< _exportsItrpp >< _bodyItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _fileheaderpragmasOtr = _lhsItr -- 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) _exportsOtr = _lhsItr -- 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 -- copy rule (down) _bodyOtr = _lhsItr ( _fileheaderpragmasIerrSq,_fileheaderpragmasIgUniq,_fileheaderpragmasIgathPragmas,_fileheaderpragmasIidUseOccGam,_fileheaderpragmasIpp,_fileheaderpragmasIppWrap,_fileheaderpragmasItopInstanceNmL,_fileheaderpragmasItrpp,_fileheaderpragmasIundefOccGam) = fileheaderpragmas_ _fileheaderpragmasOgUniq _fileheaderpragmasOidGam _fileheaderpragmasOnmLev _fileheaderpragmasOopts _fileheaderpragmasOpatchEhNmInInstance _fileheaderpragmasOtopInstanceNmL _fileheaderpragmasOtr ( _exportsIerrSq,_exportsIgUniq,_exportsIgathFixityGam,_exportsIidUseOccGam,_exportsIpp,_exportsIppWrap,_exportsItopInstanceNmL,_exportsItrpp,_exportsIundefOccGam) = exports_ _exportsOfixityGam _exportsOgUniq _exportsOidGam _exportsOisMainMod _exportsOisTopMod _exportsOmoduleNm _exportsOnmLev _exportsOopts _exportsOpatchEhNmInInstance _exportsOtopInstanceNmL _exportsOtr ( _bodyIeh,_bodyIerrSq,_bodyIextraModImpL,_bodyIgUniq,_bodyIgathFixityGam,_bodyIgathIdGam,_bodyIidUseOccGam,_bodyImainValExists,_bodyIpp,_bodyIppWrap,_bodyItopInstanceNmL,_bodyItrpp,_bodyIundefOccGam) = body_ _bodyOfixityGam _bodyOgUniq _bodyOidGam _bodyOisMainMod _bodyOisTopMod _bodyOmodEntToOrig _bodyOmodInScope _bodyOmoduleNm _bodyOnmLev _bodyOopts _bodyOpatchEhNmInInstance _bodyOpragmas _bodyOtopInstanceNmL _bodyOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfileHeaderPragmas,_lhsOgUniq,_lhsOgathFixityGam,_lhsOgathIdGam,_lhsOidUseOccGam,_lhsOmainValExists,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Pattern ----------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.PatExpr),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,Bool,(Maybe HsName),PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Pattern_Literal :: Range -> Int -> T_Literal -> T_Pattern sem_Pattern_Literal range_ sign_ literal_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _literalOgUniq :: UID _literalOidGam :: IdDefOccGam _literalOnmLev :: NmLev _literalOopts :: EHCOpts _literalOpatchEhNmInInstance :: PatchEhNmInInstance _literalOtopInstanceNmL :: ([HsName]) _literalOtr :: (TraceOn -> [PP_Doc] -> TrPP) _literalIeh :: Literal _literalIerrSq :: ErrSq _literalIgUniq :: UID _literalIidUseOccGam :: IdUseOccGam _literalIpp :: PP_Doc _literalIppWrap :: (PP_Doc -> PP_Doc) _literalItopInstanceNmL :: ([HsName]) _literalItrpp :: TrPP _literalIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 596, 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 596, column 9) _litnames = litNames _lhsIopts _literalIeh True sign_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 599, column 29) (_litrefname,_litrefnames,_idUseOccGam,_errIdUse) = mkUseOccGam' _lhsIopts _lhsIidGam _litnames range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 601, 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 603, column 9) _lhsOidUseOccGam = gamUnions [ _idUseOccGam, _idUseOccGamEq , _idUseOccGamCls , _literalIidUseOccGam ] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 802, 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 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _literalItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _literalOtr = _lhsItr ( _literalIeh,_literalIerrSq,_literalIgUniq,_literalIidUseOccGam,_literalIpp,_literalIppWrap,_literalItopInstanceNmL,_literalItrpp,_literalIundefOccGam) = literal_ _literalOgUniq _literalOidGam _literalOnmLev _literalOopts _literalOpatchEhNmInInstance _literalOtopInstanceNmL _literalOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_Variable :: Range -> Name -> T_Pattern sem_Pattern_Variable range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 281, 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 96, column 9) _isWildcard = hsnIsWild name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 172, column 9) _idOccDef = IdOcc _refname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 172, column 9) _idOccDefsNoWildcard = if _isWildcard then [] else [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 176, column 9) _idOccDefs = _idOccDefsNoWildcard -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 234, 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 813, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Var (_lhsIpatchEhNmInInstance _refname) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 271, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_Constructor :: Range -> Name -> T_Patterns -> T_Pattern sem_Pattern_Constructor range_ name_ patterns_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternsItrpp :: TrPP _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 638, 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 641, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_patternsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 226, column 9) _conNm = name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 816, column 9) _lhsOeh = ehPatConApp range_ _refname _patternsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternsOtr = _lhsItr ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_Parenthesized :: Range -> T_Pattern -> T_Pattern sem_Pattern_Parenthesized range_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 818, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Parens _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 182, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_As :: Range -> Name -> T_Pattern -> T_Pattern sem_Pattern_As range_ name_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOidDefOccGam :: IdDefOccGam _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 281, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var _idOccDefsNoWildcard -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 283, 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 96, column 9) _isWildcard = hsnIsWild name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 172, column 9) _idOccDef = IdOcc _refname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 172, column 9) _idOccDefsNoWildcard = if _isWildcard then [] else [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 178, column 9) _idOccDefs = _idOccDefsNoWildcard ++ _patternIidOccDefs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 234, 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 824, column 9) _lhsOeh = rngLift range_ EH.PatExpr_VarAs (_lhsIpatchEhNmInInstance _refname) _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 105, column 21) _lhsOidOccDefs = _idOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_Wildcard :: Range -> T_Pattern sem_Pattern_Wildcard range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 828, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Var hsnWild -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_Tuple :: Range -> Int -> T_Patterns -> T_Pattern sem_Pattern_Tuple range_ arity_ patterns_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternsItrpp :: TrPP _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 820, 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 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternsOtr = _lhsItr ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _annotationOtr :: (TraceOn -> [PP_Doc] -> TrPP) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _annotationIeh :: (EH.PatExprAnn) _annotationIerrSq :: ErrSq _annotationIgUniq :: UID _annotationIidDefOccGam :: IdDefOccGam _annotationIidOccDefs :: ([IdOcc]) _annotationIidUseOccGam :: IdUseOccGam _annotationIpp :: PP_Doc _annotationIppWrap :: (PP_Doc -> PP_Doc) _annotationItopInstanceNmL :: ([HsName]) _annotationItrpp :: TrPP _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]) _patternItrpp :: TrPP _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, column 9) _lhsOmbTopRefname = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 830, column 17) _eh = rngLift range_ EH.PatExpr_Ann _annotationIeh _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 182, column 23) _lhsOidDefOccGam = _annotationIidDefOccGam `gamAddGam` _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _annotationIidOccDefs ++ _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _annotationItrpp >< _patternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _annotationOtr = _lhsItr -- 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 -- copy rule (down) _patternOtr = _lhsItr ( _annotationIeh,_annotationIerrSq,_annotationIgUniq,_annotationIidDefOccGam,_annotationIidOccDefs,_annotationIidUseOccGam,_annotationIpp,_annotationIppWrap,_annotationItopInstanceNmL,_annotationItrpp,_annotationIundefOccGam) = annotation_ _annotationOfixityGam _annotationOgUniq _annotationOidGam _annotationOmoduleNm _annotationOnmLev _annotationOopts _annotationOpatchEhNmInInstance _annotationOtopInstanceNmL _annotationOtr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOisAsPred :: Bool _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 285, column 9) _idDefOccGamType = tvarS2IdDefOccGam _lhsInmLev range_ _typeIfreeTvarS -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 429, column 9) _typeOidGam = gamUnion _idDefOccGamType _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 832, column 9) _lhsOeh = rngLift range_ EH.PatExpr_TypeAs _typeIeh _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 225, 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 182, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp >< _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _patternOtr = _lhsItr -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftPatternOfixityGam :: FixityGam _leftPatternOgUniq :: UID _leftPatternOidGam :: IdDefOccGam _leftPatternOmoduleNm :: HsName _leftPatternOnmLev :: NmLev _leftPatternOopts :: EHCOpts _leftPatternOpatchEhNmInInstance :: PatchEhNmInInstance _leftPatternOtopInstanceNmL :: ([HsName]) _leftPatternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rightPatternOfixityGam :: FixityGam _rightPatternOgUniq :: UID _rightPatternOidGam :: IdDefOccGam _rightPatternOmoduleNm :: HsName _rightPatternOnmLev :: NmLev _rightPatternOopts :: EHCOpts _rightPatternOpatchEhNmInInstance :: PatchEhNmInInstance _rightPatternOtopInstanceNmL :: ([HsName]) _rightPatternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _leftPatternItrpp :: TrPP _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]) _rightPatternItrpp :: TrPP _rightPatternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 638, 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 643, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_leftPatternIidUseOccGam,_rightPatternIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 228, column 9) _conNm = constructorOperator_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 834, column 9) _lhsOeh = ehPatConApp range_ _refname [_leftPatternIeh,_rightPatternIeh] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = _leftPatternIidDefOccGam `gamAddGam` _rightPatternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftPatternItrpp >< _rightPatternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _leftPatternOtr = _lhsItr -- 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 -- copy rule (down) _rightPatternOtr = _lhsItr ( _leftPatternIeh,_leftPatternIerrSq,_leftPatternIgUniq,_leftPatternIidDefOccGam,_leftPatternIidOccDefs,_leftPatternIidUseOccGam,_leftPatternIisVar,_leftPatternImbTopRefname,_leftPatternIpp,_leftPatternIppWrap,_leftPatternItopInstanceNmL,_leftPatternItrpp,_leftPatternIundefOccGam) = leftPattern_ _leftPatternOfixityGam _leftPatternOgUniq _leftPatternOidGam _leftPatternOmoduleNm _leftPatternOnmLev _leftPatternOopts _leftPatternOpatchEhNmInInstance _leftPatternOtopInstanceNmL _leftPatternOtr ( _rightPatternIeh,_rightPatternIerrSq,_rightPatternIgUniq,_rightPatternIidDefOccGam,_rightPatternIidOccDefs,_rightPatternIidUseOccGam,_rightPatternIisVar,_rightPatternImbTopRefname,_rightPatternIpp,_rightPatternIppWrap,_rightPatternItopInstanceNmL,_rightPatternItrpp,_rightPatternIundefOccGam) = rightPattern_ _rightPatternOfixityGam _rightPatternOgUniq _rightPatternOidGam _rightPatternOmoduleNm _rightPatternOnmLev _rightPatternOopts _rightPatternOpatchEhNmInInstance _rightPatternOtopInstanceNmL _rightPatternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_List :: Range -> T_Patterns -> T_Pattern sem_Pattern_List range_ patterns_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOfixityGam :: FixityGam _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternsItrpp :: TrPP _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 645, 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 647, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_patternsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 836, 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 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = _patternsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternsOtr = _lhsItr ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidDefOccGam,_patternsIidOccDefs,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsIundefOccGam) = patterns_ _patternsOfixityGam _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_Record :: Range -> Name -> T_RecordPatternBindings -> T_Pattern sem_Pattern_Record range_ name_ recordPatternBindings_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _recordPatternBindingsOfixityGam :: FixityGam _recordPatternBindingsOgUniq :: UID _recordPatternBindingsOidGam :: IdDefOccGam _recordPatternBindingsOmoduleNm :: HsName _recordPatternBindingsOnmLev :: NmLev _recordPatternBindingsOopts :: EHCOpts _recordPatternBindingsOpatchEhNmInInstance :: PatchEhNmInInstance _recordPatternBindingsOtopInstanceNmL :: ([HsName]) _recordPatternBindingsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _recordPatternBindingsItrpp :: TrPP _recordPatternBindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 638, 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 649, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_recordPatternBindingsIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 226, column 9) _conNm = name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 838, 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 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = _recordPatternBindingsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _recordPatternBindingsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _recordPatternBindingsOtr = _lhsItr ( _recordPatternBindingsIeh,_recordPatternBindingsIerrSq,_recordPatternBindingsIgUniq,_recordPatternBindingsIidDefOccGam,_recordPatternBindingsIidOccDefs,_recordPatternBindingsIidUseOccGam,_recordPatternBindingsIpp,_recordPatternBindingsIppL,_recordPatternBindingsIppWrap,_recordPatternBindingsItopInstanceNmL,_recordPatternBindingsItrpp,_recordPatternBindingsIundefOccGam) = recordPatternBindings_ _recordPatternBindingsOfixityGam _recordPatternBindingsOgUniq _recordPatternBindingsOidGam _recordPatternBindingsOmoduleNm _recordPatternBindingsOnmLev _recordPatternBindingsOopts _recordPatternBindingsOpatchEhNmInInstance _recordPatternBindingsOtopInstanceNmL _recordPatternBindingsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rowRecordPattternBindingsOfixityGam :: FixityGam _rowRecordPattternBindingsOgUniq :: UID _rowRecordPattternBindingsOidGam :: IdDefOccGam _rowRecordPattternBindingsOmoduleNm :: HsName _rowRecordPattternBindingsOnmLev :: NmLev _rowRecordPattternBindingsOopts :: EHCOpts _rowRecordPattternBindingsOpatchEhNmInInstance :: PatchEhNmInInstance _rowRecordPattternBindingsOtopInstanceNmL :: ([HsName]) _rowRecordPattternBindingsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _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]) _rowRecordPattternBindingsItrpp :: TrPP _rowRecordPattternBindingsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 840, column 9) _lhsOeh = foldl (flip ($)) _patternIeh _rowRecordPattternBindingsIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = _patternIidDefOccGam `gamAddGam` _rowRecordPattternBindingsIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternIidOccDefs ++ _rowRecordPattternBindingsIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp >< _rowRecordPattternBindingsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _patternOtr = _lhsItr -- 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 -- copy rule (down) _rowRecordPattternBindingsOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr ( _rowRecordPattternBindingsIeh,_rowRecordPattternBindingsIerrSq,_rowRecordPattternBindingsIgUniq,_rowRecordPattternBindingsIidDefOccGam,_rowRecordPattternBindingsIidOccDefs,_rowRecordPattternBindingsIidUseOccGam,_rowRecordPattternBindingsIpp,_rowRecordPattternBindingsIppL,_rowRecordPattternBindingsIppWrap,_rowRecordPattternBindingsItopInstanceNmL,_rowRecordPattternBindingsItrpp,_rowRecordPattternBindingsIundefOccGam) = rowRecordPattternBindings_ _rowRecordPattternBindingsOfixityGam _rowRecordPattternBindingsOgUniq _rowRecordPattternBindingsOidGam _rowRecordPattternBindingsOmoduleNm _rowRecordPattternBindingsOnmLev _rowRecordPattternBindingsOopts _rowRecordPattternBindingsOpatchEhNmInInstance _rowRecordPattternBindingsOtopInstanceNmL _rowRecordPattternBindingsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_RowRecordEmpty :: Range -> T_Pattern sem_Pattern_RowRecordEmpty range_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 842, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Rec (rngLift range_ EH.RecPatExpr_Empty) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, column 9) _isAsPred = False -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 275, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_Irrefutable :: Range -> T_Pattern -> T_Pattern sem_Pattern_Irrefutable range_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 844, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Irrefutable _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 182, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pattern_Bang :: Range -> T_Pattern -> T_Pattern sem_Pattern_Bang range_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOmbTopRefname :: (Maybe HsName) _lhsOeh :: (EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOisVar :: Bool _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 236, 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 846, column 9) _lhsOeh = rngLift range_ EH.PatExpr_Bang _patternIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 199, 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 182, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOisVar,_lhsOmbTopRefname,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- PatternAnnotation ------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.PatExprAnn),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_PatternAnnotation_Empty :: T_PatternAnnotation sem_PatternAnnotation_Empty = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.PatExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 903, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- Patterns ---------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.PatExpr]),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Patterns_Cons :: T_Pattern -> T_Patterns -> T_Patterns sem_Patterns_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.PatExpr]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 796, 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 182, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIisVar,_hdImbTopRefname,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Patterns_Nil :: T_Patterns sem_Patterns_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.PatExpr]) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 796, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- Pragma ------------------------------------------------------ {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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 : _ alternative CHR: child range : {Range} child chrRules : {String} -} -- 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) sem_Pragma (Pragma_CHR _range _chrRules) = (sem_Pragma_CHR _range _chrRules) -- semantic domain type T_Pragma = UID -> IdDefOccGam -> NmLev -> EHCOpts -> PatchEhNmInInstance -> ([HsName]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,(Set.Set Pragma.Pragma),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Pragma_Language :: Range -> Names -> T_Pragma sem_Pragma_Language range_ pragmas_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pragma_OptionsUHC :: Range -> String -> T_Pragma sem_Pragma_OptionsUHC range_ options_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pragma_Derivable :: Range -> Name -> Name -> Name -> T_Pragma sem_Pragma_Derivable range_ className_ fieldName_ defaultName_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pragma_ExcludeIfTarget :: Range -> ([String]) -> T_Pragma sem_Pragma_ExcludeIfTarget range_ targetNames_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pragma_CHR :: Range -> String -> T_Pragma sem_Pragma_CHR range_ chrRules_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Pragmas ----------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ErrSq,UID,(Set.Set Pragma.Pragma),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Pragmas_Cons :: T_Pragma -> T_Pragmas -> T_Pragmas sem_Pragmas_Cons hd_ tl_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIgathPragmas :: (Set.Set Pragma.Pragma) _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _hdIundefOccGam :: IdUseOccGam _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIgathPragmas :: (Set.Set Pragma.Pragma) _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIerrSq,_hdIgUniq,_hdIgathPragmas,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOgUniq _hdOidGam _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIerrSq,_tlIgUniq,_tlIgathPragmas,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOgUniq _tlOidGam _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Pragmas_Nil :: T_Pragmas sem_Pragmas_Nil = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOgathPragmas :: (Set.Set Pragma.Pragma) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOerrSq,_lhsOgUniq,_lhsOgathPragmas,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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 nameDeclCxt : _ 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.Expr -> EH.Expr),ErrSq,UID,FixityGam,IdDefOccGam,IdUseOccGam,NmLev,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _guardOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _guardItrpp :: TrPP _guardIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 611, 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 613, 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 611, column 9) _idUseOccGam = gamUnions [_idUseOccGamVal,_idUseOccGamType] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 616, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_guardIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 100, column 9) _errSq = Seq.unions [Seq.fromList _errIdUseVal, Seq.fromList _errIdUseType, _guardIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 609, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _guardItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _guardOtr = _lhsItr ( _guardIconNm,_guardIeh,_guardIerrSq,_guardIgUniq,_guardIidUseOccGam,_guardIopChain,_guardIoperatorName,_guardIpp,_guardIppWrap,_guardItopInstanceNmL,_guardItrpp,_guardIundefOccGam) = guard_ _guardOcaseId _guardOfixityGam _guardOgUniq _guardOgenerDerivMp _guardOidGam _guardOmoduleNm _guardOnmLev _guardOopts _guardOpatchEhNmInInstance _guardOpragmas _guardOtopInstanceNmL _guardOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 _declarationsOnameDeclCxt :: NameDeclCxt _declarationsOnmLev :: NmLev _declarationsOopts :: EHCOpts _declarationsOpatchEhNmInInstance :: PatchEhNmInInstance _declarationsOpragmas :: (Set.Set Pragma.Pragma) _declarationsOtopInstanceNmL :: ([HsName]) _declarationsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _declarationsIeh :: ([EH.Decl]) _declarationsIerrSq :: ErrSq _declarationsIgUniq :: UID _declarationsIgathFixityGam :: FixityGam _declarationsIgathPragmas :: (Set.Set Pragma.Pragma) _declarationsIidDefOccGam :: IdDefOccGam _declarationsIidDpdMp :: IdDpdMp _declarationsIidInClassTySigDefOccGam :: IdDefOccGam _declarationsIidInInstanceValDefOccGam :: IdDefOccGam _declarationsIidOccDefs :: ([IdOcc]) _declarationsIidUseOccGam :: IdUseOccGam _declarationsIneedsError :: Bool _declarationsIpp :: PP_Doc _declarationsIppWrap :: (PP_Doc -> PP_Doc) _declarationsItopInstanceNmL :: ([HsName]) _declarationsItrpp :: TrPP _declarationsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDeclCxt.ag"(line 31, column 9) _nameDeclCxt = NameDeclCxt_Plain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 469, column 9) _idGam = gamUnion _declarationsIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1083, column 9) _sccOrder = idDpdMp2SccOrder _declarationsIidDefOccGam _declarationsIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1217, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH _lhsIopts 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 98, 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 611, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _declarationsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _declarationsOnameDeclCxt = _nameDeclCxt -- 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) _declarationsOtr = _lhsItr ( _declarationsIeh,_declarationsIerrSq,_declarationsIgUniq,_declarationsIgathFixityGam,_declarationsIgathPragmas,_declarationsIidDefOccGam,_declarationsIidDpdMp,_declarationsIidInClassTySigDefOccGam,_declarationsIidInInstanceValDefOccGam,_declarationsIidOccDefs,_declarationsIidUseOccGam,_declarationsIneedsError,_declarationsIpp,_declarationsIppWrap,_declarationsItopInstanceNmL,_declarationsItrpp,_declarationsIundefOccGam) = declarations_ _declarationsOcaseId _declarationsOfixityGam _declarationsOgUniq _declarationsOgenerDerivMp _declarationsOidGam _declarationsOmoduleNm _declarationsOnameDeclCxt _declarationsOnmLev _declarationsOopts _declarationsOpatchEhNmInInstance _declarationsOpragmas _declarationsOtopInstanceNmL _declarationsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOidGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 471, column 9) _lhsOidGam = gamUnion _patternIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 618, 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 620, 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 102, 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 613, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp >< _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _patternOtr = _lhsItr -- 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 -- copy rule (down) _expressionOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Qualifier_Empty :: Range -> T_Qualifier sem_Qualifier_Empty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 622, 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 104, column 9) _errSq = Seq.fromList _errIdUse -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 618, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.Expr -> EH.Expr]),ErrSq,UID,IdDefOccGam,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 603, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidGam,_hdIidUseOccGam,_hdInmLev,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidGam,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidGam,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Qualifiers_Nil :: T_Qualifiers sem_Qualifiers_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 603, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.DataFieldExpr -> EH.DataFieldExpr),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (EH.DataFieldExpr -> EH.DataFieldExpr) _lhsOerrSq :: ErrSq _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 683, 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 685, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_expressionIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 108, 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 643, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.DataFieldExpr -> EH.DataFieldExpr]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataFieldExpr -> EH.DataFieldExpr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: (EH.DataFieldExpr -> EH.DataFieldExpr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 637, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_RecordExpressionBindings_Nil :: T_RecordExpressionBindings sem_RecordExpressionBindings_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.DataFieldExpr -> EH.DataFieldExpr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 637, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- RecordPatternBinding ---------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.DataFieldPatExpr -> EH.DataFieldPatExpr),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_RecordPatternBinding_Binding :: Range -> Name -> T_Pattern -> T_RecordPatternBinding sem_RecordPatternBinding_Binding range_ name_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: (EH.DataFieldPatExpr -> EH.DataFieldPatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _patternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 689, 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 692, column 9) _lhsOidUseOccGam = gamUnions [_idUseOccGam,_patternIidUseOccGam] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 112, 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 709, 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 182, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_RecordPatternBinding_Pun :: Range -> Name -> T_RecordPatternBinding sem_RecordPatternBinding_Pun range_ name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.DataFieldPatExpr -> EH.DataFieldPatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 295, column 9) _idDefOccGam = mkDefOccGam _lhsInmLev range_ IdAsp_Val_Var [_idOccDef] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 689, 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 182, column 9) _idOccDef = IdOcc _refname IdOcc_Val -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 114, 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 711, 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 182, column 23) _lhsOidDefOccGam = _idDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- RecordPatternBindings --------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.DataFieldPatExpr -> EH.DataFieldPatExpr]),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_RecordPatternBindings_Cons :: T_RecordPatternBinding -> T_RecordPatternBindings -> T_RecordPatternBindings sem_RecordPatternBindings_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 703, 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 182, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_RecordPatternBindings_Nil :: T_RecordPatternBindings sem_RecordPatternBindings_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 703, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.Expr errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP undefOccGam : IdUseOccGam alternatives: alternative Expression: child range : {Range} child expression : Expression child where : MaybeDeclarations visit 0: local nameDeclCxt : _ 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 nameDeclCxt : _ 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.Expr),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOeh :: (EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _whereOcaseId :: UID _whereOfixityGam :: FixityGam _whereOgUniq :: UID _whereOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _whereOidGam :: IdDefOccGam _whereOmoduleNm :: HsName _whereOnameDeclCxt :: NameDeclCxt _whereOnmLev :: NmLev _whereOopts :: EHCOpts _whereOpatchEhNmInInstance :: PatchEhNmInInstance _whereOpragmas :: (Set.Set Pragma.Pragma) _whereOtopInstanceNmL :: ([HsName]) _whereOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam _whereIeh :: (Maybe [EH.Decl]) _whereIerrSq :: ErrSq _whereIgUniq :: UID _whereIgathFixityGam :: FixityGam _whereIgathPragmas :: (Set.Set Pragma.Pragma) _whereIidDefOccGam :: IdDefOccGam _whereIidDpdMp :: IdDpdMp _whereIidInClassTySigDefOccGam :: IdDefOccGam _whereIidInInstanceValDefOccGam :: IdDefOccGam _whereIidOccDefs :: ([IdOcc]) _whereIidUseOccGam :: IdUseOccGam _whereIneedsError :: Bool _whereIpp :: PP_Doc _whereIppWrap :: (PP_Doc -> PP_Doc) _whereItopInstanceNmL :: ([HsName]) _whereItrpp :: TrPP _whereIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDeclCxt.ag"(line 36, column 9) _nameDeclCxt = NameDeclCxt_Plain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 461, column 9) _idGam = gamUnion _whereIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1079, column 9) _sccOrder = idDpdMp2SccOrder _whereIidDefOccGam _whereIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1212, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH _lhsIopts 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 762, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp >< _whereItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _expressionOtr = _lhsItr -- 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) _whereOnameDeclCxt = _nameDeclCxt -- 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 -- copy rule (down) _whereOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr ( _whereIeh,_whereIerrSq,_whereIgUniq,_whereIgathFixityGam,_whereIgathPragmas,_whereIidDefOccGam,_whereIidDpdMp,_whereIidInClassTySigDefOccGam,_whereIidInInstanceValDefOccGam,_whereIidOccDefs,_whereIidUseOccGam,_whereIneedsError,_whereIpp,_whereIppWrap,_whereItopInstanceNmL,_whereItrpp,_whereIundefOccGam) = where_ _whereOcaseId _whereOfixityGam _whereOgUniq _whereOgenerDerivMp _whereOidGam _whereOmoduleNm _whereOnameDeclCxt _whereOnmLev _whereOopts _whereOpatchEhNmInInstance _whereOpragmas _whereOtopInstanceNmL _whereOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOeh :: (EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _guardedexpressionsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _whereOcaseId :: UID _whereOfixityGam :: FixityGam _whereOgUniq :: UID _whereOgenerDerivMp :: (Map.Map HsName [(HsName,HsName)]) _whereOidGam :: IdDefOccGam _whereOmoduleNm :: HsName _whereOnameDeclCxt :: NameDeclCxt _whereOnmLev :: NmLev _whereOopts :: EHCOpts _whereOpatchEhNmInInstance :: PatchEhNmInInstance _whereOpragmas :: (Set.Set Pragma.Pragma) _whereOtopInstanceNmL :: ([HsName]) _whereOtr :: (TraceOn -> [PP_Doc] -> TrPP) _guardedexpressionsIeh :: ([UIDS -> EH.Expr -> EH.Expr]) _guardedexpressionsIerrSq :: ErrSq _guardedexpressionsIgUniq :: UID _guardedexpressionsIidUseOccGam :: IdUseOccGam _guardedexpressionsIpp :: PP_Doc _guardedexpressionsIppWrap :: (PP_Doc -> PP_Doc) _guardedexpressionsItopInstanceNmL :: ([HsName]) _guardedexpressionsItrpp :: TrPP _guardedexpressionsIundefOccGam :: IdUseOccGam _whereIeh :: (Maybe [EH.Decl]) _whereIerrSq :: ErrSq _whereIgUniq :: UID _whereIgathFixityGam :: FixityGam _whereIgathPragmas :: (Set.Set Pragma.Pragma) _whereIidDefOccGam :: IdDefOccGam _whereIidDpdMp :: IdDpdMp _whereIidInClassTySigDefOccGam :: IdDefOccGam _whereIidInInstanceValDefOccGam :: IdDefOccGam _whereIidOccDefs :: ([IdOcc]) _whereIidUseOccGam :: IdUseOccGam _whereIneedsError :: Bool _whereIpp :: PP_Doc _whereIppWrap :: (PP_Doc -> PP_Doc) _whereItopInstanceNmL :: ([HsName]) _whereItrpp :: TrPP _whereIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDeclCxt.ag"(line 36, column 9) _nameDeclCxt = NameDeclCxt_Plain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 461, column 9) _idGam = gamUnion _whereIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1079, column 9) _sccOrder = idDpdMp2SccOrder _whereIidDefOccGam _whereIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1212, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH _lhsIopts 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 766, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _guardedexpressionsItrpp >< _whereItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _guardedexpressionsOtr = _lhsItr -- 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) _whereOnameDeclCxt = _nameDeclCxt -- 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 -- copy rule (down) _whereOtr = _lhsItr ( _guardedexpressionsIeh,_guardedexpressionsIerrSq,_guardedexpressionsIgUniq,_guardedexpressionsIidUseOccGam,_guardedexpressionsIpp,_guardedexpressionsIppWrap,_guardedexpressionsItopInstanceNmL,_guardedexpressionsItrpp,_guardedexpressionsIundefOccGam) = guardedexpressions_ _guardedexpressionsOcaseId _guardedexpressionsOfixityGam _guardedexpressionsOgUniq _guardedexpressionsOgenerDerivMp _guardedexpressionsOidGam _guardedexpressionsOmoduleNm _guardedexpressionsOmustBeMono _guardedexpressionsOnmLev _guardedexpressionsOopts _guardedexpressionsOpatchEhNmInInstance _guardedexpressionsOpragmas _guardedexpressionsOsepPP _guardedexpressionsOtopInstanceNmL _guardedexpressionsOtr ( _whereIeh,_whereIerrSq,_whereIgUniq,_whereIgathFixityGam,_whereIgathPragmas,_whereIidDefOccGam,_whereIidDpdMp,_whereIidInClassTySigDefOccGam,_whereIidInInstanceValDefOccGam,_whereIidOccDefs,_whereIidUseOccGam,_whereIneedsError,_whereIpp,_whereIppWrap,_whereItopInstanceNmL,_whereItrpp,_whereIundefOccGam) = where_ _whereOcaseId _whereOfixityGam _whereOgUniq _whereOgenerDerivMp _whereOidGam _whereOmoduleNm _whereOnameDeclCxt _whereOnmLev _whereOopts _whereOpatchEhNmInInstance _whereOpragmas _whereOtopInstanceNmL _whereOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.Expr -> EH.Expr),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _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 685, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOeh :: (EH.Expr -> EH.Expr) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _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 683, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.Expr -> EH.Expr]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: (EH.Expr -> EH.Expr) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 677, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_RowRecordExpressionUpdates_Nil :: T_RowRecordExpressionUpdates sem_RowRecordExpressionUpdates_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.Expr -> EH.Expr]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 677, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- RowRecordPatternBinding ------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.PatExpr -> EH.PatExpr),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_RowRecordPatternBinding_Binding :: Range -> MaybeName -> T_Pattern -> T_RowRecordPatternBinding sem_RowRecordPatternBinding_Binding range_ name_ pattern_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: (EH.PatExpr -> EH.PatExpr) _lhsOerrSq :: ErrSq _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _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 693, 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 182, column 23) _lhsOidDefOccGam = _patternIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _patternIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- RowRecordPatternBindings ------------------------------------ {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.PatExpr -> EH.PatExpr]),ErrSq,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_RowRecordPatternBindings_Cons :: T_RowRecordPatternBinding -> T_RowRecordPatternBindings -> T_RowRecordPatternBindings sem_RowRecordPatternBindings_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 687, 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 182, column 23) _lhsOidDefOccGam = _hdIidDefOccGam `gamAddGam` _tlIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _hdIidOccDefs ++ _tlIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidDefOccGam,_hdIidOccDefs,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOfixityGam _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidDefOccGam,_tlIidOccDefs,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_RowRecordPatternBindings_Nil :: T_RowRecordPatternBindings sem_RowRecordPatternBindings_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 687, 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 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- RowTypeUpdate ----------------------------------------------- {- visit 0: inherited attributes: doGenVarWild : Bool fixityGam : FixityGam idGam : IdDefOccGam isAsPred : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.TyExpr -> EH.TyExpr),([Maybe EH.PrExpr]),([Maybe EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _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 380, column 9) _ehMbAsPrL = [_typeIehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 701, 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 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOeh,_lhsOehMbAsPrL,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- RowTypeUpdates ---------------------------------------------- {- visit 0: inherited attributes: doGenVarWild : Bool fixityGam : FixityGam idGam : IdDefOccGam isAsPred : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.TyExpr -> EH.TyExpr]),([Maybe EH.PrExpr]),([Maybe EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_RowTypeUpdates_Cons :: T_RowTypeUpdate -> T_RowTypeUpdates -> T_RowTypeUpdates sem_RowTypeUpdates_Cons hd_ tl_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOdoGenVarWild :: Bool _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOisAsPred :: Bool _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOdoGenVarWild :: Bool _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisAsPred :: Bool _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 695, column 30) _lhsOeh = _hdIeh : _tlIeh -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _hdIehMbAsPrL ++ _tlIehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIehMbAsPrL,_hdIehMbAsTyPrL,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOdoGenVarWild _hdOfixityGam _hdOgUniq _hdOidGam _hdOisAsPred _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIehMbAsPrL,_tlIehMbAsTyPrL,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOdoGenVarWild _tlOfixityGam _tlOgUniq _tlOidGam _tlOisAsPred _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOehMbAsPrL,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_RowTypeUpdates_Nil :: T_RowTypeUpdates sem_RowTypeUpdates_Nil = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 695, column 30) _lhsOeh = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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 nameDeclCxt : _ 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ((EH.Expr,EH.Expr -> EH.Expr)),ErrSq,UID,FixityGam,IdDefOccGam,IdUseOccGam,NmLev,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 728, 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 730, column 9) _lhsOidUseOccGam = _idUseOccGam `gamUnion` _expressionIidUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/GatherError.ag"(line 120, column 9) _errSq = Seq.unions [Seq.fromList _errIdUse, _expressionIerrSq] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 590, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _expressionOtr = _lhsItr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 _declarationsOnameDeclCxt :: NameDeclCxt _declarationsOnmLev :: NmLev _declarationsOopts :: EHCOpts _declarationsOpatchEhNmInInstance :: PatchEhNmInInstance _declarationsOpragmas :: (Set.Set Pragma.Pragma) _declarationsOtopInstanceNmL :: ([HsName]) _declarationsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _declarationsIeh :: ([EH.Decl]) _declarationsIerrSq :: ErrSq _declarationsIgUniq :: UID _declarationsIgathFixityGam :: FixityGam _declarationsIgathPragmas :: (Set.Set Pragma.Pragma) _declarationsIidDefOccGam :: IdDefOccGam _declarationsIidDpdMp :: IdDpdMp _declarationsIidInClassTySigDefOccGam :: IdDefOccGam _declarationsIidInInstanceValDefOccGam :: IdDefOccGam _declarationsIidOccDefs :: ([IdOcc]) _declarationsIidUseOccGam :: IdUseOccGam _declarationsIneedsError :: Bool _declarationsIpp :: PP_Doc _declarationsIppWrap :: (PP_Doc -> PP_Doc) _declarationsItopInstanceNmL :: ([HsName]) _declarationsItrpp :: TrPP _declarationsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDeclCxt.ag"(line 31, column 9) _nameDeclCxt = NameDeclCxt_Plain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 475, column 9) _idGam = gamUnion _declarationsIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1087, column 9) _sccOrder = idDpdMp2SccOrder _declarationsIidDefOccGam _declarationsIidDpdMp -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 1227, column 29) (_mkSccLet,_,_errReorder) = mkIdOccSccEH _lhsIopts 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 118, 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 592, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _declarationsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _declarationsOnameDeclCxt = _nameDeclCxt -- 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) _declarationsOtr = _lhsItr ( _declarationsIeh,_declarationsIerrSq,_declarationsIgUniq,_declarationsIgathFixityGam,_declarationsIgathPragmas,_declarationsIidDefOccGam,_declarationsIidDpdMp,_declarationsIidInClassTySigDefOccGam,_declarationsIidInInstanceValDefOccGam,_declarationsIidOccDefs,_declarationsIidUseOccGam,_declarationsIneedsError,_declarationsIpp,_declarationsIppWrap,_declarationsItopInstanceNmL,_declarationsItrpp,_declarationsIundefOccGam) = declarations_ _declarationsOcaseId _declarationsOfixityGam _declarationsOgUniq _declarationsOgenerDerivMp _declarationsOidGam _declarationsOmoduleNm _declarationsOnameDeclCxt _declarationsOnmLev _declarationsOopts _declarationsOpatchEhNmInInstance _declarationsOpragmas _declarationsOtopInstanceNmL _declarationsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOidGam :: IdDefOccGam _lhsOidUseOccGam :: IdUseOccGam _lhsOeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) _patternOfixityGam :: FixityGam _patternOgUniq :: UID _patternOidGam :: IdDefOccGam _patternOmoduleNm :: HsName _patternOnmLev :: NmLev _patternOopts :: EHCOpts _patternOpatchEhNmInInstance :: PatchEhNmInInstance _patternOtopInstanceNmL :: ([HsName]) _patternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _expressionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _patternItrpp :: TrPP _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]) _expressionItrpp :: TrPP _expressionIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 477, column 9) _lhsOidGam = gamUnion _patternIidDefOccGam _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 732, 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 734, 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 122, 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 594, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternItrpp >< _expressionItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _patternOtr = _lhsItr -- 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 -- copy rule (down) _expressionOtr = _lhsItr ( _patternIeh,_patternIerrSq,_patternIgUniq,_patternIidDefOccGam,_patternIidOccDefs,_patternIidUseOccGam,_patternIisVar,_patternImbTopRefname,_patternIpp,_patternIppWrap,_patternItopInstanceNmL,_patternItrpp,_patternIundefOccGam) = pattern_ _patternOfixityGam _patternOgUniq _patternOidGam _patternOmoduleNm _patternOnmLev _patternOopts _patternOpatchEhNmInInstance _patternOtopInstanceNmL _patternOtr ( _expressionIconNm,_expressionIeh,_expressionIerrSq,_expressionIgUniq,_expressionIidUseOccGam,_expressionIopChain,_expressionIoperatorName,_expressionIpp,_expressionIppWrap,_expressionItopInstanceNmL,_expressionItrpp,_expressionIundefOccGam) = expression_ _expressionOcaseId _expressionOfixityGam _expressionOgUniq _expressionOgenerDerivMp _expressionOidGam _expressionOmoduleNm _expressionOnmLev _expressionOopts _expressionOpatchEhNmInInstance _expressionOpragmas _expressionOtopInstanceNmL _expressionOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOgathFixityGam,_lhsOidGam,_lhsOidUseOccGam,_lhsOnmLev,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Statement_Empty :: Range -> T_Statement sem_Statement_Empty range_ = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ((EH.Expr,EH.Expr -> EH.Expr)) _lhsOerrSq :: ErrSq _lhsOgathFixityGam :: FixityGam _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOidGam :: IdDefOccGam _lhsOnmLev :: NmLev _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 601, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([(EH.Expr,EH.Expr -> EH.Expr)]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,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 _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.Expr,EH.Expr -> EH.Expr)]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 584, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIgathFixityGam,_hdIidGam,_hdIidUseOccGam,_hdInmLev,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdIundefOccGam) = hd_ _hdOcaseId _hdOfixityGam _hdOgUniq _hdOgenerDerivMp _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOpragmas _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOcaseId _tlOfixityGam _tlOgUniq _tlOgenerDerivMp _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOpragmas _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Statements_Nil :: T_Statements sem_Statements_Nil = (\ _lhsIcaseId _lhsIfixityGam _lhsIgUniq _lhsIgenerDerivMp _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsIpragmas _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([(EH.Expr,EH.Expr -> EH.Expr)]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 584, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Strings ----------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : [String] errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([String]),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Strings_Cons :: String -> T_Strings -> T_Strings sem_Strings_Cons hd_ tl_ = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([String]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlIeh :: ([String]) _tlIerrSq :: ErrSq _tlIgUniq :: UID _tlIidUseOccGam :: IdUseOccGam _tlIpp :: PP_Doc _tlIppWrap :: (PP_Doc -> PP_Doc) _tlItopInstanceNmL :: ([HsName]) _tlItrpp :: TrPP _tlIundefOccGam :: IdUseOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 919, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _tlOtr = _lhsItr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOgUniq _tlOidGam _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Strings_Nil :: T_Strings sem_Strings_Nil = (\ _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOeh :: ([String]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 919, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) -- Type -------------------------------------------------------- {- visit 0: inherited attributes: doGenVarWild : Bool fixityGam : FixityGam idGam : IdDefOccGam isAsPred : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( 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]),TrPP,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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _functionOtr :: (TraceOn -> [PP_Doc] -> TrPP) _argumentsOfixityGam :: FixityGam _argumentsOgUniq :: UID _argumentsOidGam :: IdDefOccGam _argumentsOnmLev :: NmLev _argumentsOopts :: EHCOpts _argumentsOpatchEhNmInInstance :: PatchEhNmInInstance _argumentsOtopInstanceNmL :: ([HsName]) _argumentsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _functionItrpp :: TrPP _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]) _argumentsItrpp :: TrPP _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 210, column 9) _eh = appTopApp (_functionIeh : _argumentsIeh) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 347, 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 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 167, column 9) _lhsOtyConIs = _functionItyConIs -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 177, column 9) _argumentsOisAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _functionIfreeTvarS `Set.union` _argumentsIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _functionItrpp >< _argumentsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _functionOtr = _lhsItr -- 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 -- copy rule (down) _argumentsOtr = _lhsItr ( _functionIconNm,_functionIeh,_functionIehMbAsPr,_functionIehMbAsPrL,_functionIehMbAsTyPr,_functionIehMbAsTyPrL,_functionIerrSq,_functionIfreeTvarS,_functionIgUniq,_functionIidUseOccGam,_functionImbRefConNm,_functionIopChain,_functionIoperatorName,_functionIpp,_functionIppWrap,_functionItopInstanceNmL,_functionItrpp,_functionItyConIs,_functionIundefOccGam) = function_ _functionOdoGenVarWild _functionOfixityGam _functionOgUniq _functionOidGam _functionOisAsPred _functionOnmLev _functionOopts _functionOpatchEhNmInInstance _functionOtopInstanceNmL _functionOtr ( _argumentsIeh,_argumentsIerrSq,_argumentsIfreeTvarS,_argumentsIgUniq,_argumentsIidUseOccGam,_argumentsIpp,_argumentsIppL,_argumentsIppWrap,_argumentsItopInstanceNmL,_argumentsItrpp,_argumentsIundefOccGam) = arguments_ _argumentsOfixityGam _argumentsOgUniq _argumentsOidGam _argumentsOisAsPred _argumentsOnmLev _argumentsOopts _argumentsOpatchEhNmInInstance _argumentsOtopInstanceNmL _argumentsOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _leftTypeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _operatorOdoGenVarWild :: Bool _operatorOfixityGam :: FixityGam _operatorOgUniq :: UID _operatorOidGam :: IdDefOccGam _operatorOisAsPred :: Bool _operatorOnmLev :: NmLev _operatorOopts :: EHCOpts _operatorOpatchEhNmInInstance :: PatchEhNmInInstance _operatorOtopInstanceNmL :: ([HsName]) _operatorOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rightTypeOdoGenVarWild :: Bool _rightTypeOfixityGam :: FixityGam _rightTypeOgUniq :: UID _rightTypeOidGam :: IdDefOccGam _rightTypeOisAsPred :: Bool _rightTypeOnmLev :: NmLev _rightTypeOopts :: EHCOpts _rightTypeOpatchEhNmInInstance :: PatchEhNmInInstance _rightTypeOtopInstanceNmL :: ([HsName]) _rightTypeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _leftTypeItrpp :: TrPP _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]) _operatorItrpp :: TrPP _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]) _rightTypeItrpp :: TrPP _rightTypeItyConIs :: TypeConFixedMeaning _rightTypeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 263, 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 212, 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 354, 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 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 175, column 9) _leftTypeOisAsPred = _lhsIisAsPred || _operatorItyConIs == TyConIsPrArrow -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _leftTypeIfreeTvarS `Set.union` _operatorIfreeTvarS `Set.union` _rightTypeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftTypeItrpp >< _operatorItrpp >< _rightTypeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _leftTypeOtr = _lhsItr -- 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) _operatorOtr = _lhsItr -- 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 -- copy rule (down) _rightTypeOtr = _lhsItr ( _leftTypeIconNm,_leftTypeIeh,_leftTypeIehMbAsPr,_leftTypeIehMbAsPrL,_leftTypeIehMbAsTyPr,_leftTypeIehMbAsTyPrL,_leftTypeIerrSq,_leftTypeIfreeTvarS,_leftTypeIgUniq,_leftTypeIidUseOccGam,_leftTypeImbRefConNm,_leftTypeIopChain,_leftTypeIoperatorName,_leftTypeIpp,_leftTypeIppWrap,_leftTypeItopInstanceNmL,_leftTypeItrpp,_leftTypeItyConIs,_leftTypeIundefOccGam) = leftType_ _leftTypeOdoGenVarWild _leftTypeOfixityGam _leftTypeOgUniq _leftTypeOidGam _leftTypeOisAsPred _leftTypeOnmLev _leftTypeOopts _leftTypeOpatchEhNmInInstance _leftTypeOtopInstanceNmL _leftTypeOtr ( _operatorIconNm,_operatorIeh,_operatorIehMbAsPr,_operatorIehMbAsPrL,_operatorIehMbAsTyPr,_operatorIehMbAsTyPrL,_operatorIerrSq,_operatorIfreeTvarS,_operatorIgUniq,_operatorIidUseOccGam,_operatorImbRefConNm,_operatorIopChain,_operatorIoperatorName,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorItrpp,_operatorItyConIs,_operatorIundefOccGam) = operator_ _operatorOdoGenVarWild _operatorOfixityGam _operatorOgUniq _operatorOidGam _operatorOisAsPred _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOtopInstanceNmL _operatorOtr ( _rightTypeIconNm,_rightTypeIeh,_rightTypeIehMbAsPr,_rightTypeIehMbAsPrL,_rightTypeIehMbAsTyPr,_rightTypeIehMbAsTyPrL,_rightTypeIerrSq,_rightTypeIfreeTvarS,_rightTypeIgUniq,_rightTypeIidUseOccGam,_rightTypeImbRefConNm,_rightTypeIopChain,_rightTypeIoperatorName,_rightTypeIpp,_rightTypeIppWrap,_rightTypeItopInstanceNmL,_rightTypeItrpp,_rightTypeItyConIs,_rightTypeIundefOccGam) = rightType_ _rightTypeOdoGenVarWild _rightTypeOfixityGam _rightTypeOgUniq _rightTypeOidGam _rightTypeOisAsPred _rightTypeOnmLev _rightTypeOopts _rightTypeOpatchEhNmInInstance _rightTypeOtopInstanceNmL _rightTypeOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_InfixApplicationChainTop :: Range -> T_Type -> T_Type sem_Type_InfixApplicationChainTop range_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _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 220, column 9) _eh = _ehFromOpChain -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 364, column 9) _ehMbAsPr = _typeIehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Constructor :: Range -> Name -> T_Type sem_Type_Constructor range_ name_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 660, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] _idOccKind _idAsp range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 676, 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 261, 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 230, column 9) _eh = rngLift range_ EH.TyExpr_Con _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 147, column 9) _lhsOmbRefConNm = Just _refname -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 163, 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 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Parenthesized :: Range -> T_Type -> T_Type sem_Type_Parenthesized range_ type_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 232, column 9) _eh = rngLift range_ EH.TyExpr_Parens _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 364, column 9) _ehMbAsPr = _typeIehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 374, column 9) _ehMbAsPrL = _typeIehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _leftTypeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _operatorOdoGenVarWild :: Bool _operatorOfixityGam :: FixityGam _operatorOgUniq :: UID _operatorOidGam :: IdDefOccGam _operatorOisAsPred :: Bool _operatorOnmLev :: NmLev _operatorOopts :: EHCOpts _operatorOpatchEhNmInInstance :: PatchEhNmInInstance _operatorOtopInstanceNmL :: ([HsName]) _operatorOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rightTypeOdoGenVarWild :: Bool _rightTypeOfixityGam :: FixityGam _rightTypeOgUniq :: UID _rightTypeOidGam :: IdDefOccGam _rightTypeOnmLev :: NmLev _rightTypeOopts :: EHCOpts _rightTypeOpatchEhNmInInstance :: PatchEhNmInInstance _rightTypeOtopInstanceNmL :: ([HsName]) _rightTypeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _leftTypeItrpp :: TrPP _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]) _operatorItrpp :: TrPP _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]) _rightTypeItrpp :: TrPP _rightTypeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 222, 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 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, 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 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _leftTypeIfreeTvarS `Set.union` _operatorIfreeTvarS `Set.union` _rightTypeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftTypeItrpp >< _operatorItrpp >< _rightTypeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _leftTypeOtr = _lhsItr -- 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) _operatorOtr = _lhsItr -- 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 -- copy rule (down) _rightTypeOtr = _lhsItr ( _leftTypeIeh,_leftTypeIerrSq,_leftTypeIfreeTvarS,_leftTypeIgUniq,_leftTypeIidUseOccGam,_leftTypeIpp,_leftTypeIppMb,_leftTypeIppWrap,_leftTypeItopInstanceNmL,_leftTypeItrpp,_leftTypeIundefOccGam) = leftType_ _leftTypeOdoGenVarWild _leftTypeOfixityGam _leftTypeOgUniq _leftTypeOidGam _leftTypeOnmLev _leftTypeOopts _leftTypeOpatchEhNmInInstance _leftTypeOtopInstanceNmL _leftTypeOtr ( _operatorIconNm,_operatorIeh,_operatorIehMbAsPr,_operatorIehMbAsPrL,_operatorIehMbAsTyPr,_operatorIehMbAsTyPrL,_operatorIerrSq,_operatorIfreeTvarS,_operatorIgUniq,_operatorIidUseOccGam,_operatorImbRefConNm,_operatorIopChain,_operatorIoperatorName,_operatorIpp,_operatorIppWrap,_operatorItopInstanceNmL,_operatorItrpp,_operatorItyConIs,_operatorIundefOccGam) = operator_ _operatorOdoGenVarWild _operatorOfixityGam _operatorOgUniq _operatorOidGam _operatorOisAsPred _operatorOnmLev _operatorOopts _operatorOpatchEhNmInInstance _operatorOtopInstanceNmL _operatorOtr ( _rightTypeIeh,_rightTypeIerrSq,_rightTypeIfreeTvarS,_rightTypeIgUniq,_rightTypeIidUseOccGam,_rightTypeIpp,_rightTypeIppMb,_rightTypeIppWrap,_rightTypeItopInstanceNmL,_rightTypeItrpp,_rightTypeIundefOccGam) = rightType_ _rightTypeOdoGenVarWild _rightTypeOfixityGam _rightTypeOgUniq _rightTypeOidGam _rightTypeOnmLev _rightTypeOopts _rightTypeOpatchEhNmInInstance _rightTypeOtopInstanceNmL _rightTypeOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _annotationOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _annotationIeh :: (EH.TyExprAnn) _annotationIerrSq :: ErrSq _annotationIfreeTvarS :: HsNameS _annotationIgUniq :: UID _annotationIidUseOccGam :: IdUseOccGam _annotationIpp :: PP_Doc _annotationIppWrap :: (PP_Doc -> PP_Doc) _annotationItopInstanceNmL :: ([HsName]) _annotationItrpp :: TrPP _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 234, column 17) _eh = rngLift range_ EH.TyExpr_Ann _annotationIeh _typeIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 364, column 9) _ehMbAsPr = _typeIehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 374, column 9) _ehMbAsPrL = _typeIehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _annotationIfreeTvarS `Set.union` _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _annotationItrpp >< _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _annotationOtr = _lhsItr -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _annotationIeh,_annotationIerrSq,_annotationIfreeTvarS,_annotationIgUniq,_annotationIidUseOccGam,_annotationIpp,_annotationIppWrap,_annotationItopInstanceNmL,_annotationItrpp,_annotationIundefOccGam) = annotation_ _annotationOfixityGam _annotationOgUniq _annotationOidGam _annotationOnmLev _annotationOopts _annotationOpatchEhNmInInstance _annotationOtopInstanceNmL _annotationOtr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Wildcard :: Range -> T_Type sem_Type_Wildcard range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 266, 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 236, column 9) _eh = rngLift range_ EH.TyExpr_Wild -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 386, column 17) _ehMbAsTyPr = Just $ rngLift range_ EH.TyExpr_Impls -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 396, column 17) _ehMbAsTyPrL = [_ehMbAsTyPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_MonoWildcard :: Range -> T_Type sem_Type_MonoWildcard range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 266, 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 238, column 9) _eh = rngLift range_ EH.TyExpr_Mono -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 386, column 17) _ehMbAsTyPr = Just $ rngLift range_ EH.TyExpr_Impls -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 396, column 17) _ehMbAsTyPrL = [_ehMbAsTyPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_Variable :: Range -> Name -> T_Type sem_Type_Variable range_ name_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 656, column 9) _idAsp = IdAsp_Type_Var -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 656, column 9) _idOccKind = IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 660, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] _idOccKind _idAsp range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 240, 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 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 133, column 9) _lhsOfreeTvarS = Set.singleton name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_NamedWildcard :: Range -> Name -> T_Type sem_Type_NamedWildcard range_ name_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 656, column 9) _idAsp = IdAsp_Type_Var -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 656, column 9) _idOccKind = IdOcc_Type -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 660, column 29) (_refname,_,_idUseOccGam,_errIdUse) = mkUseOccGam _lhsIopts _lhsIidGam [name_] _idOccKind _idAsp range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 242, column 9) _eh = rngLift range_ EH.TyExpr_VarWild name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 133, column 9) _lhsOfreeTvarS = Set.singleton name_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 307, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _lhsInmLev range_ typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 481, column 9) _idGam = gamUnion _idDefOccGamInside _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 244, column 9) _eh = foldr (rngLift range_ EH.TyExpr_Quant tyQu_Forall) _typeIeh typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 352, 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 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 135, column 9) _lhsOfreeTvarS = _typeIfreeTvarS `Set.difference` Set.fromList typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 307, column 9) _idDefOccGamInside = tvarL2IdDefOccGam _lhsInmLev range_ typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 481, column 9) _idGam = gamUnion _idDefOccGamInside _lhsIidGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 246, column 9) _eh = foldr (rngLift range_ EH.TyExpr_Quant tyQu_Exists) _typeIeh typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 135, column 9) _lhsOfreeTvarS = _typeIfreeTvarS `Set.difference` Set.fromList typevariables_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _typeOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rowTypeUpdatesOdoGenVarWild :: Bool _rowTypeUpdatesOfixityGam :: FixityGam _rowTypeUpdatesOgUniq :: UID _rowTypeUpdatesOidGam :: IdDefOccGam _rowTypeUpdatesOisAsPred :: Bool _rowTypeUpdatesOnmLev :: NmLev _rowTypeUpdatesOopts :: EHCOpts _rowTypeUpdatesOpatchEhNmInInstance :: PatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL :: ([HsName]) _rowTypeUpdatesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _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]) _rowTypeUpdatesItrpp :: TrPP _rowTypeUpdatesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 248, column 9) _eh = foldl (flip ($)) _typeIeh _rowTypeUpdatesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _typeIfreeTvarS `Set.union` _rowTypeUpdatesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp >< _rowTypeUpdatesItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _typeOtr = _lhsItr -- 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 -- copy rule (down) _rowTypeUpdatesOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr ( _rowTypeUpdatesIeh,_rowTypeUpdatesIehMbAsPrL,_rowTypeUpdatesIehMbAsTyPrL,_rowTypeUpdatesIerrSq,_rowTypeUpdatesIfreeTvarS,_rowTypeUpdatesIgUniq,_rowTypeUpdatesIidUseOccGam,_rowTypeUpdatesIpp,_rowTypeUpdatesIppL,_rowTypeUpdatesIppWrap,_rowTypeUpdatesItopInstanceNmL,_rowTypeUpdatesItrpp,_rowTypeUpdatesIundefOccGam) = rowTypeUpdates_ _rowTypeUpdatesOdoGenVarWild _rowTypeUpdatesOfixityGam _rowTypeUpdatesOgUniq _rowTypeUpdatesOidGam _rowTypeUpdatesOisAsPred _rowTypeUpdatesOnmLev _rowTypeUpdatesOopts _rowTypeUpdatesOpatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL _rowTypeUpdatesOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowEmpty :: Range -> T_Type sem_Type_RowEmpty range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 266, 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 250, column 9) _eh = rngLift range_ EH.TyExpr_Row (rngLift range_ EH.RowTyExpr_Empty) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rowTypeUpdatesOdoGenVarWild :: Bool _rowTypeUpdatesOfixityGam :: FixityGam _rowTypeUpdatesOgUniq :: UID _rowTypeUpdatesOidGam :: IdDefOccGam _rowTypeUpdatesOisAsPred :: Bool _rowTypeUpdatesOnmLev :: NmLev _rowTypeUpdatesOopts :: EHCOpts _rowTypeUpdatesOpatchEhNmInInstance :: PatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL :: ([HsName]) _rowTypeUpdatesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _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]) _rowTypeUpdatesItrpp :: TrPP _rowTypeUpdatesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 252, column 9) _eh = foldl (\e u -> appCon1App hsnRec $ u $ ehTyExprArg $ e) _typeIeh _rowTypeUpdatesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 372, column 9) _ehMbAsPrL = _rowTypeUpdatesIehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 394, column 9) _ehMbAsTyPrL = _rowTypeUpdatesIehMbAsTyPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _typeIfreeTvarS `Set.union` _rowTypeUpdatesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp >< _rowTypeUpdatesItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _typeOtr = _lhsItr -- 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 -- copy rule (down) _rowTypeUpdatesOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr ( _rowTypeUpdatesIeh,_rowTypeUpdatesIehMbAsPrL,_rowTypeUpdatesIehMbAsTyPrL,_rowTypeUpdatesIerrSq,_rowTypeUpdatesIfreeTvarS,_rowTypeUpdatesIgUniq,_rowTypeUpdatesIidUseOccGam,_rowTypeUpdatesIpp,_rowTypeUpdatesIppL,_rowTypeUpdatesIppWrap,_rowTypeUpdatesItopInstanceNmL,_rowTypeUpdatesItrpp,_rowTypeUpdatesIundefOccGam) = rowTypeUpdates_ _rowTypeUpdatesOdoGenVarWild _rowTypeUpdatesOfixityGam _rowTypeUpdatesOgUniq _rowTypeUpdatesOidGam _rowTypeUpdatesOisAsPred _rowTypeUpdatesOnmLev _rowTypeUpdatesOopts _rowTypeUpdatesOpatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL _rowTypeUpdatesOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowRecEmpty :: Range -> T_Type sem_Type_RowRecEmpty range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 266, 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 254, 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 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rowTypeUpdatesOdoGenVarWild :: Bool _rowTypeUpdatesOfixityGam :: FixityGam _rowTypeUpdatesOgUniq :: UID _rowTypeUpdatesOidGam :: IdDefOccGam _rowTypeUpdatesOisAsPred :: Bool _rowTypeUpdatesOnmLev :: NmLev _rowTypeUpdatesOopts :: EHCOpts _rowTypeUpdatesOpatchEhNmInInstance :: PatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL :: ([HsName]) _rowTypeUpdatesOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _typeItrpp :: TrPP _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]) _rowTypeUpdatesItrpp :: TrPP _rowTypeUpdatesIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 256, column 9) _eh = foldl (\e u -> appCon1App hsnSum $ u $ ehTyExprArg $ e) _typeIeh _rowTypeUpdatesIeh -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _typeIfreeTvarS `Set.union` _rowTypeUpdatesIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _typeItrpp >< _rowTypeUpdatesItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _typeOtr = _lhsItr -- 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 -- copy rule (down) _rowTypeUpdatesOtr = _lhsItr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr ( _rowTypeUpdatesIeh,_rowTypeUpdatesIehMbAsPrL,_rowTypeUpdatesIehMbAsTyPrL,_rowTypeUpdatesIerrSq,_rowTypeUpdatesIfreeTvarS,_rowTypeUpdatesIgUniq,_rowTypeUpdatesIidUseOccGam,_rowTypeUpdatesIpp,_rowTypeUpdatesIppL,_rowTypeUpdatesIppWrap,_rowTypeUpdatesItopInstanceNmL,_rowTypeUpdatesItrpp,_rowTypeUpdatesIundefOccGam) = rowTypeUpdates_ _rowTypeUpdatesOdoGenVarWild _rowTypeUpdatesOfixityGam _rowTypeUpdatesOgUniq _rowTypeUpdatesOidGam _rowTypeUpdatesOisAsPred _rowTypeUpdatesOnmLev _rowTypeUpdatesOopts _rowTypeUpdatesOpatchEhNmInInstance _rowTypeUpdatesOtopInstanceNmL _rowTypeUpdatesOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_RowSumEmpty :: Range -> T_Type sem_Type_RowSumEmpty range_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 266, 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 258, 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 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _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]) _contextOtr :: (TraceOn -> [PP_Doc] -> TrPP) _typeOdoGenVarWild :: Bool _typeOfixityGam :: FixityGam _typeOgUniq :: UID _typeOidGam :: IdDefOccGam _typeOisAsPred :: Bool _typeOnmLev :: NmLev _typeOopts :: EHCOpts _typeOpatchEhNmInInstance :: PatchEhNmInInstance _typeOtopInstanceNmL :: ([HsName]) _typeOtr :: (TraceOn -> [PP_Doc] -> TrPP) _contextIeh :: ([EH.PrExpr]) _contextIehTy :: ([EH.TyExpr]) _contextIerrSq :: ErrSq _contextIfreeTvarS :: HsNameS _contextIgUniq :: UID _contextIidUseOccGam :: IdUseOccGam _contextIpp :: PP_Doc _contextIppWrap :: (PP_Doc -> PP_Doc) _contextItopInstanceNmL :: ([HsName]) _contextItrpp :: TrPP _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]) _typeItrpp :: TrPP _typeItyConIs :: TypeConFixedMeaning _typeIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 266, 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 260, column 9) _eh = foldr app1Arr _typeIeh _contextIehTy -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 180, column 17) _isAsPred = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = _contextIfreeTvarS `Set.union` _typeIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _contextItrpp >< _typeItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _contextOtr = _lhsItr -- 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 -- copy rule (down) _typeOtr = _lhsItr ( _contextIeh,_contextIehTy,_contextIerrSq,_contextIfreeTvarS,_contextIgUniq,_contextIidUseOccGam,_contextIpp,_contextIppWrap,_contextItopInstanceNmL,_contextItrpp,_contextIundefOccGam) = context_ _contextOfixityGam _contextOgUniq _contextOidGam _contextOnmLev _contextOopts _contextOpatchEhNmInInstance _contextOtopInstanceNmL _contextOtr ( _typeIconNm,_typeIeh,_typeIehMbAsPr,_typeIehMbAsPrL,_typeIehMbAsTyPr,_typeIehMbAsTyPrL,_typeIerrSq,_typeIfreeTvarS,_typeIgUniq,_typeIidUseOccGam,_typeImbRefConNm,_typeIopChain,_typeIoperatorName,_typeIpp,_typeIppWrap,_typeItopInstanceNmL,_typeItrpp,_typeItyConIs,_typeIundefOccGam) = type_ _typeOdoGenVarWild _typeOfixityGam _typeOgUniq _typeOidGam _typeOisAsPred _typeOnmLev _typeOopts _typeOpatchEhNmInInstance _typeOtopInstanceNmL _typeOtr in ( _lhsOconNm,_lhsOeh,_lhsOehMbAsPr,_lhsOehMbAsPrL,_lhsOehMbAsTyPr,_lhsOehMbAsTyPrL,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOmbRefConNm,_lhsOopChain,_lhsOoperatorName,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) sem_Type_TupleConstructor :: Range -> Int -> T_Type sem_Type_TupleConstructor range_ arity_ = (\ _lhsIdoGenVarWild _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (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) _lhsOtrpp :: TrPP _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 266, 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 262, 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 366, column 9) _ehMbAsPr = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 376, column 9) _ehMbAsPrL = [_ehMbAsPr] -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 388, column 17) _ehMbAsTyPr = fmap (rngLift range_ EH.TyExpr_Pred) _ehMbAsPr -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 398, column 17) _ehMbAsTyPrL = map (fmap (rngLift range_ EH.TyExpr_Pred)) _ehMbAsPrL -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 149, column 9) _lhsOmbRefConNm = Nothing -- "build/103/lib-ehc/UHC/Light/Compiler/HS/MainAG.ag"(line 169, column 9) _lhsOtyConIs = TyConIsOther -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 368, column 44) _lhsOehMbAsPrL = _ehMbAsPrL -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 390, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOtyConIs,_lhsOundefOccGam))) -- TypeAnnotation ---------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.TyExprAnn),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_TypeAnnotation_Strict :: T_TypeAnnotation sem_TypeAnnotation_Strict = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 888, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_TypeAnnotation_AnnotationName :: Name -> T_TypeAnnotation sem_TypeAnnotation_AnnotationName name_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 890, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) sem_TypeAnnotation_AnnotationVar :: Name -> Name -> T_TypeAnnotation sem_TypeAnnotation_AnnotationVar name_ var_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOeh :: (EH.TyExprAnn) _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) -- "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 895, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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,_lhsOtrpp,_lhsOundefOccGam))) -- TypeLeftHandSide -------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.TyVar]),ErrSq,HsNameS,UID,IdDefOccGam,([IdOcc]),IdUseOccGam,Name,PP_Doc,(PP_Doc -> PP_Doc),Range,([HsName]),TrPP,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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOtypevariables :: Names _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _patternsIeh :: ([EH.TyVar]) _patternsIerrSq :: ErrSq _patternsIgUniq :: UID _patternsIidUseOccGam :: IdUseOccGam _patternsIpp :: PP_Doc _patternsIppL :: ([PP_Doc]) _patternsIppWrap :: (PP_Doc -> PP_Doc) _patternsItopInstanceNmL :: ([HsName]) _patternsItrpp :: TrPP _patternsItypevariables :: Names _patternsIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 212, column 9) _lhsOrange = range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 212, 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 774, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _patternsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 208, column 25) _lhsOtypevariables = _patternsItypevariables -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 -- copy rule (down) _patternsOtr = _lhsItr ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsItypevariables,_patternsIundefOccGam) = patterns_ _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOname,_lhsOpp,_lhsOppWrap,_lhsOrange,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (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) _lhsOtrpp :: TrPP _lhsOtypevariables :: Names _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _leftPatternOgUniq :: UID _leftPatternOidGam :: IdDefOccGam _leftPatternOmoduleNm :: HsName _leftPatternOnmLev :: NmLev _leftPatternOopts :: EHCOpts _leftPatternOpatchEhNmInInstance :: PatchEhNmInInstance _leftPatternOtopInstanceNmL :: ([HsName]) _leftPatternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _rightPatternOgUniq :: UID _rightPatternOidGam :: IdDefOccGam _rightPatternOmoduleNm :: HsName _rightPatternOnmLev :: NmLev _rightPatternOopts :: EHCOpts _rightPatternOpatchEhNmInInstance :: PatchEhNmInInstance _rightPatternOtopInstanceNmL :: ([HsName]) _rightPatternOtr :: (TraceOn -> [PP_Doc] -> TrPP) _leftPatternIeh :: (EH.TyVar) _leftPatternIerrSq :: ErrSq _leftPatternIgUniq :: UID _leftPatternIidUseOccGam :: IdUseOccGam _leftPatternIpp :: PP_Doc _leftPatternIppWrap :: (PP_Doc -> PP_Doc) _leftPatternItopInstanceNmL :: ([HsName]) _leftPatternItrpp :: TrPP _leftPatternItypevariables :: Names _leftPatternIundefOccGam :: IdUseOccGam _rightPatternIeh :: (EH.TyVar) _rightPatternIerrSq :: ErrSq _rightPatternIgUniq :: UID _rightPatternIidUseOccGam :: IdUseOccGam _rightPatternIpp :: PP_Doc _rightPatternIppWrap :: (PP_Doc -> PP_Doc) _rightPatternItopInstanceNmL :: ([HsName]) _rightPatternItrpp :: TrPP _rightPatternItypevariables :: Names _rightPatternIundefOccGam :: IdUseOccGam -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 215, column 9) _lhsOrange = range_ -- "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 215, 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 776, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = emptyGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _leftPatternItrpp >< _rightPatternItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 208, column 25) _lhsOtypevariables = _leftPatternItypevariables ++ _rightPatternItypevariables -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _leftPatternOtr = _lhsItr -- 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 -- copy rule (down) _rightPatternOtr = _lhsItr ( _leftPatternIeh,_leftPatternIerrSq,_leftPatternIgUniq,_leftPatternIidUseOccGam,_leftPatternIpp,_leftPatternIppWrap,_leftPatternItopInstanceNmL,_leftPatternItrpp,_leftPatternItypevariables,_leftPatternIundefOccGam) = leftPattern_ _leftPatternOgUniq _leftPatternOidGam _leftPatternOmoduleNm _leftPatternOnmLev _leftPatternOopts _leftPatternOpatchEhNmInInstance _leftPatternOtopInstanceNmL _leftPatternOtr ( _rightPatternIeh,_rightPatternIerrSq,_rightPatternIgUniq,_rightPatternIidUseOccGam,_rightPatternIpp,_rightPatternIppWrap,_rightPatternItopInstanceNmL,_rightPatternItrpp,_rightPatternItypevariables,_rightPatternIundefOccGam) = rightPattern_ _rightPatternOgUniq _rightPatternOidGam _rightPatternOmoduleNm _rightPatternOnmLev _rightPatternOopts _rightPatternOpatchEhNmInInstance _rightPatternOtopInstanceNmL _rightPatternOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOname,_lhsOpp,_lhsOppWrap,_lhsOrange,_lhsOtopInstanceNmL,_lhsOtrpp,_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 _lhsItr -> (let _lhsOeh :: ([EH.TyVar]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidDefOccGam :: IdDefOccGam _lhsOidOccDefs :: ([IdOcc]) _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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]) _lefthandsideOtr :: (TraceOn -> [PP_Doc] -> TrPP) _patternsOgUniq :: UID _patternsOidGam :: IdDefOccGam _patternsOmoduleNm :: HsName _patternsOnmLev :: NmLev _patternsOopts :: EHCOpts _patternsOpatchEhNmInInstance :: PatchEhNmInInstance _patternsOtopInstanceNmL :: ([HsName]) _patternsOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _lefthandsideItrpp :: TrPP _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]) _patternsItrpp :: TrPP _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 781, 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 129, column 21) _lhsOfreeTvarS = _lefthandsideIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 182, column 23) _lhsOidDefOccGam = _lefthandsideIidDefOccGam -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 105, column 21) _lhsOidOccDefs = _lefthandsideIidOccDefs -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _lefthandsideItrpp >< _patternsItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 208, column 25) _lhsOtypevariables = _lefthandsideItypevariables ++ _patternsItypevariables -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _lefthandsideOtr = _lhsItr -- 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 -- copy rule (down) _patternsOtr = _lhsItr ( _lefthandsideIeh,_lefthandsideIerrSq,_lefthandsideIfreeTvarS,_lefthandsideIgUniq,_lefthandsideIidDefOccGam,_lefthandsideIidOccDefs,_lefthandsideIidUseOccGam,_lefthandsideIname,_lefthandsideIpp,_lefthandsideIppWrap,_lefthandsideIrange,_lefthandsideItopInstanceNmL,_lefthandsideItrpp,_lefthandsideItypevariables,_lefthandsideIundefOccGam) = lefthandside_ _lefthandsideOfixityGam _lefthandsideOgUniq _lefthandsideOidGam _lefthandsideOmoduleNm _lefthandsideOnmLev _lefthandsideOopts _lefthandsideOpatchEhNmInInstance _lefthandsideOtopInstanceNmL _lefthandsideOtr ( _patternsIeh,_patternsIerrSq,_patternsIgUniq,_patternsIidUseOccGam,_patternsIpp,_patternsIppL,_patternsIppWrap,_patternsItopInstanceNmL,_patternsItrpp,_patternsItypevariables,_patternsIundefOccGam) = patterns_ _patternsOgUniq _patternsOidGam _patternsOmoduleNm _patternsOnmLev _patternsOopts _patternsOpatchEhNmInInstance _patternsOtopInstanceNmL _patternsOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidDefOccGam,_lhsOidOccDefs,_lhsOidUseOccGam,_lhsOname,_lhsOpp,_lhsOppWrap,_lhsOrange,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtypevariables,_lhsOundefOccGam))) -- TypePattern ------------------------------------------------- {- visit 0: inherited attributes: idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP chained attributes: gUniq : UID topInstanceNmL : [HsName] synthesized attributes: eh : EH.TyVar errSq : ErrSq idUseOccGam : IdUseOccGam pp : PP_Doc ppWrap : PP_Doc -> PP_Doc trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( (EH.TyVar),ErrSq,UID,IdUseOccGam,PP_Doc,(PP_Doc -> PP_Doc),([HsName]),TrPP,Names,IdUseOccGam) sem_TypePattern_Variable :: Range -> Name -> T_TypePattern sem_TypePattern_Variable range_ name_ = (\ _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOtypevariables :: Names _lhsOeh :: (EH.TyVar) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 220, 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 861, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtypevariables,_lhsOundefOccGam))) -- TypePatterns ------------------------------------------------ {- visit 0: inherited attributes: idGam : IdDefOccGam moduleNm : HsName nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.TyVar]),ErrSq,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,Names,IdUseOccGam) sem_TypePatterns_Cons :: T_TypePattern -> T_TypePatterns -> T_TypePatterns sem_TypePatterns_Cons hd_ tl_ = (\ _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyVar]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOtypevariables :: Names _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOmoduleNm :: HsName _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOmoduleNm :: HsName _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _hdIeh :: (EH.TyVar) _hdIerrSq :: ErrSq _hdIgUniq :: UID _hdIidUseOccGam :: IdUseOccGam _hdIpp :: PP_Doc _hdIppWrap :: (PP_Doc -> PP_Doc) _hdItopInstanceNmL :: ([HsName]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 855, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 208, column 25) _lhsOtypevariables = _hdItypevariables ++ _tlItypevariables -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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 (down) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIeh,_hdIerrSq,_hdIgUniq,_hdIidUseOccGam,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdItypevariables,_hdIundefOccGam) = hd_ _hdOgUniq _hdOidGam _hdOmoduleNm _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlItypevariables,_tlIundefOccGam) = tl_ _tlOgUniq _tlOidGam _tlOmoduleNm _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtypevariables,_lhsOundefOccGam))) sem_TypePatterns_Nil :: T_TypePatterns sem_TypePatterns_Nil = (\ _lhsIgUniq _lhsIidGam _lhsImoduleNm _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyVar]) _lhsOerrSq :: ErrSq _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 855, 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 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameDef.ag"(line 208, column 25) _lhsOtypevariables = [] -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOtypevariables,_lhsOundefOccGam))) -- Types ------------------------------------------------------- {- visit 0: inherited attributes: fixityGam : FixityGam idGam : IdDefOccGam isAsPred : Bool nmLev : NmLev opts : EHCOpts patchEhNmInInstance : PatchEhNmInInstance tr : TraceOn -> [PP_Doc] -> TrPP 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 trpp : TrPP 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]) -> (TraceOn -> [PP_Doc] -> TrPP) -> ( ([EH.TyExpr]),ErrSq,HsNameS,UID,IdUseOccGam,PP_Doc,([PP_Doc]),(PP_Doc -> PP_Doc),([HsName]),TrPP,IdUseOccGam) sem_Types_Cons :: T_Type -> T_Types -> T_Types sem_Types_Cons hd_ tl_ = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _lhsOundefOccGam :: IdUseOccGam _lhsOgUniq :: UID _lhsOtopInstanceNmL :: ([HsName]) _hdOdoGenVarWild :: Bool _hdOfixityGam :: FixityGam _hdOgUniq :: UID _hdOidGam :: IdDefOccGam _hdOisAsPred :: Bool _hdOnmLev :: NmLev _hdOopts :: EHCOpts _hdOpatchEhNmInInstance :: PatchEhNmInInstance _hdOtopInstanceNmL :: ([HsName]) _hdOtr :: (TraceOn -> [PP_Doc] -> TrPP) _tlOfixityGam :: FixityGam _tlOgUniq :: UID _tlOidGam :: IdDefOccGam _tlOisAsPred :: Bool _tlOnmLev :: NmLev _tlOopts :: EHCOpts _tlOpatchEhNmInInstance :: PatchEhNmInInstance _tlOtopInstanceNmL :: ([HsName]) _tlOtr :: (TraceOn -> [PP_Doc] -> TrPP) _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]) _hdItrpp :: TrPP _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]) _tlItrpp :: TrPP _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 221, column 9) _doGenVarWild = False -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/ToEH.ag"(line 198, 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 129, column 21) _lhsOfreeTvarS = _hdIfreeTvarS `Set.union` _tlIfreeTvarS -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = _hdItrpp >< _tlItrpp -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, 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) _hdOtr = _lhsItr -- 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 -- copy rule (down) _tlOtr = _lhsItr ( _hdIconNm,_hdIeh,_hdIehMbAsPr,_hdIehMbAsPrL,_hdIehMbAsTyPr,_hdIehMbAsTyPrL,_hdIerrSq,_hdIfreeTvarS,_hdIgUniq,_hdIidUseOccGam,_hdImbRefConNm,_hdIopChain,_hdIoperatorName,_hdIpp,_hdIppWrap,_hdItopInstanceNmL,_hdItrpp,_hdItyConIs,_hdIundefOccGam) = hd_ _hdOdoGenVarWild _hdOfixityGam _hdOgUniq _hdOidGam _hdOisAsPred _hdOnmLev _hdOopts _hdOpatchEhNmInInstance _hdOtopInstanceNmL _hdOtr ( _tlIeh,_tlIerrSq,_tlIfreeTvarS,_tlIgUniq,_tlIidUseOccGam,_tlIpp,_tlIppL,_tlIppWrap,_tlItopInstanceNmL,_tlItrpp,_tlIundefOccGam) = tl_ _tlOfixityGam _tlOgUniq _tlOidGam _tlOisAsPred _tlOnmLev _tlOopts _tlOpatchEhNmInInstance _tlOtopInstanceNmL _tlOtr in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam))) sem_Types_Nil :: T_Types sem_Types_Nil = (\ _lhsIfixityGam _lhsIgUniq _lhsIidGam _lhsIisAsPred _lhsInmLev _lhsIopts _lhsIpatchEhNmInInstance _lhsItopInstanceNmL _lhsItr -> (let _lhsOppL :: ([PP_Doc]) _lhsOeh :: ([EH.TyExpr]) _lhsOerrSq :: ErrSq _lhsOfreeTvarS :: HsNameS _lhsOidUseOccGam :: IdUseOccGam _lhsOpp :: PP_Doc _lhsOppWrap :: (PP_Doc -> PP_Doc) _lhsOtrpp :: TrPP _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 198, 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 129, column 21) _lhsOfreeTvarS = Set.empty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 550, 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/Trace.ag"(line 1, column 29) _lhsOtrpp = trppEmpty -- use rule "build/103/lib-ehc/UHC/Light/Compiler/HS/NameAnalysis.ag"(line 842, column 30) _lhsOundefOccGam = emptyGam -- copy rule (chain) _lhsOgUniq = _lhsIgUniq -- copy rule (chain) _lhsOtopInstanceNmL = _lhsItopInstanceNmL in ( _lhsOeh,_lhsOerrSq,_lhsOfreeTvarS,_lhsOgUniq,_lhsOidUseOccGam,_lhsOpp,_lhsOppL,_lhsOppWrap,_lhsOtopInstanceNmL,_lhsOtrpp,_lhsOundefOccGam)))