enso/test
Pavel Marek 1f8511dab2
Add Comparator conversion for all types (#4067)
Add `Comparator` type class emulation for all types. Migrate all the types in stdlib to this new `Comparator` API. The main documentation is in `Ordering.enso`.

Fixes these pivotals:
- https://www.pivotaltracker.com/story/show/183945328
- https://www.pivotaltracker.com/story/show/183958734
- https://www.pivotaltracker.com/story/show/184380208

# Important Notes
- The new Comparator API forces users to specify both `equals` and `hash` methods on their custom comparators.
- All the `compare_to` overrides were replaced by definition of a custom _ordered_ comparator.
- All the call sites of `x.compare_to y` method were replaced with `Ordering.compare x y`.
- `Ordering.compare` is essentially a shortcut for `Comparable.from x . compare x y`.
- The default comparator for `Any` is `Default_Unordered_Comparator`, which just forwards to the builtin `EqualsNode` and `HashCodeNode` nodes.
- For `x`, one can get its hash with `Comparable.from x . hash x`.
- This makes `hash` as _hidden_ as possible. There are no other public methods to get a hash code of an object.
- Comparing `x` and `y` can be done either by `Ordering.compare x y` or `Comparable.from x . compare x y` instead of `x.compare_to y`.
2023-02-10 09:22:11 +00:00
..
Benchmarks Add Comparator conversion for all types (#4067) 2023-02-10 09:22:11 +00:00
Examples_Tests Import modules' extension methods only with unqualified import statements (#3906) 2022-12-01 10:13:34 +00:00
Geo_Tests All Enso objects are hasheable (#3878) 2023-01-19 10:33:25 +01:00
Google_Api_Test Parse the standard library (#3830) 2022-10-31 16:19:12 +00:00
Image_Tests Some more tidying based on remaining tickets and PR comments. (#3946) 2022-12-06 18:35:18 +00:00
Meta_Test_Suite_Tests Add with_clue support to test framework (#3786) 2022-12-13 13:46:50 +01:00
micro-distribution Add Comparator conversion for all types (#4067) 2023-02-10 09:22:11 +00:00
Table_Tests Add Comparator conversion for all types (#4067) 2023-02-10 09:22:11 +00:00
Tests Add Comparator conversion for all types (#4067) 2023-02-10 09:22:11 +00:00
Visualization_Tests Ensure Table Visualisation is the Default Visualization for Tables (#4120) 2023-02-07 23:23:24 +00:00