MCPcopy Create free account
hub / github.com/DeusData/codebase-memory-mcp / parse_xor_expr

Function parse_xor_expr

src/cypher/cypher.c:1272–1287  ·  view source on GitHub ↗

XOR: and (XOR and)* */

Source from the content-addressed store, hash-verified

1270
1271/* XOR: and (XOR and)* */
1272static cbm_expr_t *parse_xor_expr(parser_t *p) { // NOLINT(misc-no-recursion)
1273 cbm_expr_t *left = parse_and_expr(p);
1274 if (!left) {
1275 return NULL;
1276 }
1277 while (check(p, TOK_XOR)) {
1278 advance(p);
1279 cbm_expr_t *right = parse_and_expr(p);
1280 if (!right) {
1281 expr_free(left);
1282 return NULL;
1283 }
1284 left = expr_binary(EXPR_XOR, left, right);
1285 }
1286 return left;
1287}
1288
1289/* OR: xor (OR xor)* */
1290static cbm_expr_t *parse_or_expr(parser_t *p) { // NOLINT(misc-no-recursion)

Callers 1

parse_or_exprFunction · 0.85

Calls 5

parse_and_exprFunction · 0.85
advanceFunction · 0.85
expr_freeFunction · 0.85
expr_binaryFunction · 0.85
checkFunction · 0.70

Tested by

no test coverage detected