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

Function parse_and_expr

src/cypher/cypher.c:1255–1270  ·  view source on GitHub ↗

AND: not (AND not)* */

Source from the content-addressed store, hash-verified

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