public override Value Evaluate() { Value lvalue = GetLeft().Evaluate(); Value rvalue = GetRight().Evaluate(); return(lvalue.Evaluate(rvalue, this)); }
public override Value EvaluateReverse(Value left, BinaryExpression op) { if (this.GetLevel() >= left.GetLevel()) { Float leftF = (Float)left.Convert(typeof(Float)); Value result = ValueFactory.CreateValue( op.Evaluate(leftF.GetValue(), this.GetValue())); return(result); } else { return(left.Evaluate(this, op)); } }
public override Value EvaluateReverse(Value left, BinaryExpression op) { if (this.GetLevel() >= left.GetLevel()) { Float leftF = (Float)left.Convert(typeof (Float)); Value result = ValueFactory.CreateValue( op.Evaluate(leftF.GetValue(), this.GetValue())); return result; } else { return left.Evaluate(this, op); } }
public override Value Evaluate() { Value value = GetExpression().Evaluate(); return(value.Evaluate(this)); }