diff options
Diffstat (limited to 'source/20-codegen-compiler/CodegenModel.hpp')
-rw-r--r-- | source/20-codegen-compiler/CodegenModel.hpp | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/source/20-codegen-compiler/CodegenModel.hpp b/source/20-codegen-compiler/CodegenModel.hpp deleted file mode 100644 index 99c345d..0000000 --- a/source/20-codegen-compiler/CodegenModel.hpp +++ /dev/null @@ -1,61 +0,0 @@ -#pragma once - -#include "CodegenConfig.hpp" -#include "CodegenDecl.hpp" -#include "CodegenModel.hpp" -#include "CodegenUtils.hpp" - -#include <sqlite3.h> -#include <cinttypes> -#include <cstdint> -#include <string> -#include <string_view> - -using namespace std::literals; - -class CodegenRuntimeModel { -private: - class Private; - Private* m; - -public: - CodegenRuntimeModel(); - ~CodegenRuntimeModel(); - - // Implementation detail helper, don't use outside - Private& GetPimpl() const { return *m; } - - DeclEnum* AddEnum(std::string fullname, DeclEnum decl); - DeclStruct* AddStruct(std::string fullname, DeclStruct decl); - - const DeclEnum* FindEnum(std::string_view name) const; - const DeclStruct* FindStruct(std::string_view name) const; - - DeclNamespace* AddNamespace(DeclNamespace ns); - - const DeclNamespace* FindNamespace(std::string_view fullname) const; - DeclNamespace* FindNamespace(std::string_view name); -}; - -class CodegenArchiveModel { -private: - class Private; - Private* m; - -public: - CodegenArchiveModel(std::string_view dbPath); - ~CodegenArchiveModel(); - - // Implementation detail helper, don't use outside - Private& GetPimpl() const { return *m; } - - void DeleteDeclsRelatedToFile(std::string_view filename); - - void Store(const CodegenRuntimeModel& model); - void LoadInto(CodegenRuntimeModel& model) const; - CodegenRuntimeModel Load() const; - - void StoreStruct(const DeclStruct& decl); - void StoreFunction(const DeclFunction& decl); - void StoreEnum(const DeclEnum& decl); -}; |