16 #ifndef QGSSQLEXPRESSIONCOMPILER_H 
   17 #define QGSSQLEXPRESSIONCOMPILER_H 
   21 #include "qgis_core.h" 
   58       CaseInsensitiveStringMatch = 1,  
 
   59       LikeIsCaseInsensitive = 1 << 1, 
 
   60       NoNullInBooleanLogic = 1 << 2, 
 
   61       NoUnaryMinus = 1 << 3, 
 
   62       IntegerDivisionResultsInInteger = 1 << 4, 
 
   64     Q_DECLARE_FLAGS( Flags, Flag )
 
   85     virtual QString result();
 
  111     virtual QString quotedIdentifier( 
const QString &identifier );
 
  120     virtual QString quotedValue( 
const QVariant &value, 
bool &ok );
 
  136     virtual QString sqlFunctionFromFunctionName( 
const QString &fnName ) 
const;
 
  145     virtual QStringList sqlArgumentsFromFunctionName( 
const QString &fnName, 
const QStringList &fnArgs ) 
const;
 
  153     virtual QString castToReal( 
const QString &value ) 
const;
 
  170     virtual QString castToText( 
const QString &value ) 
const;
 
  177     virtual QString castToInt( 
const QString &value ) 
const;
 
  193     bool mIgnoreStaticNodes = 
false;
 
BinaryOperator
list of binary operators
Abstract base class for all nodes that can appear in an expression.
Class for parsing and evaluation of expressions (formerly called "search strings").
Container of fields for a vector layer.
Generic expression compiler for translation to provider specific SQL WHERE clauses.
Result
Possible results from expression compilation.
@ Complete
Expression was successfully compiled and can be completely delegated to provider.
@ Partial
Expression was partially compiled, but provider will return extra records and results must be double-...
virtual ~QgsSqlExpressionCompiler()=default
Flag
Enumeration of flags for how provider handles SQL clauses.
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsField::ConfigurationFlags) CORE_EXPORT QDataStream &operator<<(QDataStream &out
Writes the field to stream out. QGIS version compatibility is not guaranteed.