Back to index

lightning-sunbird  0.9+nobinonly
Public Member Functions | Public Attributes | Private Attributes
UnionExpr Class Reference

Represents a UnionExpr. More...

#include <Expr.h>

Inheritance diagram for UnionExpr:
Inheritance graph
[legend]
Collaboration diagram for UnionExpr:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 UnionExpr ()
 Creates a new UnionExpr.
virtual ~UnionExpr ()
 Destructor, will delete all Path Expressions.
nsresult addExpr (Expr *aExpr)
 Adds the PathExpr to this UnionExpr The ownership of the given Expr is passed over the UnionExpr, even on failure.
virtual nsresult evaluate (txIEvalContext *aContext, txAExprResult **aResult)=0
 Evaluates this Expr based on the given context node and processor state.

Public Attributes

 TX_DECL_EXPR
u8 op
char affinity
u8 flags
CollSeqpColl
ExprpLeft
ExprpRight
ExprListpList
Token token
Token span
int iTable
int iColumn
AggInfopAggInfo
int iAgg
int iRightJoinTable
SelectpSelect
TablepTab
SchemapSchema

Private Attributes

List expressions

Detailed Description

Represents a UnionExpr.

Definition at line 689 of file Expr.h.


Constructor & Destructor Documentation

Creates a new UnionExpr.

Definition at line 51 of file UnionExpr.cpp.

                     {
    //-- do nothing
}
UnionExpr::~UnionExpr ( ) [virtual]

Destructor, will delete all Path Expressions.

Definition at line 58 of file UnionExpr.cpp.

                      {
    txListIterator iter(&expressions);
    while (iter.hasNext()) {
         delete (Expr*)iter.next();
    }
} //-- ~UnionExpr

Here is the call graph for this function:


Member Function Documentation

Adds the PathExpr to this UnionExpr The ownership of the given Expr is passed over the UnionExpr, even on failure.

Adds the Expr to this UnionExpr.

Parameters:
aExprthe Expr to add to this UnionExpr
Returns:
nsresult indicating out of memory
Parameters:
exprthe Expr to add to this UnionExpr

Definition at line 70 of file UnionExpr.cpp.

{
    nsresult rv = expressions.add(aExpr);
    if (NS_FAILED(rv)) {
        delete aExpr;
    }
    return rv;
} //-- addExpr

Here is the call graph for this function:

Here is the caller graph for this function:

virtual nsresult Expr::evaluate ( txIEvalContext aContext,
txAExprResult **  aResult 
) [pure virtual, inherited]

Evaluates this Expr based on the given context node and processor state.

Parameters:
contextthe context node for evaluation of this Expr
psthe ContextState containing the stack information needed for evaluation
Returns:
the result of the evaluation

Here is the caller graph for this function:


Member Data Documentation

char Expr::affinity [inherited]

Definition at line 951 of file sqliteInt.h.

Definition at line 716 of file Expr.h.

u8 Expr::flags [inherited]

Definition at line 952 of file sqliteInt.h.

int Expr::iAgg [inherited]

Definition at line 962 of file sqliteInt.h.

int Expr::iColumn [inherited]

Definition at line 959 of file sqliteInt.h.

Definition at line 963 of file sqliteInt.h.

int Expr::iTable [inherited]

Definition at line 959 of file sqliteInt.h.

u8 Expr::op [inherited]

Reimplemented in MultiplicativeExpr, BooleanExpr, and AdditiveExpr.

Definition at line 950 of file sqliteInt.h.

AggInfo* Expr::pAggInfo [inherited]

Definition at line 961 of file sqliteInt.h.

CollSeq* Expr::pColl [inherited]

Definition at line 953 of file sqliteInt.h.

Expr* Expr::pLeft [inherited]

Definition at line 954 of file sqliteInt.h.

ExprList* Expr::pList [inherited]

Definition at line 955 of file sqliteInt.h.

Expr * Expr::pRight [inherited]

Definition at line 954 of file sqliteInt.h.

Schema* Expr::pSchema [inherited]

Definition at line 967 of file sqliteInt.h.

Select* Expr::pSelect [inherited]

Definition at line 964 of file sqliteInt.h.

Table* Expr::pTab [inherited]

Definition at line 966 of file sqliteInt.h.

Token Expr::span [inherited]

Definition at line 958 of file sqliteInt.h.

Token Expr::token [inherited]

Definition at line 957 of file sqliteInt.h.

Definition at line 712 of file Expr.h.


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