Joshua Warner
5d5b71a083
Refactor several parse methods to use more combinators
2022-11-05 09:44:08 -04:00
Richard Feldman
c03dc17ab4
Merge remote-tracking branch 'origin/main' into repl
2022-11-05 01:04:44 -04:00
Joshua Warner
060a69aed2
Fix CI
2022-11-04 09:47:55 -04:00
Richard Feldman
c4baf32e51
Merge pull request #4463 from roc-lang/clippy-1.65
...
clippy 1.65
2022-11-03 20:10:53 -07:00
Joshua Warner
311193fe70
Fix one_of error state handling
2022-11-03 20:54:08 -04:00
Joshua Warner
b2bb38220b
Make parse tests for reporting tests
2022-11-03 17:24:02 -04:00
Joshua Warner
469e1dc9e3
Fix --features=parse_debug_trace
2022-11-03 17:23:52 -04:00
Folkert
134de80150
various updates
2022-11-03 17:18:27 +01:00
Folkert
66a1ba00eb
1.65 clippy fixes
2022-11-03 16:20:37 +01:00
Richard Feldman
220c362671
Merge remote-tracking branch 'origin/main' into repl
2022-10-31 20:49:28 -04:00
Joshua Warner
07be8ec000
Refactor Parser trait to pass min_indent
...
This removes the need to explicitly pass thru min_indent when using the parser combinators.
My ultimate goal here is to evolve the current parser closer toward a purely combinator-based parser,
at which point we can more easily transition smoothly to a formal(ish) grammar, or expand the meanings of combinators
to include things like:
* Incremental (re)parsing
* Unified parsing and formatting code
* Better error recovery
* Using the main parser directly for syntax highlighting
2022-10-31 13:31:47 -07:00
Richard Feldman
0c8f6a0a72
Fix annotated defs in repl
2022-10-30 13:34:38 -04:00
Richard Feldman
e38ae00c65
Expose macros for joining up AnnotatedBody nodes
2022-10-30 12:36:10 -04:00
Richard Feldman
99f4d99771
Revert "Attempt a refactor, but run into lifetime issues"
...
This reverts commit 4a9b44aaaf
.
2022-10-30 07:22:32 -04:00
Richard Feldman
4a9b44aaaf
Attempt a refactor, but run into lifetime issues
2022-10-30 07:22:31 -04:00
Richard Feldman
e0e25a48bf
Add comment_str
2022-10-30 07:17:10 -04:00
Richard Feldman
9f498add60
Reorganize some REPL modules
2022-10-27 18:47:27 -04:00
Richard Feldman
67a8bbd6a2
Merge pull request #4414 from roc-lang/i4412
...
Parse and format list patterns
2022-10-26 19:49:12 -07:00
Richard Feldman
c894d522c3
Drop some commented-out lines
...
Signed-off-by: Richard Feldman <oss@rtfeldman.com>
2022-10-26 22:48:37 -04:00
Ayaz Hafiz
89867a4dc5
Add parsing error reporting for list patterns
2022-10-26 18:05:52 -05:00
Ayaz Hafiz
4d35ab9957
Parse list patterns
2022-10-26 17:03:22 -05:00
Richard Feldman
40498d71c3
clip clap clorp
2022-10-26 16:11:30 -04:00
Richard Feldman
c748d88c0d
Fix typo in docs
2022-10-26 13:44:13 -04:00
Richard Feldman
785e0d5ef6
Revise things to be more concise
2022-10-26 13:44:13 -04:00
Richard Feldman
9b19ed8b3b
Refactor out Next
2022-10-26 13:44:12 -04:00
Richard Feldman
a1104ce5fa
Refactor out Next::Fixup
2022-10-26 13:44:12 -04:00
Richard Feldman
107f37219f
Document Fixup
2022-10-26 13:44:12 -04:00
Richard Feldman
131c4b2bb1
Extract parse_single_def
2022-10-26 13:44:12 -04:00
Ayaz Hafiz
231a72f2ee
Insert first ability correctly in the parser
2022-10-24 13:56:07 -05:00
Ayaz Hafiz
97dbac1631
Add tests for multiple abilities bound to a variable
2022-10-24 13:56:07 -05:00
Ayaz Hafiz
548a235c25
Support parsing multiple abilities in a clause
2022-10-24 13:56:06 -05:00
Joshua Warner
e39a385f5f
Allow parsing when
cases with python-like indentation
2022-10-18 19:13:20 -07:00
Joshua Warner
4d4c0d9483
Don't allow closures to gobble unindented expr lines following them
2022-10-08 11:05:05 -07:00
Joshua Warner
ab4e03b05d
Rename Lambda -> Closure for consistency
2022-10-08 11:05:05 -07:00
Ayaz Hafiz
f6c21cc933
Correctly format abilities with comments
2022-10-04 10:03:51 -05:00
Ayaz Hafiz
e1aadbc6ef
Add clone comment
2022-10-02 21:41:10 -05:00
Ayaz Hafiz
a6cf21dcf9
Revert "Lints"
...
This reverts commit f7e85b5295a44217bde9b6b83d188d84ee863d0c.
2022-10-02 21:39:48 -05:00
Ayaz Hafiz
f3689b1146
Fmt
2022-10-02 21:38:04 -05:00
Ayaz Hafiz
852fd0a127
Lints
2022-10-02 21:38:04 -05:00
Ayaz Hafiz
0cc9ea4b05
Detect and report module names that don't match what they are used as
...
Prior to this commit, if you had a module structure like
```
| - A.roc
| - Dep
| - B.roc
```
where `B.roc` was defined as
```
interface B exposes [] imports []
```
and `A.roc` was defined as
```
interface A exposes [] imports [Dep.B]
```
The compiler would hang on you. The reason is that even though we expect
`B` to be named `Dep.B` relative to `A`, that would not be enforced.
With this patch, we now enforce such naming schemes - a module must have
the namespaced name it is referenced by. Currently, we determine the
expected namespaced name by looking at how transitive dependencies of the
root module reference the module. In the future, once we have a package
ecosystem and a solid idea of "package roots", we can use the "package
root" to determine how a module should be named.
Closes #4094
2022-10-02 21:38:03 -05:00
Ayaz Hafiz
c67be21636
Check that module names correspond to the paths they are defined in
...
Closes #3440
Closes #4050
2022-10-02 21:38:02 -05:00
Ayaz Hafiz
d88452e3d2
Update parse tests
2022-09-20 14:45:52 -05:00
kilianv
610c529ba8
Update roc files to use new opaque bools
2022-09-20 14:42:04 -05:00
dependabot[bot]
0079048944
Bump bumpalo from 3.10.0 to 3.11.0
...
Bumps [bumpalo](https://github.com/fitzgen/bumpalo ) from 3.10.0 to 3.11.0.
- [Release notes](https://github.com/fitzgen/bumpalo/releases )
- [Changelog](https://github.com/fitzgen/bumpalo/blob/main/CHANGELOG.md )
- [Commits](https://github.com/fitzgen/bumpalo/compare/3.10.0...3.11.0 )
---
updated-dependencies:
- dependency-name: bumpalo
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-12 21:08:56 +00:00
dependabot[bot]
d1c406812f
Bump pretty_assertions from 1.2.1 to 1.3.0
...
Bumps [pretty_assertions](https://github.com/rust-pretty-assertions/rust-pretty-assertions ) from 1.2.1 to 1.3.0.
- [Release notes](https://github.com/rust-pretty-assertions/rust-pretty-assertions/releases )
- [Changelog](https://github.com/rust-pretty-assertions/rust-pretty-assertions/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-pretty-assertions/rust-pretty-assertions/compare/v1.2.1...v1.3.0 )
---
updated-dependencies:
- dependency-name: pretty_assertions
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-09-12 05:28:00 +00:00
Jan Van Bruggen
30fec8eacd
Add missing h1
s
2022-09-09 01:12:32 -06:00
Jan Van Bruggen
8bbfd68621
Add language to all fenced code blocks
...
See https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md#md040
2022-09-09 01:12:31 -06:00
Richard Feldman
3ca9202e3b
Merge pull request #3834 from roc-lang/rust-1.63-clippy
...
rust 1.63 clippy
2022-08-27 21:15:36 -04:00
Folkert
a22e04361c
Merge remote-tracking branch 'origin/main' into expect-fx-codegen
2022-08-23 16:28:21 +02:00
Folkert
6aa168ee0b
more various clippy fixes
2022-08-21 16:43:58 +02:00