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

Remove Declarator.metaattrs #341

Closed ltaylor16 closed 7 months ago

ltaylor16 commented 7 months ago

Now use ArgBind.meta. This allows meta attributes to be set per language binding. It also makes declast.py independent of the wrapping process (except for parsing attributes).

Add VariableNode._bind to replace metaattrs. Already on FunctionNode.

Replace internal meta attributes like _constructor and _destructor with Declarator.is_ctor and is_dtor.

Do not set a default value attribute. Instead decided when to add the Fortran VALUE attribute in append_fortran_value or via a statement group.

Move most attribute checking from generate.py to metaattrs.py.