aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/mesonlib
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild/mesonlib')
-rw-r--r--mesonbuild/mesonlib/universal.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/mesonbuild/mesonlib/universal.py b/mesonbuild/mesonlib/universal.py
index 318b365..fbb3a00 100644
--- a/mesonbuild/mesonlib/universal.py
+++ b/mesonbuild/mesonlib/universal.py
@@ -1976,6 +1976,11 @@ class OptionKey:
_type = _classify_argument(self)
object.__setattr__(self, 'type', _type)
+ def toplevel_key(self):
+ if not self.subproject:
+ raise RuntimeError("Internal error: tried to get top level option for a top level option.")
+ return OptionKey(self.name, '', self.machine, self.lang, self.type)
+
def __setattr__(self, key: str, value: T.Any) -> None:
raise AttributeError('OptionKey instances do not support mutation.')