|
7 | 7 | from ibis import _ as col |
8 | 8 |
|
9 | 9 | from narwhals._compliant import LazyExpr |
10 | | -from narwhals._expression_parsing import ExprKind |
11 | 10 | from narwhals._ibis.expr_dt import IbisExprDateTimeNamespace |
12 | 11 | from narwhals._ibis.expr_list import IbisExprListNamespace |
13 | 12 | from narwhals._ibis.expr_str import IbisExprStringNamespace |
|
20 | 19 | from typing_extensions import Self |
21 | 20 |
|
22 | 21 | from narwhals._compliant.typing import AliasNames, EvalNames, EvalSeries |
23 | | - from narwhals._expression_parsing import ExprMetadata |
| 22 | + from narwhals._expression_parsing import ExprKind, ExprMetadata |
24 | 23 | from narwhals._ibis.dataframe import IbisLazyFrame |
25 | 24 | from narwhals._ibis.namespace import IbisNamespace |
26 | 25 | from narwhals._ibis.typing import ExprT, WindowFunction |
@@ -149,19 +148,8 @@ def func(window_inputs: WindowInputs) -> ir.Value: |
149 | 148 | return func |
150 | 149 |
|
151 | 150 | def broadcast(self, kind: Literal[ExprKind.AGGREGATION, ExprKind.LITERAL]) -> Self: |
152 | | - if kind is ExprKind.LITERAL: |
153 | | - return self |
154 | | - |
155 | | - def func(df: IbisLazyFrame) -> Sequence[ir.Value]: |
156 | | - return [expr.over() for expr in self(df)] |
157 | | - |
158 | | - return self.__class__( |
159 | | - func, |
160 | | - evaluate_output_names=self._evaluate_output_names, |
161 | | - alias_output_names=self._alias_output_names, |
162 | | - backend_version=self._backend_version, |
163 | | - version=self._version, |
164 | | - ) |
| 151 | + # Ibis does its own broadcasting. |
| 152 | + return self |
165 | 153 |
|
166 | 154 | @classmethod |
167 | 155 | def from_column_names( |
|
0 commit comments