moved dump schema method to class schema

This commit is contained in:
Sascha Kühl 2026-01-07 09:09:17 +01:00
parent 099b72be05
commit dfd31cdf35
4 changed files with 9 additions and 6 deletions

View File

@ -118,8 +118,6 @@ public:
[[nodiscard]] std::vector<object::attribute> describe_table(const std::string &table_name) const; [[nodiscard]] std::vector<object::attribute> describe_table(const std::string &table_name) const;
[[nodiscard]] bool table_exists(const std::string &table_name) const; [[nodiscard]] bool table_exists(const std::string &table_name) const;
void dump_schema(std::ostream &os) const;
[[nodiscard]] utils::result<std::unique_ptr<sql::query_result_impl>, utils::error> fetch(const sql::query_context &ctx) const override; [[nodiscard]] utils::result<std::unique_ptr<sql::query_result_impl>, utils::error> fetch(const sql::query_context &ctx) const override;
[[nodiscard]] utils::result<size_t, utils::error> execute(const sql::query_context &ctx) const override; [[nodiscard]] utils::result<size_t, utils::error> execute(const sql::query_context &ctx) const override;
[[nodiscard]] utils::result<sql::statement, utils::error> prepare(const sql::query_context &ctx) override; [[nodiscard]] utils::result<sql::statement, utils::error> prepare(const sql::query_context &ctx) override;

View File

@ -111,6 +111,8 @@ public:
const object::repository &repo() const { return repo_; } const object::repository &repo() const { return repo_; }
object::repository &repo() { return repo_; } object::repository &repo() { return repo_; }
void dump(std::ostream &os) const;
private: private:
[[nodiscard]] sql::query_context build_add_constraint_context(const object::repository_node& node, const object::restriction& cons, const sql::connection &conn) const; [[nodiscard]] sql::query_context build_add_constraint_context(const object::repository_node& node, const object::restriction& cons, const sql::connection &conn) const;
[[nodiscard]] sql::query_context build_drop_constraint_context(const object::repository_node& node, const object::restriction& cons, const sql::connection &conn) const; [[nodiscard]] sql::query_context build_drop_constraint_context(const object::repository_node& node, const object::restriction& cons, const sql::connection &conn) const;

View File

@ -84,10 +84,6 @@ const class sql::dialect &session::dialect() const {
return dialect_; return dialect_;
} }
void session::dump_schema(std::ostream &os) const {
schema_.repo().dump(os);
}
utils::result<std::unique_ptr<sql::query_result_impl>, utils::error> session::fetch(const sql::query_context& ctx) const { utils::result<std::unique_ptr<sql::query_result_impl>, utils::error> session::fetch(const sql::query_context& ctx) const {
if (const auto result = cache_.acquire(ctx); !result) { if (const auto result = cache_.acquire(ctx); !result) {
return utils::failure(result.err()); return utils::failure(result.err());

View File

@ -218,6 +218,13 @@ schema::const_iterator schema::find(const std::string &name) const {
return schema_nodes_.find(result->get().type_index()); return schema_nodes_.find(result->get().type_index());
} }
void schema::dump(std::ostream &os) const {
os << repo_.name() << std::endl;
for (const auto &node: repo_) {
os << " " << node.name() << std::endl;
}
}
sql::query_context schema::build_add_constraint_context(const object::repository_node &node, sql::query_context schema::build_add_constraint_context(const object::repository_node &node,
const object::restriction &cons, const object::restriction &cons,
const sql::connection &conn) const { const sql::connection &conn) const {