Commit Graph

20 Commits

Author SHA1 Message Date
ed 84f4fc5ae9 lexer/parser revamp progress: got c11 ver compiling (synchup before continuation) 2025-03-19 12:09:07 -04:00
ed ad5cb6597b progress on parser and lexer revamp 2025-03-19 11:48:40 -04:00
ed 1c7dd4ab32 WIP Broken: Working towards major changes to lexer
Lexer tokens now tracked using TokenSlice. ParserContext as the id for current token during traversal.
Last progress on errors needs updates to interface.parsing.cpp
Not adding message support yet as that will need to revamped with the logging, right now just focused on getting both lexer on parser to use proper info data structures.
Thinking of separating ParseContext from the general lib Context, plan is to just have the parser context have its allocator and other references it needs.
So there will seem to be redundant parameter passing to some procedures for now.
The big endgoal of this other than the parser's compression is the ability to support mult-threading.
Immediate concern other than making sure everything necessary is only within ParseContext, etc is things related to logging, or otherwise that is not thread dependent.
Those can get guarded but I don't have full intuition on what will have that (most likely the library's provided allocator/s as well will need guards introduced).
I'll concern myself more with charting those out once things are at least lifted properly. Worst case a trivial situation can be achived by the user by just abusing multiple contextes/allocators/etc as we already have in place.
2025-03-18 03:26:14 -04:00
ed 2ed36506b1 progress on modularizing parser paths 2025-03-17 01:09:46 -04:00
ed 790087aa3c progress on modularizing parser paths 2025-03-16 23:13:46 -04:00
ed 441a46daaa changing to just pass lib Context instead of ParseContext.
If I want to make it more granular I can later.
2025-02-19 15:48:56 -05:00
ed 26623075ad started to work on modularizing parser code paths 2025-02-19 12:10:11 -05:00
ed 6d531fdf97 Fixing intellisense 2025-02-19 11:08:24 -05:00
ed 3b81eea688 Doing some initial prep for parser overhaul 2025-02-19 10:50:55 -05:00
ed 3bce2e9b8a rename GEN_INTELLISENSE_DIRECTIVES -> INTELLISENSE_DIRECTIVES 2025-02-04 18:33:07 -05:00
ed 28aa2c4dec remove tok_to_str, fix for parsing inpalce dfinitions that don't have an identifier for the type. 2024-12-16 20:53:56 -05:00
ed c90c210e04 fixes for c library 2024-12-15 22:53:32 -05:00
ed 4fe1a4da65 c_library compiles and generates 2024-12-15 01:27:57 -05:00
ed 16d0e0834f All global vars (except concepts) have been retrofitetd to the library's new Context struct 2024-12-13 20:40:18 -05:00
ed 76ac3a0f93 Introduced the general context struct for gencpp 2024-12-13 19:16:52 -05:00
ed bac57a5872 Corrected enum serialization of ecodetypes, eoperator, especifier, and etoktype, some more naming refactors for strbuilder... formatting 2024-12-13 14:38:27 -05:00
ed e3172057d3 working to towards https://github.com/Ed94/gencpp/issues/56 2024-12-12 12:55:15 -05:00
ed ef78772278 work on gettings things compiling again after restructuring 2024-12-10 20:45:00 -05:00
ed 8891657eb1 Large updates to docs 2024-12-10 19:31:50 -05:00
ed 2c51a2f9c8 WIP: Restructuring project 2024-12-10 16:13:14 -05:00