implemented lazy loading for object_ptr and belongs_to

This commit is contained in:
2026-01-15 12:40:54 +01:00
parent db8e137c11
commit 7626331866
81 changed files with 1790 additions and 927 deletions
+8 -5
View File
@@ -49,7 +49,10 @@ utils::result<size_t, utils::error> test_connection::execute(const std::string &
}
utils::result<std::unique_ptr<sql::query_result_impl>, utils::error> test_connection::fetch(const sql::query_context &context) {
return utils::ok(std::make_unique<sql::query_result_impl>(std::make_unique<test_result_reader>(), context.prototype, context.prototype.size()));
return utils::ok(std::make_unique<sql::query_result_impl>(std::make_unique<test_result_reader>(),
context.prototype,
context.resolver_factory,
context.prototype.size()));
}
utils::result<std::unique_ptr<sql::statement_impl>, utils::error> test_connection::prepare(const sql::query_context &context) {
@@ -61,12 +64,12 @@ utils::result<std::vector<object::attribute>, utils::error> test_connection::des
return utils::ok(std::vector<object::attribute>{});
}
utils::result<bool, utils::error> test_connection::exists(const std::string &/*schema_name*/, const std::string &/*table_name*/) {
utils::result<bool, utils::error> test_connection::exists(const std::string &/*schema_name*/,
const std::string &/*table_name*/) {
return utils::ok(false);
}
std::string test_connection::to_escaped_string(const utils::blob_type_t& value) const {
std::string test_connection::to_escaped_string(const utils::blob_type_t &value) const {
return utils::to_string(value);
}
}
}
+4 -1
View File
@@ -19,7 +19,10 @@ utils::result<size_t, utils::error> test_statement::execute(const sql::parameter
}
utils::result<std::unique_ptr<sql::query_result_impl>, utils::error> test_statement::fetch(const sql::parameter_binder &/*bindings*/) {
return utils::ok(std::make_unique<sql::query_result_impl>(std::make_unique<test_result_reader>(), query_.prototype, query_.prototype.size()));
return utils::ok(std::make_unique<sql::query_result_impl>(std::make_unique<test_result_reader>(),
query_.prototype,
query_.resolver_factory,
query_.prototype.size()));
}
void test_statement::reset() {}