Commit graph

28 commits

Author SHA1 Message Date
Ilusha
c2ad9ce501 tmp 2024-03-14 09:00:14 +03:00
Ilusha
5d94ddd774 tmp 2024-03-14 08:00:35 +03:00
Ilusha
da74d27135 tmp 2024-03-13 14:20:50 +03:00
Ilusha
37ae4b2abb add parser chech for precedence in arithmetic expressions 2024-03-13 14:10:18 +03:00
Ilusha
afe32d6014 Fixing lalr on windows 2024-03-12 07:33:11 -07:00
Ilusha
ac4f08c67c Edit todo and status texts 2024-03-07 13:28:59 +03:00
Ilusha
20ac8620e6 stable 2024-03-07 12:33:57 +03:00
IlyaShurupov
b906e0e66c tmp 2024-03-07 12:33:57 +03:00
IlyaShurupov
49c67eb028 parser error handling 2024-03-07 12:33:57 +03:00
IlyaShurupov
fdb861b299 Parser done implementing 2024-03-07 12:33:57 +03:00
IlyaShurupov
828096de17 tmp 2024-03-07 12:33:57 +03:00
IlyaShurupov
e628e7c1e2 grammar done 2024-03-07 12:33:57 +03:00
IlyaShurupov
ad543c304d tmp 2024-03-07 12:33:57 +03:00
IlyaShurupov
ed3421321c tmp 2024-03-07 12:33:57 +03:00
Ilusha
f666416696 Replace object parser with lalr library 2024-03-07 12:33:46 +03:00
Ilusha
34a8d4eafd Adding support for windows and fixing some errors 2024-01-16 19:58:50 +03:00
IlyaShurupov
5a55011911 CMake fixes 2023-10-28 15:56:52 +03:00
IlyaShurupov
744c01c5d0 Apply formating to all files. CLeanup 2023-10-22 20:23:29 +03:00
IlushaShurupov
5fab9ee507 Adding some tokinizer checks for strings and comments 2023-08-10 18:35:17 +03:00
IlushaShurupov
112fea2f04 Adding objects GUI initial. Changing TODO. Some fixes along side 2023-08-07 18:37:11 +03:00
IlushaShurupov
f9d62c324d "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.
2023-08-03 21:15:27 +03:00
IlushaShurupov
55571ca3dd 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.
2023-08-01 20:06:34 +03:00
IlushaShurupov
b06e1da529 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.
2023-08-01 18:57:36 +03:00
IlushaShurupov
0cefb47b66 Refactor save size calculation with SaveSizeCounter
SaveSizeCounter is introduced and used for calculating the save size of objects. The previous method of calculating save size directly in each class was replaced with a call to the SaveSizeCounter's calc method. This results in a cleaner, more maintainable code as the size calculation logic is now centralized in one class. It is more efficient and scalable as any changes to the calculation can be made in one place and will be reflected everywhere.
2023-08-01 07:41:09 +03:00
IlushaShurupov
a918c83ec1 Objects adding dict test & fixes 2023-07-31 22:10:46 +03:00
IlushaShurupov
2c8e1470d1 Adding Simple Objest test. Fixes some bugs 2023-07-31 20:16:05 +03:00
IlushaShurupov
64e1f78739 Objects Compiled 2023-07-31 08:04:14 +03:00
IlushaShurupov
803ce23169 Objects Initial 2023-07-25 08:11:19 +03:00