-
Notifications
You must be signed in to change notification settings - Fork 66
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
New implementation of reactive tables. (#113)
* New implementation of reactive tables. Up until now, the values used in a reactive table had to implement a bunch of traits (such as Equality, Orderable etc ...). The reason was that the implementation was relying on a sort of those values to function properly (compute the diffs etc ...). The other weird thing is that the implementation was returning a sorted array of the values inserted and was perform a "unique" operation on them for no good reason other than it was convenient for the old implementation. This new implementation fixes that, the values don't have any constraint other than being frozen (the interned pointer is used to do the operations). The values returned by "get" preserve repetitions. PS: Turns out the new implementation fixed a long standing bug in the incremental type-checker when a module was changing name. PS2: I used the opportunity to also fix issue #72. * removed constraints on Reactive table type parameter * revert changes in skip_to_native
- Loading branch information
Showing
10 changed files
with
388 additions
and
104 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.