Commit graph

23 commits

Author SHA1 Message Date
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
52a63a7066 Add emitting of function calls
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-14 10:52:29 +01:00
cb55c00739 Add function asting
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-13 09:08:06 +01:00
d222573a3a Add evaluating of simple maths
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-12 17:29:45 +01:00
05c095ccfe Add using literal loading
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-12 11:31:08 +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
42e0056374 Add for loop
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-11 18:09:58 +01:00
7182024342 Introduce JumpLabels instead of manually correct jump positions
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-11 15:50:05 +01:00
e64256b65f Add ast parsing for for loops
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-11 14:00:45 +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
e0e84ede1c Add a noop if no whitespace is emitted to have something to jump to
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-09 13:34:27 +01:00
6a233e978f Patch in content of previous block if it exists
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-09 13:08:15 +01:00
ae379df9db Also fix the jump if its the last one
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-09 13:04:16 +01:00
ff308649b9 Add if else if chains
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-09 12:51:49 +01:00
c9314a3d9b Split up if chains more
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-08 21:22:57 +01:00
383f543119 Move EndBlock to own element
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-08 20:10: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
d2e0405033 Rename library to nomo
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-07 10:07:47 +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