示例#1
0
        public override MSet <string> FreeVars()
        {
            var fv1 = Expr.FreeVars().Union(ElseExpr.FreeVars());
            var fv2 = Guard.FreeVars().Union(ThenExpr.FreeVars());
            var fv3 = fv2.Diff(Pat.FreeVars());

            return(fv1.Union(fv3));
        }
示例#2
0
 public override MSet <string> FreeVars()
 {
     return(Pat.FreeVars().Union(new MSet <string>(Name)));
 }
示例#3
0
 public override MSet <string> FreeVars()
 {
     return(Pat.FreeVars());
 }
示例#4
0
 public override MSet <string> FreeVars()
 {
     return(E1.FreeVars().Union(E2.FreeVars().Diff(Pat.FreeVars())));
 }