Ayaz Hafiz
|
d9207137e8
|
Implement Num.isZero as a low-level
This will be needed ahead of the `Eq` ability.
Closes #4223
|
2022-10-05 19:47:29 -05:00 |
|
Ayaz Hafiz
|
5416eb7cbf
|
List dependencies in the stdlib explicitly rather than hard-coding
|
2022-10-05 18:53:49 -05:00 |
|
Ayaz
|
0b57b00235
|
Merge pull request #4205 from roc-lang/more-hash-derivers
Support deriving `Hash` for inductive records
|
2022-10-05 17:30:02 -05:00 |
|
Ayaz Hafiz
|
262d13ffe7
|
Simplify char pattern matching in json parser
|
2022-10-05 17:28:02 -05:00 |
|
Ayaz Hafiz
|
7064d1c060
|
Gen test for char pattern matching
|
2022-10-05 17:28:01 -05:00 |
|
Ayaz Hafiz
|
912cebc33d
|
Add tests for inferring char ranged number
|
2022-10-05 17:28:01 -05:00 |
|
Ayaz Hafiz
|
619cd2f629
|
Infer ranged number for chars in patterns
|
2022-10-05 17:28:01 -05:00 |
|
Ayaz Hafiz
|
9054266a76
|
Simplify Json.roc
|
2022-10-05 17:28:01 -05:00 |
|
Ayaz Hafiz
|
178b634266
|
Treat single quote literals as ranged numbers for inference purposes
|
2022-10-05 17:28:00 -05:00 |
|
Ayaz Hafiz
|
16f43f5768
|
Clippy
|
2022-10-05 17:25:12 -05:00 |
|
Ayaz Hafiz
|
33d007a17b
|
Exercise both dispatch branches in test
|
2022-10-05 17:25:12 -05:00 |
|
Ayaz Hafiz
|
ed9f37a756
|
Add gen test for tag function dispatch
|
2022-10-05 17:25:12 -05:00 |
|
Ayaz Hafiz
|
06e5110aa5
|
Unification of multiple tag-functions
|
2022-10-05 17:25:11 -05:00 |
|
Ayaz Hafiz
|
61cf8e53e6
|
Have FunctionOrTagUnion include multiple possible tags
|
2022-10-05 17:24:52 -05:00 |
|
Ayaz
|
4f1d7fca9a
|
Merge pull request #4218 from roc-lang/rollup-10-05
Misc bugfixes 10-05
|
2022-10-05 14:52:11 -05:00 |
|
Ayaz
|
596f14d173
|
Merge pull request #4203 from roc-lang/shift-signature
Have `Num.shift*By` functions shift by a `U8`
|
2022-10-05 13:26:36 -05:00 |
|
Ayaz Hafiz
|
a842247aa6
|
Unused import
|
2022-10-05 13:09:10 -05:00 |
|
Ayaz Hafiz
|
f849bab6f1
|
Ignore large bit abs on wasm
|
2022-10-05 13:06:44 -05:00 |
|
Ayaz Hafiz
|
792afe5457
|
Remove TagDiscriminant low-level
|
2022-10-05 13:00:45 -05:00 |
|
Ayaz Hafiz
|
cb96a64259
|
Implement hashing tag discriminants in derivers, rather than using low-level
This makes it so we can decide the discriminant in the front-end. With
this, we can also now revert the `LowLevel::TagDiscriminant`
introductions.
|
2022-10-05 12:58:04 -05:00 |
|
Ayaz Hafiz
|
a308ebb38c
|
Optimize derived hash implementation for newtypes
When we have a newtype tag union, there is no reason to hash its
discriminant.
|
2022-10-05 12:19:35 -05:00 |
|
Ayaz Hafiz
|
2517695ce4
|
Fix deriving of hash ability for recursive tag unions
|
2022-10-05 12:01:02 -05:00 |
|
Brendan Hansknecht
|
ca92b5e8e8
|
Increase the inline threshold
|
2022-10-05 08:11:10 -07:00 |
|
Brendan Hansknecht
|
4ebe1b2bce
|
Avoid allocating a new list when calling List.sublist
|
2022-10-05 08:11:02 -07:00 |
|
Ayaz Hafiz
|
657346a057
|
Support Num.abs for non-64 bit integer types
Closes #4210
|
2022-10-05 08:39:45 -05:00 |
|
Ayaz Hafiz
|
df3b7cb1b4
|
Preserve comments before header
Closes #4212
|
2022-10-05 08:34:30 -05:00 |
|
Ayaz
|
02b02901bc
|
Update crates/compiler/test_gen/src/gen_abilities.rs
Signed-off-by: Ayaz <20735482+ayazhafiz@users.noreply.github.com>
|
2022-10-04 18:58:30 -05:00 |
|
Ayaz Hafiz
|
c7bd4e1c1c
|
Support upcasting bools to ints in the wasm backend
|
2022-10-04 18:55:45 -05:00 |
|
Ayaz Hafiz
|
725054b8f3
|
Add TODO recursive tag union hashing test
|
2022-10-04 18:17:35 -05:00 |
|
Ayaz Hafiz
|
5389cdd87f
|
Add gen test for newtype, byte union, unit tag union hash deriving
|
2022-10-04 18:11:41 -05:00 |
|
Ayaz Hafiz
|
41c9985c53
|
Support newtypes and unit tag union hash deriving
|
2022-10-04 18:11:37 -05:00 |
|
Ayaz Hafiz
|
251b3865d9
|
Implement tag union discriminant extraction for byte- and newtype-variants
|
2022-10-04 18:04:46 -05:00 |
|
Ayaz Hafiz
|
00ca8f2f80
|
Add gen test for deriving hash for heterogenous tags
|
2022-10-04 17:28:35 -05:00 |
|
Ayaz Hafiz
|
ff70832068
|
Derive hash for tag unions with a discriminant
|
2022-10-04 17:19:30 -05:00 |
|
Ayaz Hafiz
|
5eb00c4f94
|
Generate derive keys for tags
|
2022-10-04 16:23:24 -05:00 |
|
Ayaz Hafiz
|
fd54cdfdd1
|
Low-level to extract discriminant from a tag union
|
2022-10-04 16:17:05 -05:00 |
|
Ayaz Hafiz
|
7421485973
|
Remove clone
|
2022-10-04 15:37:03 -05:00 |
|
Ayaz Hafiz
|
5870de54ae
|
Add gen tests for record hash deriving
|
2022-10-04 15:29:20 -05:00 |
|
Ayaz Hafiz
|
46f111c6dd
|
Add hash deriving for records
|
2022-10-04 15:23:41 -05:00 |
|
Ayaz Hafiz
|
ad4d98be9c
|
Add derive key generation for record hashing
|
2022-10-04 14:42:00 -05:00 |
|
Ayaz Hafiz
|
fd421c005d
|
Refactor hash immediate tests
|
2022-10-04 14:40:53 -05:00 |
|
Ayaz Hafiz
|
6d7f664194
|
Add test for hashing list of lists
|
2022-10-04 14:40:21 -05:00 |
|
Ayaz Hafiz
|
c2c15d3ee1
|
Skip pending test on wasm
|
2022-10-04 14:39:55 -05:00 |
|
Ayaz Hafiz
|
29991654db
|
Make sure conversion of signed ints before shift applies to the shifted number
|
2022-10-04 14:23:53 -05:00 |
|
Ayaz Hafiz
|
085c73dffe
|
Clippy
|
2022-10-04 14:10:29 -05:00 |
|
Ayaz Hafiz
|
f2c30a699c
|
Remove stray dbg
|
2022-10-04 14:09:40 -05:00 |
|
Ayaz Hafiz
|
42ddcb70df
|
Add derive test for List of strings
|
2022-10-04 14:09:40 -05:00 |
|
Ayaz Hafiz
|
5b833e57b5
|
Support derivation of Hash for Str and List
|
2022-10-04 14:09:40 -05:00 |
|
Ayaz Hafiz
|
294244ae25
|
Make sure flex unifies with rigid-able vars correctly
|
2022-10-04 14:09:40 -05:00 |
|
Ayaz Hafiz
|
715d88510c
|
Add tests for immediates of the Hash ability
|
2022-10-04 14:09:40 -05:00 |
|