aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/interpreterbase/baseobjects.py
diff options
context:
space:
mode:
authorDaniel Mensinger <daniel@mensinger-ka.de>2021-09-01 23:46:56 +0200
committerDaniel Mensinger <daniel@mensinger-ka.de>2021-09-25 12:44:11 +0200
commit6b00c7dc810131da65029598b97abbcf3584067c (patch)
treeb5837f7f8fee220c9212e49af411e08285a8d1ae /mesonbuild/interpreterbase/baseobjects.py
parentd93d01b6c5c98a77e057b914e8d66b01d2a10771 (diff)
downloadmeson-6b00c7dc810131da65029598b97abbcf3584067c.zip
meson-6b00c7dc810131da65029598b97abbcf3584067c.tar.gz
meson-6b00c7dc810131da65029598b97abbcf3584067c.tar.bz2
Remove helpers.check_stringlist()
Diffstat (limited to 'mesonbuild/interpreterbase/baseobjects.py')
-rw-r--r--mesonbuild/interpreterbase/baseobjects.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/mesonbuild/interpreterbase/baseobjects.py b/mesonbuild/interpreterbase/baseobjects.py
index c979f7d..62a2381 100644
--- a/mesonbuild/interpreterbase/baseobjects.py
+++ b/mesonbuild/interpreterbase/baseobjects.py
@@ -168,12 +168,18 @@ class RangeHolder(MesonInterpreterObject):
def __init__(self, start: int, stop: int, step: int, *, subproject: str) -> None:
super().__init__(subproject=subproject)
self.range = range(start, stop, step)
+ self.operators.update({
+ MesonOperator.INDEX: self.op_index,
+ })
+
+ def op_index(self, other: int) -> int:
+ try:
+ return self.range[other]
+ except:
+ raise InvalidArguments(f'Index {other} out of bounds of range.')
def __iter__(self) -> T.Iterator[int]:
return iter(self.range)
- def __getitem__(self, key: int) -> int:
- return self.range[key]
-
def __len__(self) -> int:
return len(self.range)