1c133bfc8d 
					 
					
						
						
							
							Massive total progress on c_library generation: (Summary of last 3 WIP commits)  
						
						 
						
						... 
						
						
						
						- No longer using GEN_API_C_* macros as C-library wont need them and if you need C linkage there is no need to use the c++ library.
- GEN_C_LIKE_CPP replaces GEN_SUPPORT_CPP_MEMBER_FEATURES && GEN_SUPPORT_CPP_REFERENCES
  a. If users don't want to use member functions, function overloading, or referencese they can just this one macro to before including the library.
- Enums aren't accomodated in C++ sources, they entirely converted in c_libray.cpp
- ast.hpp now properly generates with C variant
- Fully prepared code_types.hpp for C library gen (not tested yet)
- Generated enums managed by helper.hpp now properly generate for C library. 
						
						
					 
					
						2024-12-07 17:58:56 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						451b71884c 
					 
					
						
						
							
							WIP: Broken af  
						
						 
						
						
						
						
					 
					
						2024-12-07 17:17:02 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						4d638a7255 
					 
					
						
						
							
							borken : lots of stuff changed, explaining in later commit...v  
						
						 
						
						
						
						
					 
					
						2024-12-07 00:21:09 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						92e0d3ab8b 
					 
					
						
						
							
							DId a pass on ast.hpp, types.hpp and helper.hpp for C compatability (unfortuantely clang-format doesn't like my enum macro...  
						
						 
						
						
						
						
					 
					
						2024-12-06 05:29:17 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						9b059dca47 
					 
					
						
						
							
							C-library Finished setting up header dependencies (  
						
						 
						
						
						
						
					 
					
						2024-12-06 00:33:58 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						46562d54e7 
					 
					
						
						
							
							parser: added support for enum_underlying macro  
						
						 
						
						
						
						
					 
					
						2024-12-06 00:33:53 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ec07c70dcf 
					 
					
						
						
							
							verified the C hashtable has parity with the C++ templated gencpp hashtable.  
						
						 
						
						
						
						
					 
					
						2024-12-05 23:02:26 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						63dd77237a 
					 
					
						
						
							
							update version (forgot)  
						
						 
						
						
						
						
					 
					
						2024-12-05 21:37:39 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						cf3908c6f0 
					 
					
						
						
							
							Added alpha warning message to header_start.hpp files.  
						
						 
						
						
						
						
					 
					
						2024-12-05 21:37:07 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						266163557f 
					 
					
						
						
							
							Finished draft pass verifying containers.array.hpp is equivalent to container.hpp's array.  
						
						 
						
						... 
						
						
						
						gen_generic_selection_function_macro now works generically
Imprvoed _Generic function overloading examples 
						
						
					 
					
						2024-12-05 21:01:04 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						8bb2bc7b1b 
					 
					
						
						
							
							fixes on containers (compiles but still verifying parity with c++ templates  
						
						 
						
						... 
						
						
						
						I'm going to have to change some c++ templates to match the init interfaces as they must not be in the return type 
						
						
					 
					
						2024-12-05 17:48:24 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a3407c14d5 
					 
					
						
						
							
							First compiling version of operator overloading for C! (on both msvc and clang using -std=c11 flag, using _Generic selection with some helper macros)  
						
						 
						
						... 
						
						
						
						Extremely satsified with how unofuscated the generated code is for _Generic.
Still fixing up the templated container code though in the c-codegen 
						
						
					 
					
						2024-12-05 17:04:17 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						47b9c37e94 
					 
					
						
						
							
							began to setup generation of Array_ssize and StringTable in the c-library  
						
						 
						
						... 
						
						
						
						Still need to confirm if the these old templates require updates compared to the c++ impl 
						
						
					 
					
						2024-12-05 03:41:08 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						1c3134218e 
					 
					
						
						
							
							preogress on getting dependencies compilable in C-library  
						
						 
						
						
						
						
					 
					
						2024-12-05 02:53:14 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a3e7ec4c72 
					 
					
						
						
							
							successful compile of c_library for: platform, macros, basic_types, debug, and memory headers (and newly generated c-code)  
						
						 
						
						
						
						
					 
					
						2024-12-05 00:40:51 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						cae1555b11 
					 
					
						
						
							
							wip having nasty parser issue (fixed nasty lexer bug)  
						
						 
						
						
						
						
					 
					
						2024-12-04 15:00:37 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f7709bb64e 
					 
					
						
						
							
							more progress  
						
						 
						
						
						
						
					 
					
						2024-12-04 11:30:54 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						3a55af9ce4 
					 
					
						
						
							
							WIP(broken): Converting base library to use c-linkage symbols only  
						
						 
						
						
						
						
					 
					
						2024-12-04 11:01:53 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						6081834687 
					 
					
						
						
							
							bug fix  
						
						 
						
						
						
						
					 
					
						2024-12-03 20:42:35 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a3548a5bd3 
					 
					
						
						
							
							Added support for friend operator definitions  
						
						 
						
						
						
						
					 
					
						2024-12-03 20:21:08 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						d686831a7c 
					 
					
						
						
							
							Completed initial conversion  
						
						 
						
						
						
						
					 
					
						2024-12-03 19:31:26 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ba1dd1894a 
					 
					
						
						
							
							WIP (Broken): Major changes to handling Strings in ast (StringCached defined as StrC)  
						
						 
						
						
						
						
					 
					
						2024-12-03 18:47:12 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e00b2f8afb 
					 
					
						
						
							
							Reduced ECode to C compatible vairant  
						
						 
						
						
						
						
					 
					
						2024-12-03 15:19:39 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						72d088c566 
					 
					
						
						
							
							reduction done on eoperator  
						
						 
						
						
						
						
					 
					
						2024-12-03 13:51:29 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						c6fba23173 
					 
					
						
						
							
							reduce ESpecifier to c-compatiable enum  
						
						 
						
						
						
						
					 
					
						2024-12-03 13:14:14 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						d45908fb32 
					 
					
						
						
							
							reduce TokType enum to c-compatiable  
						
						 
						
						
						
						
					 
					
						2024-12-03 09:50:30 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a7c9dad9fd 
					 
					
						
						
							
							cpp feature reduction usage in parser  
						
						 
						
						
						
						
					 
					
						2024-12-03 09:31:27 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						63ebd0d094 
					 
					
						
						
							
							removed reference type usage in components/lexer.cpp, looking into resolving 'using namespace' usage  
						
						 
						
						
						
						
					 
					
						2024-12-03 01:44:01 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f28ae57f16 
					 
					
						
						
							
							setup upfront interface to have optional vars in structs (for C later)  
						
						 
						
						
						
						
					 
					
						2024-12-03 00:45:30 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2fe708e4be 
					 
					
						
						
							
							Began to reduce cpp feature usage in lexer and parser  
						
						 
						
						
						
						
					 
					
						2024-12-02 22:25:39 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						69a9abcd59 
					 
					
						
						
							
							Finished AST/Code member inferface usage elimination in base library.  
						
						 
						
						... 
						
						
						
						Now the lexer and parser need to be elimination... 
						
						
					 
					
						2024-12-02 20:20:30 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						defe42c15c 
					 
					
						
						
							
							member proc usage reductions on CodeTypes complete (Typedef, Union, Using, Var)  
						
						 
						
						... 
						
						
						
						proceeding to finalize the AST interface reductions... 
						
						
					 
					
						2024-12-02 18:58:07 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						05e65aa464 
					 
					
						
						
							
							Did reductions on Module, NS, Operator, OpCast, Pragma, PreprocessCond, Template, and Type codes  
						
						 
						
						
						
						
					 
					
						2024-12-02 18:35:34 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						8f47f3b30f 
					 
					
						
						
							
							Comment, Constructor, Destructor, Define, Enum, Exec, Extern, Include, Friend, Fn codes member proc usage reductions  
						
						 
						
						
						
						
					 
					
						2024-12-02 16:59:13 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						0bad61fda6 
					 
					
						
						
							
							remove raw member def from code types, reduction on CodeAttributes  
						
						 
						
						
						
						
					 
					
						2024-12-02 11:20:31 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ea18792373 
					 
					
						
						
							
							Progress on member proc usage reduction (CodeParam, CodeSpecifiers)  
						
						 
						
						
						
						
					 
					
						2024-12-02 10:58:24 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						16b8a3a164 
					 
					
						
						
							
							began to remove usage of code specific types member procs  
						
						 
						
						
						
						
					 
					
						2024-12-02 04:12:09 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						5b0079fb0c 
					 
					
						
						
							
							ast interface uage reductions  
						
						 
						
						
						
						
					 
					
						2024-12-02 03:18:52 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						9321a04ebc 
					 
					
						
						
							
							reduction of Code struct member function usage in base lib  
						
						 
						
						
						
						
					 
					
						2024-12-02 02:38:55 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						9b68791e38 
					 
					
						
						
							
							fixes for array when not using member features.  
						
						 
						
						
						
						
					 
					
						2024-12-02 02:11:49 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2dcc968c39 
					 
					
						
						
							
							Preparing for reductions on code_types.hpp  
						
						 
						
						
						
						
					 
					
						2024-12-02 01:56:49 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						c38b077c37 
					 
					
						
						
							
							Code::set_global reduction  
						
						 
						
						
						
						
					 
					
						2024-12-02 00:43:57 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f9b5029e64 
					 
					
						
						
							
							Code::is_valid rection  
						
						 
						
						
						
						
					 
					
						2024-12-02 00:41:41 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2b24511f7d 
					 
					
						
						
							
							Code::is_equal reduction  
						
						 
						
						
						
						
					 
					
						2024-12-02 00:34:40 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						5cd69e1742 
					 
					
						
						
							
							Code::is_body reduction  
						
						 
						
						
						
						
					 
					
						2024-12-02 00:18:54 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						007bfa0cb0 
					 
					
						
						
							
							Code::duplicate reduction  
						
						 
						
						
						
						
					 
					
						2024-12-02 00:16:11 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						37c33ffb3e 
					 
					
						
						
							
							reduction on debug_str  
						
						 
						
						
						
						
					 
					
						2024-12-02 00:10:24 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						937235b776 
					 
					
						
						
							
							progress (Code)  
						
						 
						
						
						
						
					 
					
						2024-12-02 00:03:38 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f9c21ebc04 
					 
					
						
						
							
							progress  
						
						 
						
						
						
						
					 
					
						2024-12-01 23:35:58 -05:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						fec709cc76 
					 
					
						
						
							
							Progresss  
						
						 
						
						
						
						
					 
					
						2024-12-01 21:59:43 -05:00