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

Function parse_and_expr

src/cypher/cypher.c:1254–1269  ·  view source on GitHub ↗

AND: not (AND not)* */

Source from the content-addressed store, hash-verified

1252
1253/* AND: not (AND not)* */
1254static cbm_expr_t *parse_and_expr(parser_t *p) { // NOLINT(misc-no-recursion)
1255 cbm_expr_t *left = parse_not_expr(p);
1256 if (!left) {
1257 return NULL;
1258 }
1259 while (check(p, TOK_AND)) {
1260 advance(p);
1261 cbm_expr_t *right = parse_not_expr(p);
1262 if (!right) {
1263 expr_free(left);
1264 return NULL;
1265 }
1266 left = expr_binary(EXPR_AND, left, right);
1267 }
1268 return left;
1269}
1270
1271/* XOR: and (XOR and)* */
1272static cbm_expr_t *parse_xor_expr(parser_t *p) { // NOLINT(misc-no-recursion)

Callers 1

parse_xor_exprFunction · 0.85

Calls 5

parse_not_exprFunction · 0.85
advanceFunction · 0.85
expr_freeFunction · 0.85
expr_binaryFunction · 0.85
checkFunction · 0.70

Tested by

no test coverage detected