(s: Scanner)
| 173 | |
| 174 | |
| 175 | def expr(s: Scanner) -> ast.expr: |
| 176 | ret = and_expr(s) |
| 177 | while s.accept(TokenType.OR): |
| 178 | rhs = and_expr(s) |
| 179 | ret = ast.BoolOp(ast.Or(), [ret, rhs]) |
| 180 | return ret |
| 181 | |
| 182 | |
| 183 | def and_expr(s: Scanner) -> ast.expr: |
no test coverage detected