class Expr e => CommonExpr e
class Expr e => IterativeExpr e
class Expr e => AggregativeExpr e
-instance CommonExpr e => IterativeExpr e
class (Show es, Eq es, HList es) => ExprSet es
instance ExprSet HNil
instance (Expr e, ExprSet es) => ExprSet (e :*: es)
class (Show es, Eq es, HList es) => CommonExprSet es
-instance CommonExprSet es => ExprSet es
instance CommonExprSet HNil
instance (CommonExpr e, CommonExprSet es) => CommonExprSet (e :*: es)
deriving (Show, Eq, Ord)
instance ExprSet es => Expr (CommonSetOp es)
-instance CommonExprSet es => CommonExpr (CommonSetOp es)
+instance (ExprSet es, CommonExprSet es) => CommonExpr (CommonSetOp es)
instance VariableSet (HConcat (HMap ApplyMentionedVarsOf es)) =>
MentionedVars (CommonSetOp es) where
type MentionedVarsOf (CommonSetOp es)
deriving (Show, Eq, Ord)
instance (ExprSet ss, Expr w, VarName vn)
=> Expr (VariableShiftPredictOp ss w vn)
-instance (CommonExprSet ss, CommonExpr w, VarName vn)
+instance (ExprSet ss, CommonExprSet ss, CommonExpr w, VarName vn)
=> CommonExpr (VariableShiftPredictOp ss w vn)
instance ( VarName vn
, VariableSet (MentionedVarsOf ss :++: MentionedVarsOf w)