PropertyChangeMixin
, which does not work in dart2jsThis is a larger change with a goal of no runtime changes for current customers, but in the future Observable
will become a very lightweight interface, i.e.:
abstract class Observable<C extends ChangeRecord> { Stream<List<C>> get changes; }
Observable
interfaceChangeNotifier
should be used as a base class for these methods:Observable.observed
Observable.unobserved
Observable.hasObservers
Observable.deliverChanges
Observable.notifyChange
PropertyChangeNotifier
should be used for these methods:Observable.notifyPropertyChange
Observable
uses ChangeNotifier
implements Observable
should move to implementing or extending ChangeNotifier
. In a future release Observable
will reduce API surface down to an abstract Stream<List<C>> get changes
.ChangeNotifier
and PropertyChangeNotifier
classesObservable
in a generic mannerObservable<C extends ChangeRecord>
C
, notifyPropertyChange
is illegalMapChangeRecord
MapChangeRecord.apply
to apply a change recordMapDiffer
, which implements Differ
for a Map
ListDiffer
that caused a RangeError
/*<E>*/
syntax in 0.15.0
Differ
interface, as well as EqualityDiffer
ListDiffer
ChangeRecord.ANY
and ChangeRecord.NONE
ListChangeRecord
ListChangeRecord.apply
to apply a change record@override
annotations to satisfy annotate_overrides
pkg/meta
.