QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
Public Member Functions | Protected Attributes | List of all members
QgsSQLStatement::NodeJoin Class Reference

Join definition. More...

#include <qgssqlstatement.h>

Inheritance diagram for QgsSQLStatement::NodeJoin:
Inheritance graph

Public Member Functions

 NodeJoin (NodeTableDef *tabledef, Node *onExpr, JoinType type)
 Constructor with table definition, ON expression. More...
 NodeJoin (NodeTableDef *tabledef, QList< QString > usingColumns, JoinType type)
 Constructor with table definition and USING columns. More...
virtual ~NodeJoin ()
virtual void accept (Visitor &v) const override
 Support the visitor pattern. More...
virtual Nodeclone () const override
 Generate a clone of this node. More...
NodeJoincloneThis () const
 Clone with same type return. More...
virtual QString dump () const override
 Abstract virtual dump method. More...
virtual NodeType nodeType () const override
 Abstract virtual that returns the type of this node. More...
NodeonExpr () const
 On expression. More...
NodeTableDeftableDef () const
 Table definition. More...
JoinType type () const
 Join type. More...
QList< QStringusingColumns () const
 Columns referenced by USING. More...
- Public Member Functions inherited from QgsSQLStatement::Node
virtual ~Node ()

Protected Attributes

JoinType mType
QList< QStringmUsingColumns

Detailed Description

Join definition.

Definition at line 576 of file qgssqlstatement.h.

Constructor & Destructor Documentation

◆ NodeJoin() [1/2]

QgsSQLStatement::NodeJoin::NodeJoin ( NodeTableDef tabledef,
Node onExpr,
JoinType  type 

Constructor with table definition, ON expression.

Definition at line 580 of file qgssqlstatement.h.

◆ NodeJoin() [2/2]

QgsSQLStatement::NodeJoin::NodeJoin ( NodeTableDef tabledef,
QList< QString usingColumns,
JoinType  type 

Constructor with table definition and USING columns.

Definition at line 582 of file qgssqlstatement.h.

◆ ~NodeJoin()

virtual QgsSQLStatement::NodeJoin::~NodeJoin ( )

Definition at line 583 of file qgssqlstatement.h.

Member Function Documentation

◆ accept()

virtual void QgsSQLStatement::NodeJoin::accept ( Visitor v) const

Support the visitor pattern.

For any implementation this should look like


v.visit( *this );


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

Implements QgsSQLStatement::Node.

Definition at line 600 of file qgssqlstatement.h.

◆ clone()

QgsSQLStatement::Node * QgsSQLStatement::NodeJoin::clone ( ) const

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.

a deep copy of this node.

Implements QgsSQLStatement::Node.

Definition at line 659 of file qgssqlstatement.cpp.

◆ cloneThis()

QgsSQLStatement::NodeJoin * QgsSQLStatement::NodeJoin::cloneThis ( ) const

Clone with same type return.

Definition at line 664 of file qgssqlstatement.cpp.

◆ dump()

QString QgsSQLStatement::NodeJoin::dump ( ) const

Abstract virtual dump method.

A statement which represents this node as string

Implements QgsSQLStatement::Node.

Definition at line 628 of file qgssqlstatement.cpp.

◆ nodeType()

virtual NodeType QgsSQLStatement::NodeJoin::nodeType ( ) const

Abstract virtual that returns the type of this node.

The type of this node

Implements QgsSQLStatement::Node.

Definition at line 597 of file qgssqlstatement.h.

◆ onExpr()

Node* QgsSQLStatement::NodeJoin::onExpr ( ) const

On expression.

Will be nullptr if usingColumns() is not empty

Definition at line 589 of file qgssqlstatement.h.

◆ tableDef()

NodeTableDef* QgsSQLStatement::NodeJoin::tableDef ( ) const

Table definition.

Definition at line 586 of file qgssqlstatement.h.

◆ type()

JoinType QgsSQLStatement::NodeJoin::type ( ) const

Join type.

Definition at line 595 of file qgssqlstatement.h.

◆ usingColumns()

QList<QString> QgsSQLStatement::NodeJoin::usingColumns ( ) const

Columns referenced by USING.

Definition at line 592 of file qgssqlstatement.h.

Member Data Documentation

◆ mOnExpr

Node* QgsSQLStatement::NodeJoin::mOnExpr

Definition at line 607 of file qgssqlstatement.h.

◆ mTableDef

NodeTableDef* QgsSQLStatement::NodeJoin::mTableDef

Definition at line 606 of file qgssqlstatement.h.

◆ mType

JoinType QgsSQLStatement::NodeJoin::mType

Definition at line 609 of file qgssqlstatement.h.

◆ mUsingColumns

QList<QString> QgsSQLStatement::NodeJoin::mUsingColumns

Definition at line 608 of file qgssqlstatement.h.

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