exclude<T extends Object> method

  1. @override
Registration exclude<T extends Object>(
  1. String because
)
override

Says that components of type T are deliberately not saved, and why: a renderer handle, a cache, anything rebuilt from what is saved.

Implementation

@override
Registration exclude<T extends Object>(String because) {
  final info = ComponentInfo(
    type: T,
    id: '$T',
    version: 0,
    published: false,
    declaredBy: _by,
    excludedBecause: because,
  );
  _store.infos[T] = info;
  _store.codecs.remove(T);
  return _track(
    Registration(() {
      if (identical(_store.infos[T], info)) _store.infos.remove(T);
    }),
  );
}