From cc34b71eaadbf3406c98e7e023540fd3c572d597 Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Fri, 20 Nov 2020 11:06:45 -0800 Subject: [PATCH] Allow setting attributes in MesonException intializer Instead of forcing them to be set afterwards --- mesonbuild/mesonlib.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py index 352c5ca8b..6ebf26296 100644 --- a/mesonbuild/mesonlib.py +++ b/mesonbuild/mesonlib.py @@ -70,9 +70,13 @@ meson_command = None class MesonException(Exception): '''Exceptions thrown by Meson''' - file = None # type: T.Optional[str] - lineno = None # type: T.Optional[int] - colno = None # type: T.Optional[int] + def __init__(self, *args: object, file: T.Optional[str] = None, + lineno: T.Optional[int] = None, colno: T.Optional[int] = None): + super().__init__(*args) + self.file = file + self.lineno = lineno + self.colno = colno + class EnvironmentException(MesonException): '''Exceptions thrown while processing and creating the build environment'''