diff options
author | Daniel Mensinger <daniel@mensinger-ka.de> | 2021-09-01 23:46:56 +0200 |
---|---|---|
committer | Daniel Mensinger <daniel@mensinger-ka.de> | 2021-09-25 12:44:11 +0200 |
commit | 6b00c7dc810131da65029598b97abbcf3584067c (patch) | |
tree | b5837f7f8fee220c9212e49af411e08285a8d1ae /mesonbuild/interpreterbase/baseobjects.py | |
parent | d93d01b6c5c98a77e057b914e8d66b01d2a10771 (diff) | |
download | meson-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.py | 12 |
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) |