dsl: testing expression handling
Some checks are pending
/ build (push) Waiting to run

This commit is contained in:
🪞👃🪞 2025-07-31 22:33:59 +03:00
parent 9e0b7be9a9
commit d2095111f1
4 changed files with 247 additions and 87 deletions

View file

@ -92,3 +92,23 @@ or configuration statements, and look like this:
* [ ] const parse
* [ ] live reload
* [ ] serialize modified code back to original indentation
## implementation notes
### `DslExp` trait behavior
this is the trait which differentiates "a thing" from
"a thing that is many things".
|source |key|exp |head |tail |
|-----------------------|---|-------|---------|---------------|
|`a` |`a`|E0 |`a` |none |
|`(a)` |E1 |`a` |`a` |none |
|`a b c` |E2 |E0 |`a` |`b c` |
|`(a b c)` |E0 |`a b c`|`(a b c)`|none |
|`(a b c) d e f` |E0 |E2 |`(a b c)`|`d e f` |
|`a (b c d) e f` |E2 |E0 |`a` |`(b c d) e f` |
* **E0**: Expected `(`
* **E1**: Unexpected `(`
* **E2**: Trailing characters