Richard Feldman
ce9e7a91f6
Clean up some Cargo.toml files
2020-05-03 21:37:59 -04:00
Richard Feldman
07001131b2
Add can::builtins
2020-04-25 06:30:01 -04:00
Richard Feldman
1c1fee7e31
Trim trailing space off pretty_assertions dep
2020-04-16 19:24:24 -04:00
Folkert
63bc923b37
remove panic
2020-04-13 22:54:24 +02:00
Folkert
f6af66f342
record, tag, alias errors
...
- duplicate fields and tags are reported
- circular aliases are reported
2020-04-13 20:53:16 +02:00
Folkert
7632a4b484
highlight code snippets better
2020-04-12 20:59:16 +02:00
Folkert
d15bd07bf4
de-alias when diffing with a non-alias
...
When one of the types in a comparison is an alias, elm does not de-alias it.
That is really annoying if e.g. the alias is of a record and you used an invalid field: the field suggestion error does not kick in
2020-04-11 23:57:00 +02:00
Folkert
2811f978a4
make a Index data type
2020-04-11 20:40:25 +02:00
Folkert
ab19529077
record update hints
2020-04-11 14:55:12 +02:00
Folkert
c2ad8dfe7e
use pretty.rs more
2020-04-09 23:27:11 +02:00
Folkert
7e4e3c93d5
cleanup
2020-04-07 21:12:56 +02:00
Folkert
7f999a06f3
add When pattern errors
2020-04-07 18:06:00 +02:00
Folkert
67f8f2e943
improve tag union errors
2020-04-06 21:40:54 +02:00
Folkert
2d6e47b8a6
test for record diff
2020-04-06 21:40:54 +02:00
Folkert
7818e84316
convert ErrorType to ReportText
2020-04-06 21:40:54 +02:00
Folkert
f8b3d5dce7
elem_in_list
2020-04-05 00:15:38 +02:00
Folkert
a2a79925b3
complete add_category
2020-04-03 16:10:41 +02:00
Richard Feldman
98f4f46248
Special-case 2-branch if/else errors
2020-04-03 01:51:42 -04:00
Folkert
1981a7e467
refactor and clean up
2020-04-03 01:20:35 +02:00
Folkert
604dbf7215
Merge remote-tracking branch 'origin/trunk' into precedence-error
2020-04-02 23:29:15 +02:00
Folkert
2e822e739f
report circular type error
2020-04-02 23:13:35 +02:00
Folkert
8642cfeae0
report first type error
2020-04-01 23:37:05 +02:00
Folkert
106a3646bf
add category to Eq constraint
2020-04-01 20:09:10 +02:00
Folkert
14ad793bd7
hook up TypeError
2020-04-01 16:28:10 +02:00
Folkert
46062439b5
remove label from Struct layout
2020-03-23 17:55:02 +01:00
Folkert
c6fa301d8b
fix bug in is_unique
2020-03-22 13:22:52 +01:00
Folkert
920928399a
type inference for pattern guards
2020-03-21 00:39:52 +01:00
Folkert
b6ca5e2fb9
allow Attr wrapper in tag union ext
...
this should not happen, but we sometimes call this function on the whole tag, which then may be Attr-wrapped
2020-03-17 15:27:05 +01:00
Folkert
5fca5fe631
collect tags from aliases
2020-03-17 00:36:58 +01:00
Folkert
a3b1ec3be0
pull tags/fields from the ext_var during unification
2020-03-13 15:12:32 +01:00
Folkert
4da01c720e
monomorphize the ext_var of records/tag unions
2020-03-12 21:32:58 +01:00
Folkert
3dbaac210a
add snapshot functions to Subs
2020-03-12 02:38:38 +01:00
Folkert
a037173cdb
complete the Content hashing
2020-03-11 23:00:44 +01:00
Folkert
5c9cf0ef37
add type hash function
2020-03-11 22:01:56 +01:00
Folkert
fb8e8570bc
Merge remote-tracking branch 'origin/trunk' into num
2020-03-11 14:30:50 +01:00
Richard Feldman
3ecbe0325c
Plain number literals (e.g. 5
) are now Num *
2020-03-10 22:27:13 -04:00
Folkert
62f34c41cc
hardcode Bool alias
...
previously it would use the tag union, which would result in slightly worse error messages down the line
2020-03-10 15:21:39 +01:00
Folkert
7fea957979
hardcode Bool
2020-03-10 14:50:35 +01:00
Richard Feldman
72ecb231f1
clip clop clip clop clippy
2020-03-07 23:11:42 -05:00
Richard Feldman
db4ef45708
Upgrade to List.set_in_place when appropriate
2020-03-07 12:43:24 -05:00
Folkert
bca43a2564
improve is_unique
2020-03-07 12:43:24 -05:00
Richard Feldman
a092f59b0f
First pass at is_unique
2020-03-07 12:43:24 -05:00
Folkert
94f2b6b6f6
switch back to Apply where possible
2020-03-07 00:50:38 +01:00
Folkert
eb7d9d98e6
hardcode variables for empty records and tag unions
2020-03-07 00:25:16 +01:00
Folkert
12a819e762
extract tags from the ext variable
...
turns out this is always needed. I also removed the explicit check for an empty tag union: there could still be tags in the ext even if the union itself seems empty.
seems weird to optimize for the empty case because it'll be very rare in practice
2020-03-06 13:45:59 +01:00
Richard Feldman
3b26a982f0
Move pretty_print_types into types crate
2020-03-06 02:01:05 -05:00
Richard Feldman
908e485fca
Move constrain and its deps into their own crates
2020-03-06 01:43:39 -05:00
Richard Feldman
8ef2ae3de7
clippy clip clip
2020-03-05 23:03:29 -05:00
Richard Feldman
3b6ed43126
Extract can/ into its own crate, plus its deps
2020-03-05 23:01:32 -05:00