#include "matador/sql/condition.hpp" namespace matador::sql { condition::type>::condition(const column &fld, basic_condition::operand_t op, const placeholder &val) : basic_column_condition(fld, op), value(val) {} std::string condition::type>::evaluate(dialect &d, query_context &query) const { query.bind_vars.emplace_back(field_.name); return d.prepare_identifier(field_) + " " + operand + " " + d.next_placeholder(query.bind_vars); } condition::condition(column col, basic_condition::operand_t op, query_context &q) : basic_column_condition(std::move(col), op), query_(q) {} std::string condition::evaluate(dialect &d, query_context &query) const { std::string result(d.prepare_identifier(field_) + " " + operand + " ("); result += (")"); return result; } condition operator==(const column &a, const column &b) { return {a, basic_condition::operand_t::EQUAL, b}; } }