It is possible to use expressions in the column list.
That could not be done before, because the column list was
parsed/processed before the table list.
Member Description
Handle and process the raw parse tree.
The result contains a Table or TableExprNode object.
Define the functions to visit each node type.
Get the actual result object from the result.
Push a new TableParseSelect on the stack.
Get the top of the TableParseSelect stack.
Pop the top from the TableParseSelect stack.
Clear the select stack.
Handle the select command.
Optionally the command is not executed (needed for the EXISTS operator).
Handle a MultiNode containing table info.
Handle the WHERE clause.
Handle the UPDATE SET clause.
Handle the INSERT columns.
Handle the INSERT values.
Handle a column specification in a create table.
Handle a record specification.
Handle a record field and add it to the Record.
Handle a record field with multiple values and add it to the Record.
The field can be a record or a vector of values.
Determine 'highest' constant data type and check if they match.
Interface
Public Members
- TaQLNodeHRValue() : itsInt(-1), itsElem(0), itsSet(0), itsNames(0)
- TaQLNodeHRValue (const TableExprNode& expr) : itsInt(-1), itsExpr(expr), itsElem(0), itsSet(0), itsNames(0)
- virtual ~TaQLNodeHRValue()
- Int getInt() const
- const String& getString() const
- const String& getAlias() const
- const String& getDtype() const
- const Record& getRecord() const
- const Table& getTable() const
- const TableExprNode& getExpr() const
- const TableExprNodeSetElem* getElem() const
- const TableExprNodeSet& getExprSet() const
- const Vector<String>* getNames() const
- void setInt (Int ival)
- void setString (const String& str)
- void setAlias (const String& alias)
- void setDtype (const String& dtype)
- void setRecord (const Record& record)
- void setTable (const Table& table)
- void setExpr (const TableExprNode& expr)
- void setElem (TableExprNodeSetElem* elem)
- void setExprSet (TableExprNodeSet* set)
- void setNames (Vector<String>* names)
Review Status
- Programs:
- Tests:
Prerequisite
Synopsis
TaQLNodeHRValue is a specialization of class
TaQLNodeResultRep.
It contains the values resulting from handling a particular node.
The object is effectively a collection of all possible values that
need to be returned. Which values are filled in, depends on which node
has been processed.
The getHR function in TaQLNodeHandler is very useful to
extract/cast the TaQLNodeHRValue object from the general
TaQLNodeResult object.
Member Description
TaQLNodeHRValue() : itsInt(-1), itsElem(0), itsSet(0), itsNames(0)
TaQLNodeHRValue (const TableExprNode& expr) : itsInt(-1), itsExpr(expr), itsElem(0), itsSet(0), itsNames(0)
Get the values.
Set the values.
If a pointer is given, it takes over the pointer.