private int GetPrecedence(BinaryExpression.OperationType operation) { switch (operation) { case BinaryExpression.OperationType.Multiply: case BinaryExpression.OperationType.Divide: return(1); case BinaryExpression.OperationType.Plus: case BinaryExpression.OperationType.Minus: return(2); case BinaryExpression.OperationType.Eq: return(3); default: throw new ArgumentException($"Unknown operation: {operation}"); } }
private static string PrintOperation(BinaryExpression.OperationType operation) { switch (operation) { case BinaryExpression.OperationType.Plus: return("+"); case BinaryExpression.OperationType.Minus: return("-"); case BinaryExpression.OperationType.Multiply: return("*"); case BinaryExpression.OperationType.Divide: return("/"); case BinaryExpression.OperationType.Eq: return("=="); default: throw new ArgumentException($"Unknown operation: {operation}"); } }