#pragma once #include "CodegenDecl.hpp" #include "CodegenModel.hpp" #include #include class CodegenModelArchive { private: class Private; Private* m; public: CodegenModelArchive(std::string_view dbPath); ~CodegenModelArchive(); // Implementation detail helper, don't use outside Private& GetPimpl() const { return *m; } void Store(const CodegenModel& cgInput); void StoreStruct(const DeclStruct& decl); void StoreFunction(const DeclFunction& decl); void StoreEnum(const DeclEnum& decl); };