Support allocatable attributes

Description

Supersedes !74 (closed)

  • Update the template so it writes a Python wrapper with and without setters.
  • Use the Python wrapper without setters as the return type for encapsulated attributes, which makes clear that you can't edit the values via this path (you have to create new objects to edit things)
  • Write docs explaining these patterns and how we support them (see #42 (comment 1805291536))
    • I am guessing we will only support pointer attributes that point to derived types, i.e. we won't support pointer attributes to floats, ints, booleans, characters (at least not for now). Should probably make sure that trying to do this raises an error to avoid confusion. Made #59 for follow up.

Checklist

Please confirm that this pull request has done the following:

  • Tests added
  • Documentation added (where applicable)
  • Changelog item added to changelog/

Closes #42 (closed)

Edited by Zebedee Nicholls

Merge request reports

Loading