Refactor List diffing/change records, add diffing interface (#5)

* Refactor our a differ/list differ.

* Fix bugs in mergeSplice

* More fixes to the list differ.

* Some debugging.

* More fixes.

* Fix remaining edge case missed.

* Slight cleanups before PR

* Update README

* Add license headers.
19 files changed
tree: a7277c3f897dbe3353121aff4dbd70770eb1cca8
  1. lib/
  2. test/
  3. .analysis_options
  4. .gitignore
  5. AUTHORS
  6. CHANGELOG.md
  7. CONTRIBUTING.md
  8. LICENSE
  9. PATENTS
  10. pubspec.yaml
  11. README.md
README.md

Support for detecting and being notified when an object is mutated.

There are two general ways to detect changes:

  • Listen to Observable.changes and be notified when an object changes
  • Use Differ.diff to determine changes between two objects