X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/bcc25888b3299758ad36721530cca3b899b7166c..c043fa535514a76091be87a45ad472a505f9dd33:/lunaix-os/scripts/build-tools/lib/sandbox.py diff --git a/lunaix-os/scripts/build-tools/lib/sandbox.py b/lunaix-os/scripts/build-tools/lib/sandbox.py deleted file mode 100644 index de28aca..0000000 --- a/lunaix-os/scripts/build-tools/lib/sandbox.py +++ /dev/null @@ -1,32 +0,0 @@ -import traceback, sys - -class InterpreterException(Exception): - pass - -class Sandbox: - def __init__(self, symbols) -> None: - self.__syms = globals() - self.__syms.update(symbols) - - def execute(self, file): - with open(file) as f: - return self.executes(f.read(), file) - - def executes(self, str, file=""): - try: - local_ctx = {} - glb_ctx = self.__syms.copy() - exec(str, glb_ctx, local_ctx) - return local_ctx - except SyntaxError as err: - error_class = err.__class__.__name__ - detail = err.args[0] - line_number = err.lineno - except Exception as err: - error_class = err.__class__.__name__ - detail = err.args[0] - cl, exc, tb = sys.exc_info() - line_number = traceback.extract_tb(tb)[1][1] - - print(f"LunaBuild failed: {error_class} at ./{file}:{line_number}, {detail}") - raise InterpreterException("load error") \ No newline at end of file