rename compile to build and added sql_hash to query_context
This commit is contained in:
@@ -9,22 +9,22 @@ namespace matador::query {
|
||||
|
||||
utils::result<sql::execute_result, utils::error> executable_query::execute(const sql::executor &exec) const {
|
||||
query_builder compiler;
|
||||
return exec.execute(compiler.compile(*context_, exec.dialect(), std::nullopt));
|
||||
return exec.execute(compiler.build(*context_, exec.dialect(), std::nullopt));
|
||||
}
|
||||
|
||||
utils::result<sql::statement, utils::error> executable_query::prepare(sql::executor &exec) const {
|
||||
query_builder compiler;
|
||||
return exec.prepare(compiler.compile(*context_, exec.dialect(), std::nullopt));
|
||||
return exec.prepare(compiler.build(*context_, exec.dialect(), std::nullopt));
|
||||
}
|
||||
|
||||
sql::query_context executable_query::compile( const sql::executor& exec ) const {
|
||||
query_builder compiler;
|
||||
return compiler.compile(*context_, exec.dialect(), std::nullopt);
|
||||
return compiler.build(*context_, exec.dialect(), std::nullopt);
|
||||
}
|
||||
|
||||
std::string executable_query::str(const sql::executor &exec) const {
|
||||
query_builder compiler;
|
||||
return exec.str(compiler.compile(*context_, exec.dialect(), std::nullopt));
|
||||
return exec.str(compiler.build(*context_, exec.dialect(), std::nullopt));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ sql::record *create_prototype(const std::vector<object::attribute> &prototype) {
|
||||
}
|
||||
utils::result<sql::query_result<sql::record>, utils::error> fetchable_query::fetch_all(const sql::executor &exec) const {
|
||||
query_builder compiler;
|
||||
auto ctx = compiler.compile(*context_, exec.dialect(), std::nullopt);
|
||||
auto ctx = compiler.build(*context_, exec.dialect(), std::nullopt);
|
||||
ctx.resolver = exec.resolver();
|
||||
return exec.fetch(ctx)
|
||||
.and_then([](auto &&res) {
|
||||
@@ -38,7 +38,7 @@ utils::result<sql::query_result<sql::record>, utils::error> fetchable_query::fet
|
||||
|
||||
utils::result<std::optional<sql::record>, utils::error> fetchable_query::fetch_one(const sql::executor &exec) const {
|
||||
query_builder compiler;
|
||||
auto ctx = compiler.compile(*context_, exec.dialect(), std::nullopt);
|
||||
auto ctx = compiler.build(*context_, exec.dialect(), std::nullopt);
|
||||
ctx.resolver = exec.resolver();
|
||||
auto result = exec.fetch(ctx);
|
||||
if (!result.is_ok()) {
|
||||
@@ -64,7 +64,7 @@ std::string fetchable_query::str(const sql::dialect &d) const {
|
||||
|
||||
sql::query_context fetchable_query::compile(const sql::dialect &d) const {
|
||||
query_builder compiler;
|
||||
return compiler.compile(*context_, d, std::nullopt);
|
||||
return compiler.build(*context_, d, std::nullopt);
|
||||
}
|
||||
|
||||
utils::result<std::unique_ptr<sql::query_result_impl>, utils::error> fetchable_query::fetch(const sql::executor &exec, const std::type_index& index) const {
|
||||
|
||||
@@ -17,10 +17,9 @@
|
||||
#include "matador/sql/dialect.hpp"
|
||||
|
||||
namespace matador::query {
|
||||
sql::query_context query_builder::compile(const query_data& data,
|
||||
const sql::dialect& d,
|
||||
const std::optional<std::reference_wrapper<const sql::connection_impl>>
|
||||
conn) {
|
||||
sql::query_context query_builder::build(const query_data& data,
|
||||
const sql::dialect& d,
|
||||
const std::optional<std::reference_wrapper<const sql::connection_impl>> conn) {
|
||||
data_ = &data;
|
||||
dialect_ = &d;
|
||||
connection_ = conn;
|
||||
@@ -33,6 +32,7 @@ sql::query_context query_builder::compile(const query_data& data,
|
||||
dialect_ = nullptr;
|
||||
data_ = nullptr;
|
||||
|
||||
query_.sql_hash = std::hash<std::string>{}(query_.sql);
|
||||
return {query_};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user