janis
|
555f79f00e
|
args are var syms, recursively search parent scopes for symbols
|
2025-10-31 14:53:31 +01:00 |
|
janis
|
d754f8c4b9
|
use trampoline to aign stack for call to rust panic
|
2025-10-31 14:52:59 +01:00 |
|
janis
|
402d295fff
|
block is a scope
|
2025-10-31 14:26:23 +01:00 |
|
janis
|
94d5d9e15b
|
uncommenting test stuff
|
2025-10-31 14:19:21 +01:00 |
|
janis
|
c52b7ab8de
|
block as statement
|
2025-10-31 14:18:49 +01:00 |
|
janis
|
6041ec5102
|
flake: rr
|
2025-10-31 14:18:30 +01:00 |
|
janis
|
1201a6c45a
|
comments, skip empty semis in blocks
|
2025-10-31 13:17:47 +01:00 |
|
janis
|
e79af01925
|
ast: correctly resolves var refs
|
2025-10-31 01:55:04 +01:00 |
|
janis
|
935a3e0a53
|
fix odd initial scope (is now -1usize)
|
2025-10-31 01:20:19 +01:00 |
|
janis
|
cd04a5a4ca
|
try to redo scopes/symtable with passed down scope
|
2025-10-31 01:15:28 +01:00 |
|
janis
|
cd5b714051
|
fix return statement push op
|
2025-10-31 01:11:03 +01:00 |
|
janis
|
a769fece84
|
pass scope in walk_for_each
|
2025-10-31 00:58:27 +01:00 |
|
janis
|
746f82f732
|
try to resolve var refs
|
2025-10-30 23:28:31 +01:00 |
|
janis
|
928be75faf
|
sort symkey by ident before span
|
2025-10-30 23:00:36 +01:00 |
|
janis
|
adb30e983c
|
ast node: span
|
2025-10-30 22:54:14 +01:00 |
|
janis
|
56354237c6
|
build symbol table
|
2025-10-30 22:16:45 +01:00 |
|
janis
|
ad3b0205c2
|
ast walking
|
2025-10-30 21:41:27 +01:00 |
|
janis
|
525b78cdf4
|
pointer type
|
2025-10-30 14:35:49 +01:00 |
|
janis
|
e54313b6a2
|
args, var-ref
|
2025-10-30 13:48:08 +01:00 |
|
janis
|
84e87824ba
|
ast: placeness, assignment, var decl, deref, address-of
|
2025-10-30 01:41:16 +01:00 |
|
janis
|
4491df79a2
|
tokeniser: int/float types
|
2025-10-30 00:35:35 +01:00 |
|
janis
|
2df4d182f9
|
ast: placeness
|
2025-10-30 00:31:51 +01:00 |
|
janis
|
099d774634
|
ast: sub, mul, div
|
2025-10-30 00:22:24 +01:00 |
|
janis
|
838c96f04f
|
update python script, add slash and star tokens
|
2025-10-30 00:11:46 +01:00 |
|
janis
|
886525cf7e
|
support parenthesised expressions
|
2025-10-29 23:48:55 +01:00 |
|
janis
|
c609fe4ec6
|
fix blocks, increase AstNode by 1 qword
|
2025-10-29 23:31:52 +01:00 |
|
janis
|
d2597d2de7
|
can parse basic function
|
2025-10-29 23:17:02 +01:00 |
|
janis
|
8740fea99d
|
fix tokeniser for: void
|
2025-10-29 22:39:27 +01:00 |
|
janis
|
8f4d626968
|
ast tests
|
2025-10-29 22:10:34 +01:00 |
|
janis
|
4e55fa74f4
|
parse structs and functions from asm for rust tests
|
2025-10-29 22:10:14 +01:00 |
|
janis
|
5ae3e17693
|
initial ast
|
2025-10-29 20:39:32 +01:00 |
|
janis
|
bf9d07b462
|
init tokeniser with buffer
|
2025-10-29 20:39:22 +01:00 |
|
janis
|
46053090f4
|
initial parsing
|
2025-10-29 16:21:15 +01:00 |
|
janis
|
39e8d6ae96
|
move defintions out of tokeniser into include file
|
2025-10-29 16:21:01 +01:00 |
|
janis
|
62751f30ab
|
move more stuff to shared test file
|
2025-10-29 16:20:42 +01:00 |
|
janis
|
86bbab90c3
|
modularise test with shared rust structs
add expect/unwrap token methods to tokeniser to aid with parsing
|
2025-10-29 14:00:17 +01:00 |
|
janis
|
cd21ecb782
|
insert sorted, return tuple instead of strange signed index from binary search methods
|
2025-10-29 13:38:39 +01:00 |
|
janis
|
1a4055a69a
|
memmove, vec_insert, vec_binary_search_by working and tested
|
2025-10-29 00:39:23 +01:00 |
|
janis
|
af19946dc4
|
remove size from some vec functions
|
2025-10-28 23:40:00 +01:00 |
|
janis
|
8ac409c677
|
isnert and binary search by
|
2025-10-28 23:39:51 +01:00 |
|
janis
|
fd52df1307
|
more testing and fixes for vec.asm
|
2025-10-28 23:13:02 +01:00 |
|
janis
|
edc4f4e576
|
parsing numbers
|
2025-10-28 21:43:23 +01:00 |
|
janis
|
f60573c06f
|
radix, negative numbers
|
2025-10-28 21:18:00 +01:00 |
|
janis
|
15c2aea16a
|
rewrite int_to_str
|
2025-10-28 21:05:16 +01:00 |
|
janis
|
6a6af53667
|
bump allocator
|
2025-10-28 20:40:25 +01:00 |
|
janis
|
5f63d4303e
|
formatting, strings, comments
|
2025-10-28 18:16:39 +01:00 |
|
janis
|
43a06ad55c
|
test numbers
|
2025-10-28 17:16:28 +01:00 |
|
janis
|
44ee13246e
|
is_number
|
2025-10-28 17:07:05 +01:00 |
|
janis
|
82104cfe0d
|
edge case identifiers, simple function parsing
|
2025-10-28 16:52:17 +01:00 |
|
janis
|
26c37e9dd3
|
test identifiers
|
2025-10-28 16:48:13 +01:00 |
|