public static void EvalAdd(BinaryExpression exp, ExpressionToFormulaState state) { EvalExpression(exp.Left, state); var left = state.CurrentBlock.Formulas.Pop(); EvalExpression(exp.Right, state); var right = state.CurrentBlock.Formulas.Pop(); var add = new AddFormula() { Left = left, Right = right }; state.CurrentBlock.Formulas.Push(add); }
public Formula Visit(AddFormula formula) { return formula; }
public virtual Formula Visit(AddFormula formula) { Visit((BinaryFormula)formula); return visitor.Visit(formula); }