Exemplo n.º 1
0
 static ClassicExpressionPrinter()
 {
     printerLookup = new ClassicExpressionPrinterType
     {
         [typeof(DoubleExpression)] = (e, sb) =>
         {
             var doubleExpression = (DoubleExpression)e;
             sb.Append(doubleExpression.Value);
         },
         [typeof(AdditionExpression)] = (e, sb) =>
         {
             var additionExpression = (AdditionExpression)e;
             sb.Append("(");
             Print_ConditionalMethod(additionExpression.Left, sb);
             sb.Append(" + ");
             Print_ConditionalMethod(additionExpression.Right, sb);
             sb.Append(")");
         },
     };
 }
Exemplo n.º 2
0
 public static void Print_LookupMethod(Expression expression, StringBuilder sb)
 {
     printerLookup[expression.GetType()](expression, sb);
 }