LLNL / shroud

Shroud: generate Fortran and Python wrappers for C and C++ libraries
BSD 3-Clause "New" or "Revised" License
91 stars 7 forks source link

Declstr #352

Closed ltaylor16 closed 3 months ago

ltaylor16 commented 3 months ago

Create declstr.py to control formatting AST nodes from declast.py. These functions were methods in declast.py before. Moving it makes declast.py more about parsing only, and less about creating wrappers.

Move Fortran specific methods from declast.py to wrapf.py.

Update __str__ methods for AST nodes.

Allow multiple declarators on a declaration. Parse: struct foo {int i, j;}.

Fixes for function pointer typedefs. callbacks which return a pointer need to be type(C_PTR) since +deref attribute is not used with callbacks.