Skip to content

Commit f6c77ef

Browse files
committed
Fixed a bug where an error was raised where the item argument of __getitem__ or __setitem__ was a bool.
1 parent 00421f3 commit f6c77ef

File tree

4 files changed

+24
-0
lines changed

4 files changed

+24
-0
lines changed

named_arrays/_functions/functions.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -438,6 +438,9 @@ def _getitem(
438438
inputs = array.inputs
439439
outputs = array.outputs
440440

441+
if isinstance(item, bool):
442+
item = na.as_named_array(item)
443+
441444
if isinstance(item, na.AbstractArray):
442445
if isinstance(item, na.AbstractFunctionArray):
443446
if not np.all(item.inputs == array.inputs):
@@ -991,6 +994,9 @@ def __setitem__(
991994
value: float | u.Quantity | na.FunctionArray,
992995
):
993996

997+
if isinstance(item, bool):
998+
item = na.as_named_array(item)
999+
9941000
if isinstance(item, na.AbstractFunctionArray):
9951001
if not np.all(item.inputs == self.inputs):
9961002
raise ValueError("boolean advanced index does not have the same inputs as the array")

named_arrays/_scalars/scalars.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -393,6 +393,9 @@ def _getitem(
393393
item: dict[str, int | slice | AbstractScalarArray] | AbstractScalarArray,
394394
):
395395

396+
if isinstance(item, bool):
397+
item = na.as_named_array(item)
398+
396399
if isinstance(item, AbstractScalarArray):
397400

398401
if not set(item.shape).issubset(self.axes):
@@ -1016,6 +1019,9 @@ def __setitem__(
10161019
else:
10171020
value = ScalarArray(value)
10181021

1022+
if isinstance(item, bool):
1023+
item = na.as_named_array(item)
1024+
10191025
if isinstance(item, AbstractScalarArray):
10201026

10211027
item = item.explicit

named_arrays/_scalars/uncertainties/uncertainties.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -268,6 +268,9 @@ def _getitem(
268268
nominal = na.as_named_array(array.nominal)
269269
distribution = na.as_named_array(array.distribution)
270270

271+
if isinstance(item, bool):
272+
item = na.as_named_array(item)
273+
271274
if isinstance(item, na.AbstractArray):
272275
item = item.explicit
273276
if isinstance(item, AbstractUncertainScalarArray):
@@ -649,6 +652,9 @@ def __setitem__(
649652
):
650653
shape_self = self.shape
651654

655+
if isinstance(item, bool):
656+
item = na.as_named_array(item)
657+
652658
if isinstance(item, na.AbstractArray):
653659

654660
item = item.explicit

named_arrays/_vectors/vectors.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,9 @@ def _getitem(
262262
shape_array = array.shape
263263
components = array.components
264264

265+
if isinstance(item, bool):
266+
item = na.as_named_array(item)
267+
265268
if isinstance(item, na.AbstractArray):
266269
item = item.explicit
267270
shape_item = item.shape
@@ -610,6 +613,9 @@ def __setitem__(
610613
):
611614
components_self = self.components
612615

616+
if isinstance(item, bool):
617+
item = na.as_named_array(item)
618+
613619
if isinstance(item, na.AbstractArray):
614620
if isinstance(item, na.AbstractVectorArray):
615621
if item.type_abstract == self.type_abstract:

0 commit comments

Comments
 (0)