e95916f08d
parser: Handle '#define' directive
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 14:20:07 -05:00
cdb4309006
core: Remove redunant whitespace
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 14:19:45 -05:00
c1a9413ef3
symbol: Make symbol result optional
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 14:19:24 -05:00
49169dda1c
build: Use dep files
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 14:06:39 -05:00
b876cd7edf
lexer: Putback non-identifier token
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 13:28:42 -05:00
8a54fa74ba
lexer: Add scanning of '#define' directive
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 13:27:49 -05:00
52826975e8
core: Add initial symbol table impl
...
For now, symbol lookups are to require a linear scan. We can speed this
up in the future by adding a cache and further down the line considering
a hashmap.
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 13:06:55 -05:00
7f0ba20dd6
parser: Handle parser scanning on pass 1
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 12:40:55 -05:00
5baa20c892
lexer: Add tokens for LPAREN + RPAREN
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 12:36:05 -05:00
44017eb06f
lexer: Add token for ':'
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 12:30:57 -05:00
aa8afdd3d0
lexer: Add token for '.extern'
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-15 12:25:37 -05:00
e928d07bad
lexer: Add token for '.f' [func] directive
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 23:37:32 -05:00
9e4c417657
lexer: Add scanning of identifiers
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 21:30:05 -05:00
38ae3eaa14
core: Add state-wide pointer box field
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 20:40:08 -05:00
eb8a6b84a2
lexer: Add putback buffer
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 16:57:35 -05:00
08f326440f
core: Add pointer box impl
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 16:36:29 -05:00
9fa44ebda9
sample: Add more complete sample files
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 14:02:54 -05:00
9415ab38bc
core: Allocate token buffer
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 02:04:20 -05:00
d09082e879
parser: Add preprocessing stubs
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 02:02:07 -05:00
e8abd2e40e
state: Ensure compiler state is zeroed
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 02:01:51 -05:00
e8d8ef0e48
core: Add token buffer impl
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 00:48:57 -05:00
9e22c31a2f
core: Add initial lexer and parser sources
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 00:11:26 -05:00
f249a12b5a
core: Fix up trace_debug()
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 00:11:05 -05:00
33a1007556
core: Add initial token definitions
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 00:10:46 -05:00
743178e734
core: Add trace helper macros
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-14 00:01:52 -05:00
a8772e7d18
state: Start line numbers at 1
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-13 23:51:07 -05:00
5cbb5dc5dd
docs: Add README.md
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-13 23:49:36 -05:00
ce86a7a2b1
sample: Add sample prototype
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-13 23:45:01 -05:00
e6cc68b8d4
core: Add initial state management
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-13 23:44:48 -05:00
0ddd6d6e23
initial commit
...
Signed-off-by: Ian Moffett <ian@mirocom.org >
2026-02-13 22:48:10 -05:00