Ayaz Hafiz
fbc2052e83
Use insta crate for snapshot tests
...
Wow, this makes snapshot testing so much easier!!
2022-07-13 08:47:36 -04:00
Ayaz Hafiz
766ccc97f7
Add comment
2022-07-13 08:47:36 -04:00
Ayaz Hafiz
d8bee6cd18
Perfom derives from global derives module, not just symbol table
2022-07-13 08:47:36 -04:00
Ayaz Hafiz
61db0b6260
Move derivers to their own crate
2022-07-13 08:47:36 -04:00
Ayaz Hafiz
088b443e05
Refactor lambda set compaction so it's better split up
2022-07-13 08:47:35 -04:00
Ayaz Hafiz
fd9dcd8551
Have derivers rely only on exposed module types
2022-07-13 08:47:35 -04:00
Ayaz Hafiz
f481f6da6c
Don't require subs exporting types to be mutable
2022-07-13 08:47:35 -04:00
Ayaz Hafiz
bee7d15aae
Comment out debugs for now
2022-07-13 08:47:35 -04:00
Ayaz Hafiz
b377155acd
Get rid of ExposedByModule::remove for now
2022-07-13 08:47:35 -04:00
Ayaz Hafiz
16e64263f6
Correctly monomorphize all derived methods
2022-07-13 08:47:34 -04:00
Ayaz Hafiz
d56d880afb
Option<SpecializationId> rather than SpecializationId = Option<..>
2022-07-13 08:47:34 -04:00
Ayaz Hafiz
2fbe715f9f
Support null specialization ids
2022-07-13 08:47:34 -04:00
Ayaz Hafiz
6e1698775f
Make sure to update uls_of_var when importing variables directly to a usage site
2022-07-13 08:47:34 -04:00
Ayaz Hafiz
e8fb186d79
Load derived member impls into derived module for mono
2022-07-13 08:47:34 -04:00
Ayaz Hafiz
a8006d225e
Include derives module in dependencies status
2022-07-13 08:47:34 -04:00
Ayaz Hafiz
da6eda03b2
Make specializations for derives after all other modules are specialized
2022-07-13 08:47:33 -04:00
Folkert
9a51737a47
fix use after free
2022-07-13 10:34:30 +02:00
Richard Feldman
5f430034f3
roc format List.roc
2022-07-12 22:04:55 -04:00
Richard Feldman
455dde1ba4
Merge remote-tracking branch 'origin/trunk' into string-memory-problems
2022-07-12 22:03:49 -04:00
Ayaz Hafiz
8393778159
Typo
2022-07-12 21:15:33 -04:00
Ayaz Hafiz
6985b2b6a1
Pretty print opaque wrap functions
2022-07-12 21:15:14 -04:00
Ayaz Hafiz
f1a6ea6a40
Typecheck and compile opaque wrapping functions
...
This enables you to write something like
```
A := U8
List.map [1, 2, 3] @A
```
which will be compiled as if it was `List.map [1, 2, 3] \x -> @A x`.
Closes #3499
2022-07-12 18:38:03 -04:00
Folkert de Vries
d889f1fda9
Merge pull request #3498 from rtfeldman/no-line-numbers-in-runtime-error-function
...
Remove compiler-file/line-dependent runtime error messages
2022-07-12 23:04:06 +02:00
Folkert de Vries
846bab7425
Merge pull request #3493 from rtfeldman/deep-copy-var-in-body
...
mono copy: deep copy all vars in an expr
2022-07-12 23:02:27 +02:00
Folkert
bc24841921
Str.fromUtf8Range: take list argument as owned; make sure it's decremented in the small string case
2022-07-12 22:57:48 +02:00
Folkert
32207beedf
List.sublist: make sure input list is decremented if slice length is 0
2022-07-12 22:51:44 +02:00
Ayaz Hafiz
94142bf474
Remove compiler-file/line-dependent runtime error messages
...
This will help avoid the diff changes we've been running into often when
changes to mono line numbers change test results.
2022-07-12 15:17:19 -04:00
Richard Feldman
f5f137982c
Merge pull request #3432 from rtfeldman/fmt-multiline-when
...
Format multiline `when` branches
2022-07-12 12:54:11 -04:00
Ayaz Hafiz
669d69c4cf
Clippy
2022-07-12 11:29:11 -04:00
Ayaz Hafiz
e626bac931
Be extremely aggressive about inlining
2022-07-12 11:00:05 -04:00
Ayaz Hafiz
0274691813
Preserve uls_of_var when copying types
2022-07-12 10:58:21 -04:00
Ayaz Hafiz
4707b11727
Clone tag and field names across subs, add a test
2022-07-12 10:47:44 -04:00
Ayaz Hafiz
c915707c83
Get rid of arenas
2022-07-12 10:07:34 -04:00
Ayaz Hafiz
46fdda333f
Use a trait to do copies
2022-07-12 10:02:11 -04:00
Ayaz Hafiz
c3b2e9aa97
Add copy expr test
2022-07-12 09:30:51 -04:00
Ayaz Hafiz
7031d26299
mono copy: copy all vars in deep expr
2022-07-12 09:18:43 -04:00
Richard Feldman
c61795197f
Merge pull request #3478 from rtfeldman/toplevel-expect-captures
...
toplevel expect captures
2022-07-12 08:58:19 -04:00
Richard Feldman
f5fac8230f
Prune some unused dependencies
2022-07-11 20:51:41 -04:00
Folkert de Vries
e8c51d376b
Merge pull request #3473 from rtfeldman/wasm-test-wasm3
...
Use a faster Wasm runtime for test_gen
2022-07-11 22:50:50 +02:00
Brian Carroll
8533d00f1a
test_gen: place test host .wasm file in Cargo build directory
2022-07-11 20:47:24 +01:00
Richard Feldman
434bcd08fd
s/ends_in_newline/ends_with_newline/g
2022-07-11 13:15:22 -04:00
Richard Feldman
b08d6a0446
Fix edge case with comments and branches
2022-07-11 13:14:35 -04:00
Richard Feldman
b9a314dcd9
Update formatter tests
2022-07-11 13:14:35 -04:00
Richard Feldman
d2e5efadc0
roc format builtins
2022-07-11 13:14:34 -04:00
Richard Feldman
4530d9ebd3
Format multiline branches with newlines before
2022-07-11 13:12:34 -04:00
Folkert de Vries
a209c44e42
Merge pull request #3480 from rtfeldman/types-dead-code
...
Get rid of more dead code due to builtins
2022-07-11 18:44:51 +02:00
Anton-4
b2533d1eca
Merge pull request #3368 from rtfeldman/rust61
...
upgraded to rust 1.61 + clippy fix
2022-07-11 16:12:17 +02:00
Richard Feldman
2e038a045c
Merge pull request #3467 from rtfeldman/remove-parse-def
2022-07-10 23:12:26 -04:00
ayazhafiz
888c480a8b
Move solved_types and builtin_aliases to ast
2022-07-10 19:50:10 -04:00
ayazhafiz
699c4d7fff
Move Solved to roc_solve
2022-07-10 19:42:41 -04:00