#!/usr/bin/env python3 # SPDX-License-Identifier: LGPL-2.1-only # Copyright 2021 Jookia <contact@jookia.org> import atexit import os import sys if __name__ == "__main__": src_dir = os.path.dirname(__file__) repo_dir = os.path.join(src_dir, "..") sys.path.append(repo_dir) from src import log from src import oldparse from src import interp def main(): args = sys.argv if len(args) != 2: print("Usage: main.py FILENAME") return 1 log.set_default_log_level() ast = oldparse.parse_file(args[1]) if not ast: return 1 interp.run_ast(ast) return 0 def nowait_main(): code = main() sys.exit(code) def unexpected_exit(): input("Unexpected exit. Press any key to continue.") def wait_main(): atexit.register(unexpected_exit) code = main() atexit.unregister(unexpected_exit) input("Exited with code %s. Press any key to continue." % (code)) sys.exit(code) if __name__ == "__main__": nowait_main()