| commit | de655b425448abe838d92a342855a3490b594cc6 | [log] [tgz] |
|---|---|---|
| author | Kwang Yul Seo <kwangyul.seo@gmail.com> | Sun Sep 20 09:01:05 2015 |
| committer | Kwang Yul Seo <kwangyul.seo@gmail.com> | Mon Sep 21 01:09:13 2015 |
| tree | ebe5df68b9fdc4a0b575c5041aac96ea3bd6b13e | |
| parent | b97d6c9456dc14010324e2b624317f985690efc3 [diff] |
Fix a bug in == operator of PersistentTuple classes. Check if o is of PersistentTuple type, not Tuple.
There are two versions of this data structure:
final t = new Tuple2<String, int>('a', 10); print(t.i1); // prints 'a' print(t.i2); // prints '10'
In computing, a persistent data structure is a data structure that always preserves the previous version of itself when it is modified. Such data structures are effectively immutable, as their operations do not (visibly) update the structure in-place, but instead always yield a new updated structure. (A persistent data structure is not a data structure committed to persistent storage, such as a disk; this is a different and unrelated sense of the word “persistent.”)
final t1 = const PersistentTuple2<String, int>('a', 10); final t2 = t1.setI1('c'); // t2 is a new [PersistentTuple2] object with i1 is 'c' and i2 is 10.