Commit Graph

69 Commits

Author SHA1 Message Date
ec21a1d05e oopsie hehe 2022-09-17 01:01:30 -04:00
b260d9424a Introducing new enum syntax 2022-09-17 00:58:08 -04:00
2f26e63354 Reinstated those two lines in the data section test 2022-09-16 23:01:32 -04:00
2a1e8c5df7 Implemented parsing bit width 2022-09-16 22:48:24 -04:00
302ff76a8a Rewrote type section test case 2022-09-16 22:45:08 -04:00
e123e97357 Type attributes can have whitespace before them
By type attributes I mean things like :mut :N :<defaultValue>.
After the colon and before the attribute, whitespace is now
permitted. This makes syntax like

data ro nIntegerArrayInitialized:Int:16:mut:
	<3948 293 293049 948 912
	340 0 2304 0 4785 92>

possible.
2022-09-16 22:22:07 -04:00
eaeba12fbe Removed old things from tree-tostring.go 2022-09-15 15:10:52 -04:00
558542127d Among impostor 2022-09-14 15:16:56 -04:00
42a51477ec Added ( and ) tokens 2022-09-13 17:04:43 -04:00
0af08a4d24 Merged objt and type test cases 2022-09-11 15:35:07 -04:00
362b904900 Rewrote test cases with new syntax 2022-09-11 10:52:53 -04:00
7e972e2132 Syntax tree now stores map of require names -> full paths 2022-09-07 17:12:46 -04:00
d4d7c03830 Function output default values are skimmed over 2022-09-05 15:13:27 -04:00
cc1eaa2c11 Add test case for skimming 2022-09-05 14:52:37 -04:00
2295e3bd32 Data sections can now be marked as external 2022-09-05 14:09:47 -04:00
51def46d91 Updated other test cases and examples to match 2022-09-05 11:35:32 -04:00
0b71ab8787 Added test case with multiple type qualifiers 2022-09-05 11:23:16 -04:00
7731fa86a1 Updated test case for new syntax 2022-09-05 11:12:55 -04:00
1274eeb400 Parser now uses new equal signs 2022-09-03 20:32:27 -04:00
cc14292c63 Added equals assignment operator
The set phrase will be removed and just replaced with a single
equals sign. Double equals will be used for comparison. This will
be much easier to understand.
2022-09-03 20:23:27 -04:00
6446cbfafc The test case was wrong 2022-09-03 20:07:25 -04:00
ac548bf438 loc will be the referencing "operator" 2022-09-03 16:24:13 -04:00
7bde082f36 Switch cases are parsed now 2022-09-03 15:38:57 -04:00
1f68f252e0 Added defer statement to control flow test 2022-09-03 00:17:50 -04:00
32e5b0ce98 Fixed parser test case
The octal literals with 9 in them were causing the parser to fail.
2022-09-02 01:40:33 -04:00
ed44795664 Lexer now rejects strange chars in integer literals 2022-09-02 01:37:58 -04:00
09706ef7f3 Commented out some things in func test case
Apparently, cBasicPhrases is somehow causing the mysterious nil
tree bug. this will be investigated further soon.
2022-09-01 21:38:50 -04:00
d9e58cee0c Uncommented things in func section test 2022-09-01 20:54:10 -04:00
Sasha Koshka
453a596587 Added test case for new tokens 2022-08-25 23:17:42 -04:00
6bbee2e13b Created comprehensive test case 2022-08-25 15:46:35 -04:00
Sasha Koshka
9fd285920b Began writing test case for function sections 2022-08-25 13:31:09 -04:00
Sasha Koshka
9232432c35 Implemented thos bad boys 2022-08-25 00:05:40 -04:00
Sasha Koshka
b536b01eeb Added new tokens to test case 2022-08-25 00:01:28 -04:00
Sasha Koshka
3dd2ea83d3 I forgot the 2022-08-24 23:55:34 -04:00
Sasha Koshka
fa1d8efe55 Its just as I feared. Identifier parsing doesn't work! 2022-08-24 23:50:16 -04:00
e316eb7791 Changed bit field syntax to use an & symbol 2022-08-24 18:37:44 -04:00
05aa0e6177 Added bitfields to object section test case 2022-08-24 18:23:11 -04:00
441b036a1c Updated test case to reflect previous commit 2022-08-23 14:07:56 -04:00
Sasha Koshka
f95c7e0b1c Basic test file for interface section 2022-08-23 10:55:50 -04:00
Sasha Koshka
c4f763af5b Added test case for enum section 2022-08-21 02:48:36 -04:00
Sasha Koshka
c847d2187d Fixed the object section test 2022-08-20 13:25:43 -04:00
Sasha Koshka
da6d587a48 Split test cases between blind types and objt types 2022-08-20 02:42:52 -04:00
Sasha Koshka
9dce9b2f75 Fixed test formatting 2022-08-19 03:05:25 -04:00
Sasha Koshka
bc9beb0317 Created test case for type section 2022-08-18 16:56:42 -04:00
Sasha Koshka
a548dcc585 Changed permission codes to only determine private/public/readonly
Changing permissions within the module was redundant and would have just
conflicted with the :mut type qualifier. This is easier to understand.
2022-08-18 12:09:17 -04:00
Sasha Koshka
85996b2554 Added more error test cases 2022-08-18 01:47:35 -04:00
Sasha Koshka
9e66305001 Created test to check lexer errors 2022-08-18 01:25:02 -04:00
Sasha Koshka
d78f150336 Removed data test case initializing pointers with phrases
Phrase parsing is out of scope for this branch. It will be implemented at the
same time as function parsing.
2022-08-17 14:16:54 -04:00
Sasha Koshka
bb2948d397 Added parsing array initialization values 2022-08-16 21:31:23 -04:00
Sasha Koshka
9e01eef45b Added elipsis token 2022-08-16 20:24:27 -04:00