| 22 | |
| 23 | |
| 24 | class ReducerDetector(IdentityTransform): |
| 25 | contains_reducers: bool |
| 26 | |
| 27 | def __init__(self): |
| 28 | self.contains_reducers = False |
| 29 | |
| 30 | def eval_reducer( |
| 31 | self, expression: expr.ReducerExpression, **kwargs |
| 32 | ) -> expr.ReducerExpression: |
| 33 | self.contains_reducers = True |
| 34 | return super().eval_reducer(expression, **kwargs) |
| 35 | |
| 36 | |
| 37 | _expression_handlers: dict[type[sql_expr.Expression], Callable] = {} |