Commit Graph

60 Commits

Author SHA1 Message Date
Ed_
4fe1a4da65 c_library compiles and generates 2024-12-15 01:27:57 -05:00
Ed_
3c249d2fae pregress on fixing regressions with unreal parsing
https://github.com/Ed94/gencpp/issues/64 is required. Resolving it next
2024-12-14 11:24:21 -05:00
Ed_
e8bb381520 fixes 2024-12-14 07:14:45 -05:00
Ed_
967a044637 Got .lib and .dlls setup for the C11 library 2024-12-14 00:10:07 -05:00
Ed_
b5cf633e98 Updated c_library generation to support latest changes with context struct (also prepped for static/dynamic linkage) 2024-12-13 22:09:43 -05:00
Ed_
76ac3a0f93 Introduced the general context struct for gencpp 2024-12-13 19:16:52 -05:00
Ed_
5705196710 formatting fixes to C library generator 2024-12-13 15:56:57 -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_
012fcb6bd5 Corrected order of Str to how the slice type is defined in Odin and RAD Debugger (my reference on slice types) 2024-12-13 13:20:16 -05:00
Ed_
e3172057d3 working to towards https://github.com/Ed94/gencpp/issues/56 2024-12-12 12:55:15 -05:00
Ed_
71b7320e1c codestruct mssing frm c_library.reefactor 2024-12-11 16:00:39 -05:00
Ed_
cb898595b0 Updates to docs and various changes to project from working on them.
- CodeParam -> CodeParams
- interfaces array weren't being used in parse_class_struct
- added enum_underlying_sig
2024-12-11 13:33:35 -05:00
Ed_
9b86d84dd6 typo fix 2024-12-11 12:43:46 -05:00
Ed_
4dfb9031d7 separated _generic macros from base/dependencies/macro.shpp 2024-12-11 08:52:05 -05:00
Ed_
401f85f673 corrections to c_library.cpp, package_release.ps1 working for all zips 2024-12-11 02:04:22 -05:00
Ed_
caec5d8dfc fix clang format for enum_underlying 2024-12-11 00:13:36 -05:00
Ed_
44d0a9cf9d c_library compiles 2024-12-10 23:35:47 -05:00
Ed_
2c51a2f9c8 WIP: Restructuring project 2024-12-10 16:13:14 -05:00
Ed_
0046c4a223 c_library refacotring works, and compiles with all content from the base project.
I need to make the refactor step happen before formatting with clang-format in the metaprogram instead of calling it from powershell
2024-12-10 13:56:56 -05:00
Ed_
a4143b537d builder compiles in c (some issues with filtering out preprocess #if) 2024-12-10 07:24:32 -05:00
Ed_
0ccffe3f80 interface.untyped.cpp impl compiles in gnerated c library 2024-12-09 23:19:19 -05:00
Ed_
cd7548c3d4 parser finally compiles 2024-12-09 22:51:24 -05:00
Ed_
79a1951861 more prep for parser.cpp for c-library gen 2024-12-09 20:01:46 -05:00
Ed_
e786d7c3b6 prepped lexer and parser for c-library generation 2024-12-09 16:45:18 -05:00
Ed_
e6f30c7e1d TokType compiles for c lbirary 2024-12-09 15:23:47 -05:00
Ed_
6147912783 gen.h compiles with interface.upfront.cpp injected 2024-12-09 14:55:02 -05:00
Ed_
ed9f719a07 impl up to interface.cpp compiles (upfront next) 2024-12-09 01:33:37 -05:00
Ed_
500f216da2 ast.cpp compiles (among other things) 2024-12-08 23:10:10 -05:00
Ed_
12e31276eb dependency impl compiles for C11 library (doing components next) 2024-12-08 20:00:16 -05:00
Ed_
65c3fabc52 C-library gen progress: Header files mostly done, starting dep c impl and fixes to generic selection generation 2024-12-08 16:37:04 -05:00
Ed_
c016e245eb still misbehaving (going to try alignas next...) 2024-12-07 20:49:43 -05:00
Ed_
99dbc499fa WIP: code_types.hpp c_library.cpp conversion (issue with C struct padding on asts) 2024-12-07 19:46:19 -05:00
Ed_
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
Ed_
451b71884c WIP: Broken af 2024-12-07 17:17:02 -05:00
Ed_
4d638a7255 borken : lots of stuff changed, explaining in later commit...v 2024-12-07 00:21:09 -05:00
Ed_
ceea184d5a Update to c_library.cpp (now up to ast.hpp) 2024-12-06 05:29:36 -05:00
Ed_
9b059dca47 C-library Finished setting up header dependencies ( 2024-12-06 00:33:58 -05:00
Ed_
ec07c70dcf verified the C hashtable has parity with the C++ templated gencpp hashtable. 2024-12-05 23:02:26 -05:00
Ed_
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
Ed_
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
Ed_
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
Ed_
1c3134218e preogress on getting dependencies compilable in C-library 2024-12-05 02:53:14 -05:00
Ed_
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
Ed_
cae1555b11 wip having nasty parser issue (fixed nasty lexer bug) 2024-12-04 15:00:37 -05:00
Ed_
f7709bb64e more progress 2024-12-04 11:30:54 -05:00
Ed_
3a55af9ce4 WIP(broken): Converting base library to use c-linkage symbols only 2024-12-04 11:01:53 -05:00
Ed_
a3548a5bd3 Added support for friend operator definitions 2024-12-03 20:21:08 -05:00
Ed_
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
Ed_
9321a04ebc reduction of Code struct member function usage in base lib 2024-12-02 02:38:55 -05:00
Ed_
fec709cc76 Progresss 2024-12-01 21:59:43 -05:00