QGIS API Documentation  2.18.3-Las Palmas (77b8c3d)
Public Member Functions | Protected Attributes | List of all members
QgsSQLStatement::NodeBinaryOperator Class Reference

Binary logical/arithmetical operator (AND, OR, =, +, ...) More...

#include <qgssqlstatement.h>

Inheritance diagram for QgsSQLStatement::NodeBinaryOperator:
Inheritance graph
[legend]

Public Member Functions

 NodeBinaryOperator (BinaryOperator op, Node *opLeft, Node *opRight)
 Constructor. More...
 
 ~NodeBinaryOperator ()
 
virtual void accept (Visitor &v) const override
 Support the visitor pattern. More...
 
virtual Nodeclone () const override
 Generate a clone of this node. More...
 
virtual QString dump () const override
 Abstract virtual dump method. More...
 
bool leftAssociative () const
 Is left associative ? More...
 
virtual NodeType nodeType () const override
 Abstract virtual that returns the type of this node. More...
 
BinaryOperator op () const
 Operator. More...
 
NodeopLeft () const
 Left operand. More...
 
NodeopRight () const
 Right operand. More...
 
int precedence () const
 Precedence. More...
 
- Public Member Functions inherited from QgsSQLStatement::Node
virtual ~Node ()
 

Protected Attributes

BinaryOperator mOp
 
NodemOpLeft
 
NodemOpRight
 

Detailed Description

Binary logical/arithmetical operator (AND, OR, =, +, ...)

Definition at line 301 of file qgssqlstatement.h.

Constructor & Destructor Documentation

QgsSQLStatement::NodeBinaryOperator::NodeBinaryOperator ( BinaryOperator  op,
Node opLeft,
Node opRight 
)
inline

Constructor.

Definition at line 305 of file qgssqlstatement.h.

QgsSQLStatement::NodeBinaryOperator::~NodeBinaryOperator ( )
inline

Definition at line 306 of file qgssqlstatement.h.

Member Function Documentation

virtual void QgsSQLStatement::NodeBinaryOperator::accept ( Visitor v) const
inlineoverridevirtual

Support the visitor pattern.

For any implementation this should look like

C++:

v.visit( *this );

Python:

v.visit( self)
Parameters
vA visitor that visits this node.

Implements QgsSQLStatement::Node.

Definition at line 320 of file qgssqlstatement.h.

QgsSQLStatement::Node * QgsSQLStatement::NodeBinaryOperator::clone ( ) const
overridevirtual

Generate a clone of this node.

Make sure that the clone does not contain any information which is generated in prepare and context related. Ownership is transferred to the caller.

Returns
a deep copy of this node.

Implements QgsSQLStatement::Node.

Definition at line 400 of file qgssqlstatement.cpp.

QString QgsSQLStatement::NodeBinaryOperator::dump ( ) const
overridevirtual

Abstract virtual dump method.

Returns
A statement which represents this node as string

Implements QgsSQLStatement::Node.

Definition at line 369 of file qgssqlstatement.cpp.

bool QgsSQLStatement::NodeBinaryOperator::leftAssociative ( ) const

Is left associative ?

Definition at line 334 of file qgssqlstatement.cpp.

virtual NodeType QgsSQLStatement::NodeBinaryOperator::nodeType ( ) const
inlineoverridevirtual

Abstract virtual that returns the type of this node.

Returns
The type of this node

Implements QgsSQLStatement::Node.

Definition at line 317 of file qgssqlstatement.h.

BinaryOperator QgsSQLStatement::NodeBinaryOperator::op ( ) const
inline

Operator.

Definition at line 309 of file qgssqlstatement.h.

Node* QgsSQLStatement::NodeBinaryOperator::opLeft ( ) const
inline

Left operand.

Definition at line 312 of file qgssqlstatement.h.

Node* QgsSQLStatement::NodeBinaryOperator::opRight ( ) const
inline

Right operand.

Definition at line 315 of file qgssqlstatement.h.

int QgsSQLStatement::NodeBinaryOperator::precedence ( ) const

Precedence.

Definition at line 289 of file qgssqlstatement.cpp.

Member Data Documentation

BinaryOperator QgsSQLStatement::NodeBinaryOperator::mOp
protected

Definition at line 331 of file qgssqlstatement.h.

Node* QgsSQLStatement::NodeBinaryOperator::mOpLeft
protected

Definition at line 332 of file qgssqlstatement.h.

Node* QgsSQLStatement::NodeBinaryOperator::mOpRight
protected

Definition at line 333 of file qgssqlstatement.h.


The documentation for this class was generated from the following files: