public static void CustomOpIncrement(Incrementable operand, Incrementable expected, bool useInterpreter)
        {
            Func <Incrementable> func = Expression.Lambda <Func <Incrementable> >(
                Expression.Increment(Expression.Constant(operand))).Compile(useInterpreter);

            Assert.Equal(expected.Value, func().Value);
        }
        public static void UserDefinedOpIncrement(Incrementable operand, Incrementable expected, bool useInterpreter)
        {
            MethodInfo           method = typeof(IncrementDecrementTests).GetMethod(nameof(DoublyIncrement));
            Func <Incrementable> func   = Expression.Lambda <Func <Incrementable> >(
                Expression.Increment(Expression.Constant(operand), method)).Compile(useInterpreter);

            Assert.Equal(expected.Value, func().Value);
        }
 public static Incrementable DoublyIncrement(Incrementable operand) => new Incrementable(operand.Value + 2);
Beispiel #4
0
 public static void UserDefinedOpIncrement(Incrementable operand, Incrementable expected, bool useInterpreter)
 {
     MethodInfo method = typeof(IncrementDecrementTests).GetMethod(nameof(DoublyIncrement));
     Func<Incrementable> func = Expression.Lambda<Func<Incrementable>>(
         Expression.Increment(Expression.Constant(operand), method)).Compile(useInterpreter);
     Assert.Equal(expected.Value, func().Value);
 }
Beispiel #5
0
 public static void CustomOpIncrement(Incrementable operand, Incrementable expected, bool useInterpreter)
 {
     Func<Incrementable> func = Expression.Lambda<Func<Incrementable>>(
         Expression.Increment(Expression.Constant(operand))).Compile(useInterpreter);
     Assert.Equal(expected.Value, func().Value);
 }
 public static void CustomOpIncrement(Incrementable? operand, Incrementable? expected, bool useInterpreter)
 {
     Func<Incrementable?> func = Expression.Lambda<Func<Incrementable?>>(
         Expression.Increment(Expression.Constant(operand, typeof(Incrementable?)))).Compile(useInterpreter);
     Assert.Equal(expected, func());
 }
 public static Incrementable DoublyIncrement(Incrementable operand) => new Incrementable(unchecked (operand.Value + 2));
 public static Incrementable DoublyIncrement(Incrementable operand) => new Incrementable(operand.Value + 2);