Browse Source

Array Support added.

master
heck 5 years ago
parent
commit
1b452adcc4
  1. 16
      pEpACIDgen/ast_2_acid.py

16
pEpACIDgen/ast_2_acid.py

@ -174,12 +174,20 @@ def _extract_typedef_decl(ast, name):
res = utils.recursive_query(ast, filter)
if res:
ress = res.pop()
if ress["utypekind"] == "Typedef" or ress["utypekind"] == "Elaborated":
ret = _extract_enum_decl(ast, ress["utype"])
if (ress["utypekind"] == "Typedef"
or ress["utypekind"] == "Elaborated"
or ress["utypekind"] == "ConstantArray"
or ress["utypekind"] == "Pointer"):
type = ress["utype"]
if (ress["utypekind"] == "ConstantArray" or ress["utypekind"] == "Pointer"):
type = ress["utype"].split(' ')[0]
ret = _extract_enum_decl(ast, type)
if not ret:
ret = _extract_struct_decl(ast, ress["utype"])
ret = _extract_struct_decl(ast, type)
if not ret:
ret = _extract_typedef_decl(ast, ress["utype"])
ret = _extract_typedef_decl(ast, type)
else:
ret = ress

Loading…
Cancel
Save