Commit graph

161 commits

Author SHA1 Message Date
Elias Mulhall
335265e15c Parse dbg in expression position
Add dbg parsing logic everywhere we parse normal expressions. Add
special case to statement parsing to handle a series of statements
ending in a `dbg` in expression position.

Rename existing `dbg_help` function to `dbg_stmt_help`, similarly rename
syntax snapshot test files to specify which ones are for dbg statements.
2024-08-28 11:53:44 -04:00
Elias Mulhall
43d932df3b Update parser AST to support dbg as both a statment and expression
Make `Expr::Dbg` node specific to dbg expressions, add `Expr::DbgStmt`
for dbg statements. Debug expressions don't have a continuation branch.
Support formatting both kinds of `Dbg` nodes.
2024-08-28 11:53:44 -04:00
Anton-4
44b8abdead
update to basic-cli 0.14 2024-08-23 15:50:05 +02:00
Joshua Warner
6b6968632f
Merge branch 'main' into format-invisible-chars 2024-08-17 10:22:40 -07:00
Aidan
ade416dbb4
add test for blank chars in multiline string 2024-08-17 10:28:15 -04:00
Aidan
1551d8fb0d
preserve multiline string trailing whitespace 2024-08-17 09:57:59 -04:00
Aidan
7be537dd55
format invisible characters in strings to unicode escapes 2024-08-17 01:16:58 -04:00
Sam Mohr
b1a972ab21
Implement &foo record updater syntax sugar 2024-08-16 01:41:59 -07:00
Sam Mohr
3bc5c1dc12
Combine ! and ? into single TrySuffix AST node 2024-08-14 22:14:08 -07:00
Luke Boswell
5c43bd2cee
Merge remote-tracking branch 'remote/main' into rebuild-platform 2024-08-14 09:12:12 +10:00
Joshua Warner
2d9aa00771
Rename RemoveSpaces->Normalize 2024-08-12 23:05:55 -07:00
Agus Zubiaga
b451e69b20
Merge branch 'main' into typecheck-module-params 2024-08-12 22:27:16 -03:00
Joshua Warner
0abea91796
Rename Full -> FullAst 2024-08-10 16:06:01 -07:00
Joshua Warner
d25c048d48
Move Full from fmt to parse and reorganize confusingly-named Module ast type 2024-08-07 23:01:49 -07:00
Agus Zubiaga
762799052e
Merge branch 'main' into typecheck-module-params 2024-08-07 18:55:33 -03:00
Sam Mohr
00bc699642
Add syntax tests for record builder 2024-08-06 22:49:35 -07:00
Joshua Warner
ca037c5d0e
Merge branch 'main' into fix-deprecated-interpolated-formatting 2024-07-29 17:40:23 -07:00
Joshua Warner
4e8b36adbf
Fix auto-fixing of deprecated interpolated strings 2024-07-29 17:37:55 -07:00
Aidan
ddb58a2cd5 spaces_middle -> lines_between 2024-07-29 13:06:48 -04:00
Aidan
2529fa0721 get rid of extra newlines 2024-07-29 11:10:16 -04:00
Aidan
91fdd903e7 comment -> spaces_middle 2024-07-29 10:04:32 -04:00
Aidan
125990855f Merge branch 'main' into store-all-space-between-annotation-body 2024-07-29 09:46:05 -04:00
Joshua Warner
df915b936d
Feedback: add doc comments, verbiage changes, capitalize Roc, remove a resolved TODO 2024-07-28 14:45:32 -07:00
Joshua Warner
ecb8b12167
Add back working tests 2024-07-27 14:49:56 -07:00
Aidan
2738cd717d cargo fmt 2024-07-27 17:37:28 -04:00
Aidan
62dbe9fb53 update snapshots 2024-07-27 17:19:02 -04:00
Aidan
4e4d9b0d4c add tests 2024-07-27 17:18:58 -04:00
Aidan
7fe052322c update test, fix logic 2024-07-27 16:55:13 -04:00
Joshua Warner
4f32f43048
Implement block / indent based parsing
... and enforce that defs can only occur in blocks (or, inside parenthesized expressions)
2024-07-27 13:34:16 -07:00
Aidan
db1c230f1f add test 2024-07-27 12:50:48 -04:00
Anton-4
3a36d84c45
update to basic-cli 0.12 2024-07-10 20:07:03 +02:00
Sam Mohr
b9a17f4a49
Merge pull request #6883 from smores56/new-builder-syntax
Implement new builder syntax alongside old one
2024-07-08 11:19:01 -07:00
Kiryl Dziamura
2cad4b3e21
update test snapshots 2024-07-08 11:51:29 +02:00
Sam Mohr
618b713ecd
Merge branch 'main' into new-builder-syntax 2024-07-07 18:33:36 -07:00
Sam Mohr
f415017c90
Implement new builder syntax alongside old one 2024-07-07 03:28:59 -07:00
JRI98
25084b18ec
Fix handling of spaces after for as 2024-07-05 09:40:56 +01:00
Agus Zubiaga
90c7745989
Capture import params location for better errors 2024-07-02 11:09:56 -03:00
Agus Zubiaga
7ac72159e9
Parse module params loc and rename to pattern 2024-07-02 04:10:45 -03:00
Kiryl Dziamura
819cfd6035
fix test snapshots 2024-07-01 19:48:00 +02:00
Evan Relf
2a71dccf5e Add tests 2024-06-19 15:19:25 -07:00
Agus Zubiaga
058079e5cd
Update spaces in import_with_params result ast 2024-05-09 08:02:29 -03:00
Agus Zubiaga
b36f88fd13
Format module params in imports 2024-05-09 07:42:10 -03:00
Agus Zubiaga
e5a09b5de6
Parse module params in import 2024-05-09 07:42:07 -03:00
Agus Zubiaga
08825a9e90
Add module with optional param syntax test 2024-05-09 07:27:58 -03:00
Agus Zubiaga
370013b960
Format module header with params 2024-05-09 07:27:58 -03:00
Agus Zubiaga
760ffaf68f
Report module params parse error 2024-05-09 07:27:58 -03:00
Agus Zubiaga
5b1a3c8f03
Parse params in module header
module {echo, read} -> [menu]

Formatter isn't implemented yet.
2024-05-09 07:27:43 -03:00
Agus Zubiaga
2a8ecbba28
Do not drop import parse errors 2024-05-07 22:39:43 -03:00
Agus Zubiaga
8418610dd9
Require newline after import 2024-05-06 22:15:52 -03:00
Agus Zubiaga
22716cea45
Format ingested file with optional annotation 2024-05-05 16:56:49 -03:00