public override void Visit(IBinaryOpToken t) { ExpNode operand2 = m_nodes.Pop(); ExpNode operand1 = m_nodes.Pop(); char op = char.Parse(t.ToString()); m_nodes.Push(Tables.BinaryOperatorsExpTable[op](operand1, operand2)); }
public override void Visit(IBinaryOpToken t) { // Get operators with lower or equal priority List <IToken> lowOperators = Utills.MoveWhile(t, m_operators, m_priorityPr); // Add operators to the result(RPN) list m_resultTokens.AddRange(lowOperators); m_operators.Push(t); }
public override void Visit(IBinaryOpToken t) { if (m_edgesCurrent.Execute(t)) { m_edgesCurrent = m_edgesBinaryOp; } else { ThrowException(t); } }
public override void Visit(IBinaryOpToken t) { char op = char.Parse(t.ToString()); SetPriority(Tables.BinaryOperatorsPriorityTable[op]); }
public virtual void Visit(IBinaryOpToken t) { }