unregister<T extends Object> method

bool unregister<T extends Object>([
  1. String? id
])

Removes a builder function from instances.

Returns true when instance has been unregistered.

Implementation

bool unregister<T extends Object>([String? id]) {
  final instance = ReactterInstance<T?>(id);
  final instanceFound = _reactterInstanceManager.instances.lookup(instance);

  if (instanceFound == null) {
    Reactter.log('Instance "$instance" don\'t exist.');
    return false;
  }

  _removeInstance<T>(instanceFound);

  _reactterInstanceManager.instances.remove(instance);

  UseEvent<T>(id)
    ..emit(Lifecycle.unregistered)
    ..dispose();

  Reactter.log('Instance "$instance" has been unregistered.');
  return true;
}