Contains functions to create query conditions. More...
#include "matador/sql/types.hpp"
#include "matador/sql/column.hpp"
#include "matador/sql/token.hpp"
#include "matador/sql/basic_query.hpp"
#include <string>
#include <sstream>
#include <memory>
#include <type_traits>
#include <vector>
#include <utility>
#include <array>
Classes | |
class | matador::condition< column, std::initializer_list< V > > |
Condition class representing an IN condition. More... | |
class | matador::condition< column, detail::basic_query > |
Condition class representing an IN condition. More... | |
class | matador::condition< column, std::pair< T, T > > |
Between condition. More... | |
class | matador::condition< condition< L1, R1 >, condition< L2, R2 > > |
Logical binary condition. More... | |
class | matador::condition< condition< L, R >, void > |
Logical unary condition. More... | |
Namespaces | |
namespace | matador |
The Open Object Store namespace. | |
namespace | matador::detail |
Detail namespace of the open object store. | |
Functions | |
template<class V > | |
condition< column, std::initializer_list< V > > | matador::in (const matador::column &col, std::initializer_list< V > args) |
Creates an IN condition for a given column and a list of values. | |
condition< column, detail::basic_query > | matador::in (const matador::column &col, detail::basic_query &q) |
Creates an IN condition for a given column and a query to be executed. | |
template<class T > | |
condition< column, std::pair< T, T > > | matador::between (const matador::column &col, T low, T high) |
Creates a between condition. | |
condition< column, std::string > | matador::like (const matador::column &col, const std::string &val) |
Creates a like condition. | |
template<class T > | |
condition< column, T > | matador::operator== (const column &col, T val) |
Condition equality operator for a column and a value. | |
condition< column, detail::basic_query > | matador::equals (const column &col, detail::basic_query &q) |
Condition equality method for a column and a query. | |
template<class T > | |
condition< column, T > | matador::operator!= (const column &col, T val) |
Condition unequality operator for a column and a value. | |
template<class T > | |
condition< column, T > | matador::operator< (const column &col, T val) |
Condition less operator for a column and a value. | |
template<class T > | |
condition< column, T > | matador::operator<= (const column &col, T val) |
Condition less or equal operator for a column and a value. | |
template<class T > | |
condition< column, T > | matador::operator> (const column &col, T val) |
Condition greater operator for a column and a value. | |
template<class T > | |
condition< column, T > | matador::operator>= (const column &col, T val) |
Condition greater or equal operator for a column and a value. | |
template<class L1 , class R1 , class L2 , class R2 > | |
condition< condition< L1, R1 >, condition< L2, R2 > > | matador::operator&& (const condition< L1, R1 > &l, const condition< L2, R2 > &r) |
AND operation condition consisting of a left and right hand condition. | |
template<class L1 , class R1 , class L2 , class R2 > | |
condition< condition< L1, R1 >, condition< L2, R2 > > | matador::operator|| (const condition< L1, R1 > &l, const condition< L2, R2 > &r) |
OR operation condition consisting of a left and right hand condition. | |
template<class L , class R > | |
condition< condition< L, R >, void > | matador::operator! (const condition< L, R > &c) |
Negates a given condition. | |
template<class L , class R > | |
std::shared_ptr< detail::basic_condition > | matador::make_condition (const condition< L, R > &cond) |
Creates a shared condition from a given condition object. | |
Contains functions to create query conditions.
This file contains some functions to create query conditions. These functions wrap the constructing of a concrete condition and allows expression like condition programming.