Commit graph

36 commits

Author SHA1 Message Date
42698bb219 Work on error messages
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-18 09:59:36 +01:00
7f7bf5c98d Start fixing error outputs
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-16 11:22:29 +01:00
058e6be516 Move AstFailure to error module
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-16 09:44:38 +01:00
4c8938e4ff Add documentation
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-16 09:41:16 +01:00
ffd9baf90f Add deep access
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-15 14:31:46 +01:00
4f770c1f24 Abstract infix macro
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-15 13:48:51 +01:00
a590839b21 Add parsing of dot operator
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-15 13:39:08 +01:00
9b87e7089f Parse conditional access
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-15 12:34:35 +01:00
beac224f5b Add lexing of '?'
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-15 12:11:30 +01:00
705c6a8818 Rename ast to parser
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-15 11:33:40 +01:00
f87f4a0262 Rename parser to lexer
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-15 11:31:40 +01:00
70f616d60c Add tokenization of function pieces
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-13 08:38:58 +01:00
722e61cc85 Add operator precedence and refactor expressions
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-12 17:53:11 +01:00
437584c844 Add parsing of more logical combinators
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-12 17:36:36 +01:00
8c02dbd672 Parse and ast math expressions
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-12 11:25:55 +01:00
8cc8488de4 Add parsing of literal numbers
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-12 10:43:45 +01:00
09ae91c393 Add parsing of operations
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-12 10:04:15 +01:00
018ba3cd2c Add for loop parsing
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-11 10:34:17 +01:00
462355b6f2 Fix invalid indices when content is not long enough
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-09 15:20:07 +01:00
587cfdea53 Add parsing of whitespace trimming
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-09 13:14:58 +01:00
08b480705b Also emit TokenKind in debug
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-08 20:05:54 +01:00
13eb4ca1d0 Add else parsing
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-08 20:02:33 +01:00
8afc2d1bde Add parsing for conditionals (cont.)
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-08 15:06:29 +01:00
974086a877 Add parsing of simple conditionals
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-07 11:49:40 +01:00
ffb5c92b89 Rename snapshot file as well
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-07 11:23:14 +01:00
d2e0405033 Rename library to nomo
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-07 10:07:47 +01:00
d691fb9198 Add parsing of if/end
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-06 20:53:57 +01:00
10a33dc935 Allow identifiers to contain underscore
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-06 15:45:39 +01:00
4470af3926 Add proper impl for templating
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-06 12:56:16 +01:00
1ee7611981 Use custom Arc backed input
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-06 12:42:11 +01:00
1ea15f0e49 Add first working pipeline of parse -> ast -> instr -> render
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-06 11:03:48 +01:00
f5050e369e Add ast parsing
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-06 08:25:17 +01:00
c5a2179b9e Capture whitespace around interpolations
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-05 20:34:10 +01:00
4177649202 Use resume_after_cut instead of resume_after to simplify code
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-05 19:58:19 +01:00
b07bef7904 Properly recover from errors
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-05 17:33:19 +01:00
f4e8137e17 Add initial parsing
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-05 08:45:42 +01:00