dispose method
Used to clear and dispose object. After this method call is object typically unusable and ready for GC. Can be called multiple times!
Implementation
@override
void dispose() {
_cache = argStore;
_valid = false;
_state = null;
}