ed
4d638a7255
borken : lots of stuff changed, explaining in later commit...v
2024-12-07 00:21:09 -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
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
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
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
6081834687
bug fix
2024-12-03 20:42:35 -05:00
ed
a3548a5bd3
Added support for friend operator definitions
2024-12-03 20:21:08 -05:00
ed
d686831a7c
Completed initial conversion
2024-12-03 19:31:26 -05:00
ed
ba1dd1894a
WIP (Broken): Major changes to handling Strings in ast (StringCached defined as StrC)
2024-12-03 18:47:12 -05:00
ed
a7c9dad9fd
cpp feature reduction usage in parser
2024-12-03 09:31:27 -05:00
ed
f28ae57f16
setup upfront interface to have optional vars in structs (for C later)
2024-12-03 00:45:30 -05:00
ed
2fe708e4be
Began to reduce cpp feature usage in lexer and parser
2024-12-02 22:25:39 -05:00
ed
ea18792373
Progress on member proc usage reduction (CodeParam, CodeSpecifiers)
2024-12-02 10:58:24 -05:00
ed
9b68791e38
fixes for array when not using member features.
2024-12-02 02:11:49 -05:00
ed
f9c21ebc04
progress
2024-12-01 23:35:58 -05:00
ed
fec709cc76
Progresss
2024-12-01 21:59:43 -05:00
ed
80cb3f4eca
Significant progress reducing c++ feature usage in the library.
2024-12-01 18:50:37 -05:00
ed
9e88cb8724
String::is_equal added (bad last commit)
2024-12-01 13:29:33 -05:00
ed
8ef982003a
Added is_body to AST and Code types
2024-12-01 12:48:58 -05:00
ed
ed0c0422ad
Looking into what the library's convention for enums will be.
...
Most likely will just reduce them to C-enums with underlying type.
Otherwise there has to be a mechanism to drop the defs down to them anyways, and eliminate the namespace wraps.
2024-12-01 05:30:37 -05:00
ed
e5acac1d18
String member definitions not longer used in the base project
2024-12-01 03:06:30 -05:00
ed
0b4ccac8f9
Removed usage of hashtable member procs
2024-12-01 01:39:21 -05:00
ed
fbdb870986
Finished first pass reviewing memory.hpp for C lib generation
2024-11-30 23:38:27 -05:00
ed
6d04165b96
Reduce cpp freatures usage of Array container.
...
Almost ready to be inter-operable with C
2024-11-30 18:54:19 -05:00
ed
06deb1e836
memory.hpp no longer uses memory mappings by default
2024-11-30 17:18:49 -05:00
ed
79eb5f1f76
strings done
2024-11-30 14:13:30 -05:00
ed
c6cb583518
Hashtable done
2024-11-30 13:31:59 -05:00
ed
34eec66f35
Array done
2024-11-30 13:14:47 -05:00
ed
4137ebfbd8
pool done (see previous commits for context)
2024-11-30 12:27:54 -05:00
ed
5958dd2055
Did arena and fixedarena changes (for reducing usage of member procs)
2024-11-30 12:16:01 -05:00
ed
163ad0a511
looking into removing "oop" features from base library
...
I want to make member functions an optional addition the user can generate a derivative library with.
The purpose is to simplify the implementation as to make generating a C-variant simpiler.
I also want to use it as a study to see how much simpiler it makes the library without having it.
2024-11-29 15:18:06 -05:00
ed
e3c2a577ba
addded String::contains defs
2024-11-29 14:50:54 -05:00
ed
0f2763a115
fixes for unreal use
2024-10-27 21:18:41 -04:00
ed
c1878265c8
Minimizing reformatting of generated library files
2024-10-27 20:01:54 -04:00
ed
2e5e31ed3b
gencpp : General refactors to dependencies
...
Mostly just cleanup and renaming of certain stuff (mostly in dependencies).
* Changed uw and sw to usize and ssize.
* Removed zpl_cast usage throughout dependencies
* No longer using GEN_DEF_INLINE & GEN_IMPL_INLINE
* header_start.hpp renamed to platform.hpp for depdendencies header.
2024-10-27 18:58:37 -04:00
ed
f90c0a59b6
inital implemention of UE library variant generator completed
2024-10-25 05:01:37 -04:00
ed
33f992ef56
Updated generated ast_inlines.hpp so that operator defs have the inline explicit
...
* Added support for parsing/serializing specifiers for OpCast roughtly.. Doesn't have constraints on what specifiers beyond whats expected in global nspace scope..
* Minor adjustments to hashtable to avoid UE compile errors
* Make sure scanner.cpp is being made by bootstrap
2024-10-25 04:08:20 -04:00
ed
e5616c5879
generated code update + reverting some fixes for now...
2024-10-25 02:59:56 -04:00
ed
b8e1aa6eb7
WIP : Fixes and other changes
...
* Number literals weren't getting properly lexed
* Fixes for compiler errors with Unreal Engine configuration.
* Support for "post-name" macros in parameters
* Support for variables initializing directly using constructor syntax.
* Explicitly added inline keyword to header inlines for compiling compile library in multiple translation units.
2024-10-25 01:04:17 -04:00
ed
e1592ba410
Bug fixes and updates to package_release.ps1
...
- Incrased size of the defines_map_arena to 256KB
- Various fixes for the parser
- Various fixes for code serialization
- Fix for is_equal member func in Code types
- Fixes for hasthable container
- Added are_equal static func to String type for use against StrC
- Added starts_with functions to String type
- package_release.ps1 now packages all docs (forgot to update it with last release)
2024-05-05 21:53:22 -04:00
ed
83d691c65c
Pushing latest changes for gencpp
2024-04-17 16:55:22 -04:00
ed
91a3250d4c
Finished current iteration of parser_algo docs and parser.cpp inline comment docs
...
Added some todos and prep for upcoming changes
2023-11-22 14:23:21 -05:00
ed
772db608be
Added support for predefining preprocessor defines before parsing strings of code.
...
This prevents issues for preprocessor defines not getting treated properly for specific circumstances (such as macro wrappers for specifiers).
2023-11-21 20:09:14 -05:00
ed
9d27c7d37e
Lexer improvement prep, segmentation of lexer and parser.
2023-11-20 21:24:27 -05:00