Commit Graph

36 Commits

Author SHA1 Message Date
Sasha Koshka 3407aa7c59 Fixed lexing digraph tokens
Lexer gave wrong token locations and would skip an extra rune when digraph was
not found.
2022-08-16 20:29:00 -04:00
Sasha Koshka 9e01eef45b Added elipsis token 2022-08-16 20:24:27 -04:00
Sasha Koshka 8b28fe5a4c Added a comma token 2022-08-15 14:50:09 -04:00
Sasha Koshka 856d5763d3 Lexer tokens are now created by the lexer
This is so positional information can be accurately embedded into them.
2022-08-12 14:34:07 -05:00
Sasha Koshka 7914f0df45 Location now stores width instead of Error 2022-08-12 13:43:09 -05:00
Sasha Koshka f4f19a809a Lexer now eats :arf symbol at file beginning 2022-08-12 10:38:23 -05:00
Sasha Koshka 81b47f7734 Replaced all occurences of github.com with git.tebibyte.media 2022-08-12 10:21:36 -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 ee9fa3a766 Indentation tokens now carry their indentation level
They are no longer stored in sequence
2022-08-11 12:53:20 -05:00
Sasha Koshka 6acc11d046 Removed debug rune printing th 2022-08-11 04:19:39 -05:00
Sasha Koshka af6f170833 Normalized whitespace tokens 2022-08-11 03:47:42 -05:00
Sasha Koshka 0a31ea7bf8 Support for digraphs such as &&, <<, ++ 2022-08-11 02:54:20 -05:00
Sasha Koshka 758b85e735 Added naieve string and char literal parsing 2022-08-11 02:47:51 -05:00
Sasha Koshka 9e4684dbed Number tokenizing functions use one digit conversion functions 2022-08-11 01:57:04 -05:00
Sasha Koshka 8813928b68 Negative numbers are now supported 2022-08-11 01:10:34 -05:00
Sasha Koshka 0f603e3bf7 I am an idiot 2022-08-11 01:00:57 -05:00
Sasha Koshka 7a45224449 Reduced code du0plicaion with number lexing functions 2022-08-11 00:57:04 -05:00
Sasha Koshka 3d610df44e Added support for decimal and octal numbers 2022-08-11 00:21:04 -05:00
Sasha Koshka 8f38203684 Added support for binary literals 2022-08-11 00:17:22 -05:00
Sasha Koshka 77f3c590c6 Added lexing hexidecimal numbers 2022-08-11 00:14:41 -05:00
Sasha Koshka 040e14d27c Test now prints out list of tokens 2022-08-10 15:02:08 -04:00
Sasha Koshka 2220b95cd2 Name and permission tokens are now supported 2022-08-10 14:55:26 -04:00
Sasha Koshka 9c1baf8216 Lexer can now tokenize
minus
decrement
return direction
separator
2022-08-10 14:18:28 -04:00
Sasha Koshka 314c045e65 Lexer no longer hangs when encountering letters 2022-08-10 13:59:09 -04:00
Sasha Koshka 9f8b48161a Lexer unit test now prints out resulting error 2022-08-10 13:03:48 -04:00
Sasha Koshka 3f16d34aa1 Added unit test for lexer 2022-08-10 11:28:29 -04:00
Sasha Koshka 245798f33d Print warning when a tab is discovered where it shouldn't be 2022-08-10 01:22:53 -04:00
Sasha Koshka 0d2d10fe04 All basic symbol tokens are now parsed 2022-08-10 01:03:59 -04:00
Sasha Koshka a0ce033c27 Added a ton more token kinds 2022-08-10 00:48:18 -04:00
Sasha Koshka 64de897de5 Added lexing various symbol tokens 2022-08-09 22:18:12 -04:00
Sasha Koshka 861400b4a1 LexingOperation now stores the list of tokens 2022-08-09 22:12:14 -04:00
Sasha Koshka c042305ebe Test commit
Trying to see if my username appears
2022-08-09 21:44:41 -04:00
Sasha Koshka 488af74b75 Laid out basic lexer structure 2022-08-09 20:45:06 -04:00
Sasha Koshka 2ea0c86c54 Added README 2022-08-09 01:51:56 -04:00
Sasha Koshka e8f6165f38 Created stub high-level module compilation function 2022-08-08 03:08:50 -04:00
Sasha Koshka 47234e9f36 Added lexer stub 2022-08-07 15:18:59 -04:00