Commit Graph

84 Commits

Author SHA1 Message Date
bce1b1c79c Simple binding for virtprops.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-09 15:33:34 +01:00
ce3d92e0a5 Log error when variable is unknown type.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-09 14:12:09 +01:00
0fbca3f01e Fixes for tests, support for comments.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-09 13:43:29 +01:00
59af34fac9 Rework text spans a bit to include script file, make binder log an error when two classes have a circular value reference.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-09 13:20:56 +01:00
8660933f27 More work on binder type registration, support in REPL to show registered types.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-08 18:18:24 +01:00
093ffde6bc Initial work on type registration in the binder.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-08 16:14:02 +01:00
da82819fff More work on better parser logging.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-06 13:32:06 +01:00
034dcb118b Fixes issue in lexing numerical base consuming character after it, removes test for invalid numerical base.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-06 11:48:24 +01:00
cf8d6ce18b When an integer starts with a 0, and is followed by a non numerical symbol just lex it as a 0 literal, followed by another token.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-06 00:53:02 +01:00
807fe63828 More detailed error messages for lex errors.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-06 00:25:08 +01:00
2327134e36 Fixes issue where string lex token position start would be off by one.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-06 00:08:47 +01:00
d907a58f64 Initial work on more detailed error messages.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-06 00:06:39 +01:00
7d0c5cbbed better namespace parse tree stringification.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-05 19:26:11 +01:00
b4c18e0f09 Many fixes for namespace parsing.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-05 19:21:06 +01:00
bfe27ec20f Better handling of diagnostics in the REPL.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-05 18:17:40 +01:00
340d37f4a1 Implements scrolling in the InputWindow of the REPL.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-05 15:51:59 +01:00
b73bfe6482 Make parser be able to skip tokens when encountering an unexpected token.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-05 13:20:34 +01:00
d9d52554e4 Always show parse tree in REPL, even if we have a diagnostic.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-05 12:37:13 +01:00
f328762cd8 Clean up REPL a bit by moving InputWindow to special class.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-05 00:13:42 +01:00
5c086ee066 Adds more parse tree stringification.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-04 22:54:04 +01:00
dbef09f4bb Adds backward to REPL for better error logging.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-04 13:33:52 +01:00
9fcf296442 Fixes memory issue in MemoryPool. 2021-01-04 13:33:29 +01:00
cf09f9348c More work on stringification of the parse tree.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-03 15:44:53 +01:00
08a0859539 Move parse tree stringification away from the main parsed statements, and into a helper function class.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-03 15:10:43 +01:00
4c4faac899 Add commas between parameters in REPL.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-03 14:50:14 +01:00
856c37a583 Fixes artifacts shown in REPL input window.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-03 14:45:53 +01:00
56538a5552 Show neat little tree in REPL.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-03 14:42:26 +01:00
0bacb981d1 Clearer errors if we find a class without a known ending.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-02 19:12:31 +01:00
df9c4933af Adds some colours to the REPL, show errors live!
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-02 19:08:58 +01:00
ee53e7abd8 Fixes issue in the lexer where most tokens had the wrong textspan. 2021-01-02 19:08:46 +01:00
9109b7513a Implements very simple REPL, fixes several issues found with it.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-02 17:41:53 +01:00
de15173b0b Implements parsing switch case statements.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-02 12:38:50 +01:00
85e3a6db43 Actually call ParseTryStatement. 2021-01-02 11:54:16 +01:00
28ece69be6 Implements try catch statement.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-02 11:53:16 +01:00
54ccac6d96 Disable parenthesis warning in GCC. This is handled already in the formatter, and goes against bugprone-macro-parentheses.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-02 00:01:20 +01:00
a9c4dfdece Actually call ParseTypeDef.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-01 23:44:58 +01:00
329848d9d5 Parse class attributes (shared, abstract, final, external), cleanup some parser code.
Some checks failed
continuous-integration/drone/push Build is failing
2021-01-01 23:41:37 +01:00
5d57838bec Cleanup of parser class.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-01 23:31:30 +01:00
5ac627a9b3 Make parser class static, to reduce required state.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-01 23:17:34 +01:00
dd2722d485 Implements parsing dowhile statements
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-01 13:21:59 +01:00
037470a0ce Slight performance improvements for parsing statements.
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-01 13:17:53 +01:00
a9c3a9e0c4 Implements parsing while statement 2021-01-01 13:14:29 +01:00
a3a996d68a Implements parsing for loop, cleanup of memory handling in parser.
All checks were successful
continuous-integration/drone/push Build is passing
2020-12-06 12:35:08 +01:00
0c8b9f3943 Adds parsing continue and break.
All checks were successful
continuous-integration/drone/push Build is passing
2020-11-15 10:21:42 +01:00
09023d6337 Implements statblock for functions.
All checks were successful
continuous-integration/drone/push Build is passing
2020-11-08 15:52:44 +01:00
bfb47d9b5f Style fixes.
All checks were successful
continuous-integration/drone/push Build is passing
2020-11-08 15:44:58 +01:00
5fb64e12e1 Large chunk of work in parser for getting expressions to work.
All checks were successful
continuous-integration/drone/push Build is passing
2020-11-08 15:41:18 +01:00
c20a1089a9 Initial work on expression parsing.
All checks were successful
continuous-integration/drone/push Build is passing
2020-11-01 18:43:35 +01:00
e30bfe1686 Style fixes.
All checks were successful
continuous-integration/drone/push Build is passing
2020-11-01 13:50:35 +01:00
c4d7c9e2d8 Make Windows CI build actually use static C option.
All checks were successful
continuous-integration/drone/push Build is passing
2020-11-01 13:47:01 +01:00