Exemple #1
0
        public static void Run()
        {
            Lit            one        = new Lit(1);
            Add <Lit, Lit> oneplusone = new Add <Lit, Lit>(one, one);
            int            two        = Eval <EvalAdd <EvalLit, EvalLit, Lit, Lit>, Add <Lit, Lit> >(oneplusone);

            Console.Write("Print(\"1+1\")=\"");
            Overloads.Print <PrintAdd <PrintLit, PrintLit, Lit, Lit>, Add <Lit, Lit> >(oneplusone);
            Console.WriteLine("\"");
            Console.WriteLine("Eval(\"1+1\")={0}", two);
        }
Exemple #2
0
 public int eval(Neg <X> n)
 {
     return(-Overloads.eval <EvalX, X>(n.x));
 }
Exemple #3
0
 public int eval(Add <X, Y> a)
 {
     return(Overloads.eval <EvalX, X>(a.x) + Overloads.eval <EvalY, Y>(a.y));
 }
Exemple #4
0
 public void print(Add <X, Y> a)
 {
     Overloads.Print <PrintX, X>(a.x);
     Console.Write("+");
     Overloads.Print <PrintY, Y>(a.y);
 }