Commit graph

16 commits

Author SHA1 Message Date
Ilusha
3eadb0d726 stable 2024-11-24 22:41:13 +03:00
IlyaShurupov
6c92be58cd tmp 2024-11-24 22:41:13 +03:00
IlyaShurupov
2484ea9d9c parser error handling 2024-11-24 22:41:13 +03:00
IlyaShurupov
d4c85a3d86 Parser done implementing 2024-11-24 22:41:13 +03:00
IlyaShurupov
87fb15ed13 tmp 2024-11-24 22:41:13 +03:00
IlyaShurupov
8dc73bc1d5 tmp 2024-11-24 22:41:13 +03:00
Ilusha
1293136343 Replace object parser with lalr library 2024-11-24 22:41:13 +03:00
Ilusha
420bb37039 Adding support for windows and fixing some errors 2024-11-24 22:41:13 +03:00
IlyaShurupov
91fb72bd49 Apply formating to all files. CLeanup 2024-11-24 22:41:08 +03:00
IlushaShurupov
f579a969ce "Added new test 'Complex' and improved error debugging"
This revision adds a complex test to the 'TestInterpreter.cpp' file to test functionalities such as classes, variable initializations, loops, conditionals and methods in the interpreter. The token parser has also been updated with a reset method in the 'parser.cpp' file for cleaning up any previous state before parsing a new script. This ensures the parser starts fresh for each new parse request. It also improves the debugging process in 'function.cpp' by printing the description of parser errors. Few completed tasks are removed from the TODO list.
2024-11-24 22:38:03 +03:00
IlushaShurupov
3f4f2caf1f Load and destroy methods revised for proper reference counting
The update enhances object management by involving scope-based reference counting. The change affects loading and destruction operations in the Object and several other classes, ensuring the release or retention of objects adhere to their usage context. A function for logging type data has also been introduced to provide better clarity during debugging. Also, tests in script & interpreter have been altered to run in separate module initializations to avoid cross-test interference. Overall, it provides better memory management and dependable tests.
2024-11-24 22:38:03 +03:00
IlushaShurupov
ab0edfc302 Add Interpreter tests and improve Parser error logging
A set of tests for the InterpreterObject has been added to enhance its reliability and maintainability. The tests check the essential functionalities such as its creation, execution, saving, loading, and destruction. Furthermore, the error logging for the Parser has been improved, now providing more precise location of detected errors. The changes improve the robustness and debugability of the code.
2024-11-24 22:38:03 +03:00
IlushaShurupov
a679ab1c4b Objects adding dict test & fixes 2024-11-24 22:38:03 +03:00
IlushaShurupov
63029e6083 Adding Simple Objest test. Fixes some bugs 2024-11-24 22:38:03 +03:00
IlushaShurupov
edf0548046 Objects Compiled 2024-11-24 22:38:03 +03:00
IlushaShurupov
94057d2a66 Objects Initial 2024-11-24 22:36:45 +03:00