From 5b62c2c83ef1574a3cb4f2710c5256b14cce3792 Mon Sep 17 00:00:00 2001 From: Ryan Mast Date: Sat, 7 Oct 2023 10:36:07 -0700 Subject: [PATCH] Add warning messages for missing arguments --- src/bindingGenerators/clangParser.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/bindingGenerators/clangParser.py b/src/bindingGenerators/clangParser.py index 19f6ffb..d957365 100644 --- a/src/bindingGenerators/clangParser.py +++ b/src/bindingGenerators/clangParser.py @@ -7,6 +7,7 @@ import json import logging import os +import sys from typing import List import clang.cindex as cidx @@ -191,3 +192,13 @@ def parseCHeaderFiles(self, headers: List[str], ignoredMacros: List[str]) -> Non del self.parsedInfo[key] clangLogger.info("Clang successfully parsed the C header files!") clangLogger.debug(f"The clang parser result:\n{json.dumps(self.parsedInfo, indent=4, sort_keys=True)}\n{json.dumps(CHeaderParser._types, indent=4, sort_keys=True)}") + +if len(sys.argv) < 2: + print("At least one header file must be provided as an input argument.") + exit(1) + +with open("ast.json", "w+") as f: + json.dump(CHeaderParser(sys.argv[1:]).parsedInfo, f, indent=4, sort_keys=False) + +with open("types.json", "w+") as f: + json.dump(CHeaderParser(sys.argv[1:])._types, f, indent=4, sort_keys=False)