https://docs.python.org/3/reference/expressions.html#comparisons
(&mut self)
| 2072 | |
| 2073 | // https://docs.python.org/3/reference/expressions.html#comparisons |
| 2074 | fn parse_comparison(&mut self) -> Result<Expression, ParsingError> { |
| 2075 | let node = self.start_node(); |
| 2076 | let or_expr = self.parse_or_expr()?; |
| 2077 | let mut ops = vec![]; |
| 2078 | let mut comparators = vec![]; |
| 2079 | while self.cur_kind().is_comparison_operator() { |
| 2080 | ops.push(self.parse_comp_operator()?); |
| 2081 | comparators.push(self.parse_or_expr()?); |
| 2082 | } |
| 2083 | |
| 2084 | if !ops.is_empty() { |
| 2085 | return Ok(Expression::Compare(Box::new(Compare { |
| 2086 | node: self.finish_node(node), |
| 2087 | left: or_expr, |
| 2088 | ops, |
| 2089 | comparators, |
| 2090 | }))); |
| 2091 | } |
| 2092 | |
| 2093 | Ok(or_expr) |
| 2094 | } |
| 2095 | |
| 2096 | // Binary bitwise operations |
| 2097 | // https://docs.python.org/3/reference/expressions.html#binary-bitwise-operations |
no test coverage detected