From 013c35bf40f8e554b3474481e275366a7ce11c22 Mon Sep 17 00:00:00 2001 From: hakril Date: Wed, 5 Feb 2025 22:05:58 +0100 Subject: [PATCH] Improve sample\find_value.py to search in Enums --- samples/find_value.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/samples/find_value.py b/samples/find_value.py index 6e09bfa..e7f2d40 100644 --- a/samples/find_value.py +++ b/samples/find_value.py @@ -18,6 +18,11 @@ def search_name_in_enum(target): for name, enum in meta.enums_walker(): if match(target, name): print(name, enum) + if not issubclass(enum, gdef.EnumType): + continue + for enumvalue in enum.values: + if match(target, enumvalue.name): + print("Enum <{0!r}>".format(enumvalue)) def search_name_in_struct(target): for name, struct in meta.structs_walker(): @@ -78,6 +83,13 @@ def search_value(target): if target == windef: print(repr(windef)) + for name, enum in meta.enums_walker(): + if not issubclass(enum, gdef.EnumType): + continue + for enumvalue in enum.values: + if target == enumvalue: + print("Enum <{0!r}>".format(enumvalue)) + parser = argparse.ArgumentParser(prog=__file__) parser.add_argument('target', help='The name or value to research in PythonForWindows generated definition') res = parser.parse_args()