83 Commits

Author SHA1 Message Date
Jan
aa212e0958
chore: parse includes and assetlists while parsing zone definition 2025-01-01 18:14:43 +01:00
Jan
239001e6f2
refactor: use std ranges functions where applicable 2024-03-24 20:49:15 +01:00
Jan
132cccb971
refactor: use new line character instead of std::endl 2024-03-24 20:24:22 +01:00
Jan
29a77ff0d8
Correctly name token-paste instead of token-join 2023-12-30 20:05:49 +01:00
Jan
e090e112e6
Implement token pasting 2023-12-30 20:03:35 +01:00
Jan
eece5bb91d
Leave in token joining operator but do stringize forward lookup instead 2023-12-30 18:47:32 +01:00
Jan
edb88273e7
Fix not correct adding input suffix when expanding nested macro 2023-12-30 16:45:06 +01:00
Jan
70d4d77266
Identify token joining operators 2023-12-30 16:41:17 +01:00
Jan
729b72c1d9
Consider triple number sign in macro value combination of ## and # 2023-12-30 14:39:08 +01:00
Jan
799fa37c44
Fix not ignoring whitespace after macro parameter comma 2023-12-30 14:16:49 +01:00
Jan
d3519c2f62
Do not expand macros in strings 2023-12-30 14:01:59 +01:00
Jan
2af58e5cac
Fix broken stringization resolution 2023-12-30 13:52:05 +01:00
Jan
3901ea2d3c
Make DefinesProxy expand nested macros independently to avoid recursion 2023-12-30 11:06:27 +01:00
Jan
e8d029d846
Implement stringization operator 2023-12-27 15:20:15 +01:00
Jan
4ba33f03a0
Support comma in brackets and braces in preprocessor args 2023-12-24 01:01:17 +01:00
Jan
381aaccdf4
Fix unused variables 2023-12-24 00:29:31 +01:00
Jan
3ad2414754
Fix not being able to use two multi-line macros after another 2023-12-24 00:21:36 +01:00
Jan
9c80332147
Update macro expansion logic to accept parameters over multiple lines 2023-12-24 00:05:27 +01:00
Jan
b1d4176b6e
Ensure not closing macro definition parameters throws an error 2023-12-23 13:54:57 +01:00
Jan
12bb974324
Make DefinesProxy use ContinueDefine method instead of duplicated code 2023-12-23 13:54:45 +01:00
Jan
74154653aa
Fix macro parameters not being able to be specified over multiple lines when defining 2023-12-23 13:53:45 +01:00
Clang Format
c858695f0c
Adjust further code formatting 2023-11-19 21:07:28 +00:00
Clang Format
6b4f5d94a8
Reformat code with clang format 2023-11-19 21:07:21 +00:00
Jan
2cd5d05a19 Use escaped strings with simple lexer whenever appropriate 2023-09-23 15:21:09 +02:00
Jan
88bc1c1056 Fix SimpleLexer not being able to read escaped strings 2023-09-23 14:28:59 +02:00
Jan
34cdd46b42 Fix linux compilation 2023-06-18 12:20:55 +02:00
Jan
bba6fd9d4e Fix error in define expression crash 2022-09-07 22:00:18 +02:00
Jan
8f44a022a2 Remove unneeded includes 2022-09-06 22:26:04 +02:00
Jan
a36d1c430a Use SimpleExpressionInterpreter in DefinesStreamProxy and expand defines and defined expressions before parsing 2022-09-06 20:52:52 +02:00
Jan
7cce0e387e Add SimpleExpressionInterpreter that just parses a plain expression 2022-09-06 20:52:23 +02:00
Jan
6702856399 Make skipping lines in defines stream proxy configurable 2022-09-06 17:49:35 +02:00
Jan
f574204e61 Skip until first non empty line for templater 2022-09-05 23:51:09 +02:00
Jan
d0155d426a Skip defines stream proxy empty lines 2022-09-05 23:30:06 +02:00
Jan
1464329245 Add raw templater 2022-09-05 23:25:11 +02:00
Jan
4ef38264c8 Rename defines if directive parsing to defines directive parsing 2022-09-05 20:17:31 +02:00
Jan
db60287a7b Apply statemaps to materials 2022-08-20 19:23:49 +02:00
Jan
886bcfeaf8 Add non static evaluation for simple expressions 2022-08-13 14:13:11 +02:00
Jan
1d798647c3 Fix not reading hex numbers with integer only lexing for SimpleLexer 2022-03-30 19:25:07 +02:00
Jan
a092f76ec9 Add option to not parse floating point numbers when using SimpleLexer 2022-03-30 19:07:54 +02:00
Jan
91cfb2e8dd Move AbstractScopeSequenceHolder to Parse and make it a template class to be reusable 2022-01-18 22:55:25 +01:00
Jan
245a2ed642 Add equals operation to simpleexpressionvalue to check if an expression is the same as another one 2021-12-27 14:15:44 +01:00
Jan
cc88fb0a5a Log menu parsing errors in stderr 2021-12-27 11:32:47 +01:00
Jan
988620e23d Menu conversion base 2021-12-05 16:23:25 +01:00
Jan
4b7a78100d Make defines stream proxy able to accept comma within parameter values that are in parenthesis 2021-12-02 22:19:48 +01:00
Jan
f5ed7880b0 Fix defines proxy not being able to process parameters with underscores 2021-12-01 23:19:20 +01:00
Jan
74988af30b Add expression numerics and int to multiple sequences for menu items 2021-11-28 20:20:28 +01:00
Jan
8e7cd0140c Fix comment removing defines proxy not properly removing multiple comments per line 2021-11-28 19:29:50 +01:00
Jan
782b05a60b Fix defines proxy not correctly adding first line to escape line end define 2021-11-28 19:07:30 +01:00
Jan
e94c48338c Make defines proxy accept parameter values that have parenthesis 2021-11-28 15:52:45 +01:00
Jan
e7eb43a955 Correctly parse binary operations that can be interpreted as sign prefixes for numbers 2021-11-28 15:16:43 +01:00