- case OP_number:
- case OP_boolean:
- {
- static const struct operator ops[] =
- {
- { T_EQUALS, OP_EQ, "numeric equality (`=')" },
- { T_EQ, OP_EQ, "numeric equality (`EQ')" },
- { T_GE, OP_GE, "numeric greater-than-or-equal-to (`>=')" },
- { T_GT, OP_GT, "numeric greater than (`>')" },
- { T_LE, OP_LE, "numeric less-than-or-equal-to (`<=')" },
- { T_LT, OP_LT, "numeric less than (`<')" },
- { T_NE, OP_NE, "numeric inequality (`<>')" },
- };
-
- return parse_binary_operators (lexer, e, node, ops,
- sizeof ops / sizeof *ops,
- parse_add, chain_warning);
- }
-
- case OP_string:
- {
- static const struct operator ops[] =
- {
- { T_EQUALS, OP_EQ_STRING, "string equality (`=')" },
- { T_EQ, OP_EQ_STRING, "string equality (`EQ')" },
- { T_GE, OP_GE_STRING, "string greater-than-or-equal-to (`>=')" },
- { T_GT, OP_GT_STRING, "string greater than (`>')" },
- { T_LE, OP_LE_STRING, "string less-than-or-equal-to (`<=')" },
- { T_LT, OP_LT_STRING, "string less than (`<')" },
- { T_NE, OP_NE_STRING, "string inequality (`<>')" },
- };
-
- return parse_binary_operators (lexer, e, node, ops,
- sizeof ops / sizeof *ops,
- parse_add, chain_warning);
- }
+ /* Numeric operators. */
+ { T_EQUALS, OP_EQ },
+ { T_EQ, OP_EQ },
+ { T_GE, OP_GE },
+ { T_GT, OP_GT },
+ { T_LE, OP_LE },
+ { T_LT, OP_LT },
+ { T_NE, OP_NE },
+
+ /* String operators. */
+ { T_EQUALS, OP_EQ_STRING },
+ { T_EQ, OP_EQ_STRING },
+ { T_GE, OP_GE_STRING },
+ { T_GT, OP_GT_STRING },
+ { T_LE, OP_LE_STRING },
+ { T_LT, OP_LT_STRING },
+ { T_NE, OP_NE_STRING },
+ };