0

I have an existing tree and I would like to add anytree functionality by adding NodeMixin. The problem is that NodeMixin wants a fixed name 'children' for its sub-elements and I already have a list with a different name.

Another problem (I am using mypy) is that the exiting sub-elements list is not optional - terminal nodes have empty lists and NodeMixin wants 'None' as 'children' of terminal objects.

It will create a lot of changes if I have to rename the object and to deal with the optional nature of the children.

Is it possible to define children as @property or as a reference of the existing sub-elements?

uuu777
  • 765
  • 4
  • 21

1 Answers1

0

(a) it is possible to use properties for parent and children, (b) it was easy to write custom iterable class for children to account for differences between anytree and my tree iterations.

Update: is_leaf property has to be overridden too - otherwise it will be true for every node.

uuu777
  • 765
  • 4
  • 21