Commit graph

552 commits

Author SHA1 Message Date
ayazhafiz
2cd5bf8c03 Parse "as" aliases into tag/args rather than arbitrary annotations 2021-12-26 08:44:09 -06:00
Joshua Warner
8b58d5cbc7 Switch to always encoding package names / paths as strings
This will simplify parsing and make it possible to have a uniform lexer for the language. Previously unquoted package names were allowed to include '-'s, which aren't valid identifiers.

In the future, we'll distinguish local paths from packages in the package-manager by looking for a ".roc" suffix, which should only be present in local paths.
2021-12-23 20:11:14 -08:00
Joshua Warner
22e2545fd6 format 2021-12-22 20:46:42 -08:00
Joshua Warner
f170509bf1 rename col -> column 2021-12-22 20:37:40 -08:00
Joshua Warner
4d7070ce3b Always combine line,column into Position 2021-12-22 20:32:46 -08:00
Joshua Warner
f19220473a Rename Located -> Loc 2021-12-22 19:18:22 -08:00
Richard Feldman
3ffe5768e1
Merge pull request #2239 from rtfeldman/joshuawarner32/pipeline-format-fail
Fix formatting of pipelined call exprs
2021-12-20 15:46:23 -05:00
Richard Feldman
5aa67d4244
Merge pull request #2231 from rtfeldman/joshuawarner32/record_func_type_decl
Allow function types in records
2021-12-20 11:45:27 -05:00
Joshua Warner
61cdbd1531 Fix formatting of pipelined call exprs 2021-12-18 16:36:51 -08:00
Joshua Warner
96e8916594 Refactor BadOperator to take a &str rather than &[u8] 2021-12-18 14:42:48 -08:00
Joshua Warner
efa54287f1 Return the original error if there's an unexpected trailing comma 2021-12-18 13:26:59 -08:00
Joshua Warner
7b9c8ed939 Allow function types in records 2021-12-17 15:09:15 -08:00
Joshua Warner
5a236899fa Add some optional debug tracing to the parser 2021-12-17 15:09:15 -08:00
Joshua Warner
2e85c19101 Require explicit cloning of State 2021-12-16 17:13:58 -08:00
Joshua Warner
49818343dd extract state 2021-12-16 17:13:53 -08:00
Joshua Warner
0786e554c6 Extract spacing from parse::header::* items into explicit Spaced enum 2021-12-14 19:53:20 -08:00
Jan Van Bruggen
d03a51c75b Rename base package to pf everywhere, to match tutorial 2021-12-12 05:57:39 -07:00
Anton-4
8c82025721 Merge branch 'trunk' of github.com:rtfeldman/roc into editor-comments 2021-12-09 13:55:44 +01:00
Anton-4
9a2187ecd2 fixed newline issues 2021-12-09 13:55:18 +01:00
Joshua Warner
49228c8100 Refactor format_sequence to be a function 2021-12-07 18:53:47 -08:00
Joshua Warner
f3dd9e411f Keep trailing comments at the end of a file 2021-12-05 12:19:58 -08:00
Anton-4
b3420d793f removed dbg, disabled comment_after test 2021-12-04 15:22:45 +01:00
Anton-4
d6a27d1e53 Merge branch 'trunk' of github.com:rtfeldman/roc into editor-comments 2021-12-04 11:00:03 +01:00
Chelsea Troy
e57a539a66 cargo fmt AGAIN 2021-12-01 23:59:58 -06:00
Chelsea Troy
b65a69f07e Appeasing the clippy 2021-12-01 18:56:15 -06:00
Anton-4
5bd776f972 debugging inline comment bug 2021-12-01 16:57:28 +01:00
Chelsea Troy
6cf755ad8d Resolve a bunnnch of merge conflicts 2021-11-29 23:14:29 -06:00
Joshua Warner
f25323e8a7 Implement platform header formatting 2021-11-25 08:19:31 -08:00
Joshua Warner
24f7692a73 Implement [more] app header formatting
Also, refactor out a utility method to format a Collection. This method can currently
replace some of the formatting done in module headers - but the goal is eventually
to be able to replace the code in fmt_list as well, such that there is 'one true way'
to format collections.
2021-11-23 12:19:43 -08:00
ayazhafiz
8a60162a1e Rename roc_module::operator -> roc_module::called_via
A bit of a nit, but this file is now more general than just keeping
track of operator methods.
2021-11-18 20:20:33 -05:00
Joshua Warner
7f5b873357 Parse _ in type annotations as an 'Inferred' type 2021-11-17 17:59:40 -08:00
Joshua Warner
6fab6e20f5 Fix clippy 2021-11-14 10:40:09 -08:00
Joshua Warner
fb960d98b8 Remove unused macros 2021-11-14 10:14:53 -08:00
Joshua Warner
6c82b1789a Convert effects to collection_trailing_sep_e 2021-11-14 10:14:53 -08:00
Joshua Warner
8c8bc910fd Convert exposes_modules to collection_trailing_sep_e 2021-11-14 10:14:53 -08:00
Joshua Warner
c4e70ca7aa Convert exposes_values to ccollection_trailing_sep_e 2021-11-14 10:14:53 -08:00
Joshua Warner
71cc8d4c4b Convert requires_rigids to collection_trailing_sep_e 2021-11-14 10:14:53 -08:00
Joshua Warner
df89fe7dd6 Make provides a Collection 2021-11-14 10:14:53 -08:00
Joshua Warner
d67b6c50b1 Allow trailing comments in provides decl 2021-11-14 10:14:53 -08:00
Joshua Warner
23c75d2699 Allow trailing comments in imports decl 2021-11-14 10:14:53 -08:00
Joshua Warner
c10f403c94 Allow trailing comments in exposes decl 2021-11-14 10:14:52 -08:00
Joshua Warner
3ff3695758 Add a manual Debug formatter for Collection to make debugging nicer 2021-11-13 16:24:35 -08:00
Joshua Warner
9bf1674946 Shrink Collection to make parse_expr_size test pass 2021-11-13 16:17:44 -08:00
Joshua Warner
1fabc64fdf Use Collection in Expr::TagUnion 2021-11-13 07:38:39 -08:00
Joshua Warner
d63405d824 Make Expr::List use a Collection 2021-11-13 07:38:11 -08:00
Joshua Warner
a4ca6a31a6 Use Collection in Expr::Record and related places 2021-11-13 07:36:05 -08:00
Joshua Warner
9a74ca441d Name all "error" enums in the parser starting with E 2021-11-12 08:38:29 -08:00
Joshua Warner
8a54bb6f6b fmt 2021-11-11 19:15:07 -08:00
Joshua Warner
4df0880e7a Commit local changes (whoops!) 2021-11-11 18:57:26 -08:00
Joshua Warner
04d4a8ca79 Introduce Collection as a general abstraction in the ast 2021-11-11 14:49:33 -08:00