introduced execute_result

This commit is contained in:
Sascha Kühl
2026-02-10 11:57:09 +01:00
parent d9f9712487
commit 99677b0e21
28 changed files with 158 additions and 170 deletions
@@ -6,7 +6,7 @@
#include "matador/object/attribute.hpp"
#include "matador/sql/connection_info.hpp"
#include "matador/sql/query_context.hpp"
#include "matador/sql/execute_result.hpp"
#include "matador/utils/error.hpp"
#include "matador/utils/result.hpp"
@@ -18,6 +18,7 @@ using blob_type_t = std::vector<unsigned char>;
namespace matador::sql {
struct query_context;
class query_result_impl;
class statement_impl;
@@ -34,7 +35,7 @@ public:
[[nodiscard]] virtual utils::result<utils::version, utils::error> client_version() const = 0;
[[nodiscard]] virtual utils::result<utils::version, utils::error> server_version() const = 0;
virtual utils::result<size_t, utils::error> execute(const std::string &stmt) = 0;
virtual utils::result<execute_result, utils::error> execute(const std::string &stmt) = 0;
virtual utils::result<std::unique_ptr<query_result_impl>, utils::error> fetch(const query_context &context) = 0;
virtual utils::result<std::unique_ptr<statement_impl>, utils::error> prepare(const query_context &context) = 0;
@@ -13,6 +13,7 @@
#include <memory>
namespace matador::sql {
struct execute_result;
class query_result_impl;
class sql_error;
@@ -23,7 +24,7 @@ protected:
public:
virtual ~statement_impl() = default;
virtual utils::result<size_t, utils::error> execute(const parameter_binder& bindings) = 0;
virtual utils::result<execute_result, utils::error> execute(const parameter_binder& bindings) = 0;
virtual utils::result<std::unique_ptr<query_result_impl>, utils::error> fetch(const parameter_binder& bindings) = 0;
template < class Type >
@@ -12,7 +12,7 @@ protected:
public:
virtual ~statement_proxy() = default;
virtual utils::result<size_t, utils::error> execute(parameter_binder& bindings) = 0;
virtual utils::result<execute_result, utils::error> execute(parameter_binder& bindings) = 0;
virtual utils::result<std::unique_ptr<query_result_impl>, utils::error> fetch(parameter_binder& bindings) = 0;
template<class Type>