MCPcopy Create free account
hub / github.com/GraphLite-AI/GraphLite / or_expression

Function or_expression

graphlite/src/ast/parser.rs:1576–1593  ·  view source on GitHub ↗

Parse OR expressions: xor_expr OR xor_expr

(tokens: &[Token])

Source from the content-addressed store, hash-verified

1574
1575/// Parse OR expressions: xor_expr OR xor_expr
1576fn or_expression(tokens: &[Token]) -> IResult<&[Token], Expression> {
1577 map(
1578 tuple((
1579 xor_expression,
1580 many0(tuple((expect_token(Token::Or), xor_expression))),
1581 )),
1582 |(first, rest)| {
1583 rest.into_iter().fold(first, |left, (_, right)| {
1584 Expression::Binary(BinaryExpression {
1585 left: Box::new(left),
1586 operator: Operator::Or,
1587 right: Box::new(right),
1588 location: Location::default(),
1589 })
1590 })
1591 },
1592 )(tokens)
1593}
1594
1595/// Parse XOR expressions: and_expr XOR and_expr
1596fn xor_expression(tokens: &[Token]) -> IResult<&[Token], Expression> {

Callers 1

expressionFunction · 0.85

Calls 1

expect_tokenFunction · 0.85

Tested by

no test coverage detected