dispose method
Discards the internal 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.
Implementation
@override
@mustCallSuper
void dispose() {
assert(_debugAssertNotDisposed());
_map = null;
super.dispose();
}