Commit graph

101 commits

Author SHA1 Message Date
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
janis e8f6cfb44a
fall-through error in is_numeric, is_id_* wrong register 2025-10-28 16:47:54 +01:00
janis 1886231dcd
return lexeme str slice from find_lexeme function 2025-10-28 16:30:15 +01:00
janis b495114937
fall-through error fix 2025-10-28 16:29:58 +01:00
janis cfc1c8e3b3
more tests for tokeniser 2025-10-28 13:12:27 +01:00
janis 63fbca378b
can tokenise simple tokens 2025-10-28 12:44:08 +01:00
janis 719451b935
reduce warnings, enable edition 2024, fix tokeniser (1/?) 2025-10-28 12:06:24 +01:00
janis f1faac639c
rework tokeniser 2025-10-21 00:36:27 +02:00
janis d47c933c04
fix vec 2025-10-20 23:00:55 +02:00
janis b5c0a41aa4
move panic out, add stack frames, proper rust test 2025-10-20 22:44:27 +02:00
janis 9a235e625a
asdf 2025-10-20 22:32:24 +02:00
janis e9f634bca5
vec get 2025-10-20 17:55:32 +02:00
janis 8bc56220fc
vec drop 2025-10-20 17:53:42 +02:00
janis ac2f3a04b2
add item size to vec struct rather than arg 2025-10-20 17:47:36 +02:00
janis 69bd77c8c0
strchr, memswap, blob vec 2025-10-20 16:35:36 +02:00
janis 669650ffea
strchr 2025-10-20 00:51:48 +02:00
janis 208e05b1e6
convert lib.asm to sysv cc 2025-10-20 00:43:03 +02:00
janis 81417de6ca
asdf 2025-10-18 10:59:30 +02:00
janis 8a0c822533
can tokenise stuff 2025-10-17 18:22:27 +02:00
janis 90061bf50a
stuff 2025-10-17 01:11:51 +02:00
janis 7b43442ba8
overcomplicating things 2025-10-16 23:50:30 +02:00
janis 703a8ba968
read-print file 2025-10-16 21:33:58 +02:00
janis 7b413d540c
rename die to panic, add exit function 2025-10-16 19:16:12 +02:00
janis 7bc428caf3
exit() instead of ret in main 2025-10-16 19:14:28 +02:00
janis 3d4cfc8e2b
trying not to segment 2025-10-16 19:11:48 +02:00
janis 6214d15888
initial asm file 2025-10-16 18:11:05 +02:00