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. .analysis_options
  2. .gitignore
  3. AUTHORS
  4. CHANGELOG.md
  5. CONTRIBUTING.md
  6. LICENSE
  7. PATENTS
  8. README.md
  9. lib/
  10. pubspec.yaml
  11. test/
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