1. override
void dispose()

Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded.

This method should only be called by the object's owner.

Source

@override
void dispose() {
  _dirtyNodes.clear();
  _nodes.clear();
  _detachedNodes.clear();
  super.dispose();
}