Commit Graph

103 Commits

Author SHA1 Message Date
Sasha Koshka 0b71ab8787 Added test case with multiple type qualifiers 2022-09-05 11:23:16 -04:00
Sasha Koshka 7731fa86a1 Updated test case for new syntax 2022-09-05 11:12:55 -04:00
Sasha Koshka 1274eeb400 Parser now uses new equal signs 2022-09-03 20:32:27 -04:00
Sasha Koshka 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
Sasha Koshka 6446cbfafc The test case was wrong 2022-09-03 20:07:25 -04:00
Sasha Koshka ac548bf438 `loc` will be the referencing "operator" 2022-09-03 16:24:13 -04:00
Sasha Koshka 7bde082f36 Switch cases are parsed now 2022-09-03 15:38:57 -04:00
Sasha Koshka 1f68f252e0 Added defer statement to control flow test 2022-09-03 00:17:50 -04:00
Sasha Koshka 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
Sasha Koshka ed44795664 Lexer now rejects strange chars in integer literals 2022-09-02 01:37:58 -04:00
Sasha Koshka 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
Sasha Koshka 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
Sasha Koshka 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
Sasha Koshka e316eb7791 Changed bit field syntax to use an & symbol 2022-08-24 18:37:44 -04:00
Sasha Koshka 05aa0e6177 Added bitfields to object section test case 2022-08-24 18:23:11 -04:00
Sasha Koshka 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
Sasha Koshka efb3bbe21b Added base for parsing initialization values 2022-08-16 20:10:47 -04:00
Sasha Koshka c172c111d8 Rethought how object and array literals will work 2022-08-16 17:45:31 -04:00
Sasha Koshka 0025d03a18 Modified parser data test to have uninitialized pointer cases 2022-08-16 16:16:39 -04:00
Sasha Koshka ac40fa96e5 Improved parser test
Created new cases involving mutable data and phrase initialization arguments,
and always print out the correct and parsed trees.
2022-08-16 01:55:22 -04:00
Sasha Koshka 8b28fe5a4c Added a comma token 2022-08-15 14:50:09 -04:00
Sasha Koshka 608162fa92 Fixed bug in number lexing function that prevented reading zero 2022-08-15 14:42:32 -04:00
Sasha Koshka d27c0ff07c Added single digit zero and eight to lexer number test 2022-08-15 14:32:59 -04:00
Sasha Koshka d91423863b Added ToString methods for syntax tree nodes 2022-08-15 14:04:57 -04:00
Sasha Koshka b02ff6cda6 Created structs needed to represent a data section 2022-08-15 01:47:42 -04:00
Sasha Koshka 0a067524ce Added base parse body function 2022-08-14 22:38:57 -04:00
Sasha Koshka 2019c67bbb Created basic test for parser 2022-08-12 11:55:17 -05:00
Sasha Koshka c09c9860b8 Parser tests are now arf files 2022-08-12 10:26:16 -05:00
Sasha Koshka 31a2d84483 Removed erroneous indentation from indent test file
Need to find a more controlled and accurate way to test erroneous indentation.
Possibly by analyzing the returned error object.
2022-08-11 18:34:02 -05:00
Sasha Koshka 471eb863f4 Created indent test 2022-08-11 12:47:50 -05:00
Sasha Koshka 71157122d6 Added support for hex, octal, and unicode escape sequences 2022-08-11 12:39:49 -05:00
Sasha Koshka f7a823687e Added new test for string and rune literals (which it passes) 2022-08-11 12:12:41 -05:00
Sasha Koshka 7a0ed247e2 Added number lexing unit test 2022-08-11 04:23:06 -05:00
Sasha Koshka 488220f3a7 Added all tokens to unit test 2022-08-10 11:43:21 -04:00
Sasha Koshka 3f16d34aa1 Added unit test for lexer 2022-08-10 11:28:29 -04:00