aboutsummaryrefslogtreecommitdiff
path: root/source/20-codegen-compiler/CodegenDecl.hpp
diff options
context:
space:
mode:
authorrtk0c <[email protected]>2022-06-09 21:23:15 -0700
committerrtk0c <[email protected]>2022-06-09 21:23:15 -0700
commitc6b122f517fbde9a400ecb46c4fff44629f7677c (patch)
tree49da93ce34fdaf0fadc7007c46525078aa9bff4d /source/20-codegen-compiler/CodegenDecl.hpp
parent8510a85f79f706b93982b4e398b187b5f77081dd (diff)
Changeset: 65 Add enum name prefix manipulation support to codegen
Diffstat (limited to 'source/20-codegen-compiler/CodegenDecl.hpp')
-rw-r--r--source/20-codegen-compiler/CodegenDecl.hpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/source/20-codegen-compiler/CodegenDecl.hpp b/source/20-codegen-compiler/CodegenDecl.hpp
index 0728c08..60d5a13 100644
--- a/source/20-codegen-compiler/CodegenDecl.hpp
+++ b/source/20-codegen-compiler/CodegenDecl.hpp
@@ -80,6 +80,16 @@ struct DeclEnum {
// Start with invalid value, calculate on demand
mutable EnumValuePattern pattern = EVP_COUNT;
+ // TODO replace this with a regex?
+ std::string generateRemovingPrefix;
+ std::string generatingAddingPrefix;
+ // NOTE: this flag acts as a gate for every specific generating option, must be enabled for them to work
+ bool generating : 1 = false;
+ bool generateToString : 1 = false;
+ bool generateFromString : 1 = false;
+ // NOTE: see GenerateForEnum() for the exact heuristics
+ bool generateExcludeUseHeuristics : 1 = false;
+
EnumValuePattern CalcPattern() const;
EnumValuePattern GetPattern() const;
};