Because of inner logic of godot we can't rely on
destructors/constructors to manage liveness of objects: they obey rules
of enter_tree and exit_tree. If child/parent relations are mixed
with relations of aggregation(or composition) we may end up in situation
inside dtor of grid class when child objects are not destroyed and grid
object has no access to them via its children.
Because of inner logic of godot we can't rely on destructors/constructors to manage liveness of objects: they obey rules of
enter_tree
andexit_tree
. If child/parent relations are mixed with relations of aggregation(or composition) we may end up in situation inside dtor ofgrid
class when child objects are not destroyed and grid object has no access to them via its children.Cherry-picked from #22