Skip to content

Commit 2bc7ef6

Browse files
committed
Regenerate _typed_ops after adding "unhashable"
1 parent d5d9e95 commit 2bc7ef6

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

xarray/core/_typed_ops.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,10 @@ def __eq__(self, other: DsCompatible) -> Self: # type:ignore[override]
8383
def __ne__(self, other: DsCompatible) -> Self: # type:ignore[override]
8484
return self._binary_op(other, nputils.array_ne)
8585

86+
# When __eq__ is defined but __hash__ is not, then an object is unhashable,
87+
# and it should be declared as follows:
88+
__hash__: None # type:ignore[assignment]
89+
8690
def __radd__(self, other: DsCompatible) -> Self:
8791
return self._binary_op(other, operator.add, reflexive=True)
8892

@@ -291,6 +295,10 @@ def __eq__(self, other: DaCompatible) -> Self: # type:ignore[override]
291295
def __ne__(self, other: DaCompatible) -> Self: # type:ignore[override]
292296
return self._binary_op(other, nputils.array_ne)
293297

298+
# When __eq__ is defined but __hash__ is not, then an object is unhashable,
299+
# and it should be declared as follows:
300+
__hash__: None # type:ignore[assignment]
301+
294302
def __radd__(self, other: DaCompatible) -> Self:
295303
return self._binary_op(other, operator.add, reflexive=True)
296304

@@ -851,6 +859,10 @@ def __eq__(self, other: GroupByCompatible) -> Dataset: # type:ignore[override]
851859
def __ne__(self, other: GroupByCompatible) -> Dataset: # type:ignore[override]
852860
return self._binary_op(other, nputils.array_ne)
853861

862+
# When __eq__ is defined but __hash__ is not, then an object is unhashable,
863+
# and it should be declared as follows:
864+
__hash__: None # type:ignore[assignment]
865+
854866
def __radd__(self, other: GroupByCompatible) -> Dataset:
855867
return self._binary_op(other, operator.add, reflexive=True)
856868

@@ -973,6 +985,10 @@ def __eq__(self, other: T_Xarray) -> T_Xarray: # type:ignore[override]
973985
def __ne__(self, other: T_Xarray) -> T_Xarray: # type:ignore[override]
974986
return self._binary_op(other, nputils.array_ne)
975987

988+
# When __eq__ is defined but __hash__ is not, then an object is unhashable,
989+
# and it should be declared as follows:
990+
__hash__: None # type:ignore[assignment]
991+
976992
def __radd__(self, other: T_Xarray) -> T_Xarray:
977993
return self._binary_op(other, operator.add, reflexive=True)
978994

0 commit comments

Comments
 (0)