From 0e782cdf99a8c9d2c71dd696779a2a497fb48883 Mon Sep 17 00:00:00 2001 From: Ed_ Date: Wed, 11 Dec 2024 14:57:38 -0500 Subject: [PATCH] minor fixees --- base/Readme.md | 2 -- base/components/ast.hpp | 12 ------- base/dependencies/containers.hpp | 2 -- gen_c_library/c_library.refactor | 54 ++++++++++++++++---------------- 4 files changed, 27 insertions(+), 43 deletions(-) diff --git a/base/Readme.md b/base/Readme.md index 4f25e5a..58ea651 100644 --- a/base/Readme.md +++ b/base/Readme.md @@ -73,8 +73,6 @@ The base library itself does not use anything but C-like features to allow for g Member function support or free-functions with reference object passing are wrapped in `! GEN_C_LIKE CPP` preprocess conditionals. - - ## C++ template usage There are only 4 template definitions in the entire library (C++ versions). (`Array`, `Hashtable`, `swap`, and `tmpl_cast(CodeT code)`) diff --git a/base/components/ast.hpp b/base/components/ast.hpp index a40aa04..052d8b6 100644 --- a/base/components/ast.hpp +++ b/base/components/ast.hpp @@ -309,18 +309,6 @@ struct Code Code& operator ++(); - // TODO(Ed) : Remove this overload. - auto& operator*() - { - local_persist thread_local - Code NullRef = { nullptr }; - - if ( ast == nullptr ) - return NullRef; - - return *this; - } - #ifdef GEN_ENFORCE_STRONG_CODE_TYPES # define operator explicit operator #endif diff --git a/base/dependencies/containers.hpp b/base/dependencies/containers.hpp index 057fa7a..321ed4b 100644 --- a/base/dependencies/containers.hpp +++ b/base/dependencies/containers.hpp @@ -440,8 +440,6 @@ bool array_set_capacity(Array* array, usize new_capacity) #pragma endregion Array -// TODO(Ed) : This thing needs ALOT of work. - #pragma region HashTable #define HashTable(Type) HashTable diff --git a/gen_c_library/c_library.refactor b/gen_c_library/c_library.refactor index 1d91680..364b362 100644 --- a/gen_c_library/c_library.refactor +++ b/gen_c_library/c_library.refactor @@ -319,33 +319,33 @@ namespace AST_, gen_AST_ word Code, gen_Code word Token, gen_Token -word CodeBody, gen_CodeBody -word CodeAttributes, gen_CodeAttributes -word CodeComment, gen_CodeComment -word CodeClass, gen_CodeClass -word CodeConstructor, gen_CodeConstructor -word CodeDefine, gen_CodeDefine -word CodeDestructor, gen_CodeDestructor -word CodeEnum, gen_CodeEnum -word CodeExec, gen_CodeExec -word CodeExtern, gen_CodeExtern -word CodeInclude, gen_CodeInclude -word CodeFriend, gen_CodeFriend -word CodeFn, gen_CodeFn -word CodeModule, gen_CodeModule -word CodeNS, gen_CodeNS -word CodeOperator, gen_CodeOperator -word CodeOpCast, gen_CodeOpCast -word CodePragma, gen_CodePragma -word CodeParams, gen_CodeParams -word CodePreprocessCo, gen_CodePreprocessCo -word CodeSpecifiers, gen_CodeSpecifiers -word CodeTemplate, gen_CodeTemplate -word CodeTypename, gen_CodeTypename -word CodeTypedef, gen_CodeTypedef -word CodeUnion, gen_CodeUnion -word CodeUsing, gen_CodeUsing -word CodeVar, gen_CodeVar +word CodeBody, gen_CodeBody +word CodeAttributes, gen_CodeAttributes +word CodeComment, gen_CodeComment +word CodeClass, gen_CodeClass +word CodeConstructor, gen_CodeConstructor +word CodeDefine, gen_CodeDefine +word CodeDestructor, gen_CodeDestructor +word CodeEnum, gen_CodeEnum +word CodeExec, gen_CodeExec +word CodeExtern, gen_CodeExtern +word CodeInclude, gen_CodeInclude +word CodeFriend, gen_CodeFriend +word CodeFn, gen_CodeFn +word CodeModule, gen_CodeModule +word CodeNS, gen_CodeNS +word CodeOperator, gen_CodeOperator +word CodeOpCast, gen_CodeOpCast +word CodePragma, gen_CodePragma +word CodeParams, gen_CodeParams +word CodePreprocessCond, gen_CodePreprocessCond +word CodeSpecifiers, gen_CodeSpecifiers +word CodeTemplate, gen_CodeTemplate +word CodeTypename, gen_CodeTypename +word CodeTypedef, gen_CodeTypedef +word CodeUnion, gen_CodeUnion +word CodeUsing, gen_CodeUsing +word CodeVar, gen_CodeVar // Code Interface