Quadcap Embeddable Database

com.quadcap.sql.VectorExpression Class Reference

Inheritance diagram for com.quadcap.sql.VectorExpression:

com.quadcap.sql.TableExpression Externalizable com.quadcap.sql.Expression List of all members.

Detailed Description

This might be a vector (row value constructor) or a cursor (table value constructor).

Author:
Stan Bailes

Definition at line 62 of file VectorExpression.java.

Public Member Functions

 VectorExpression ()
void addElement (Expression expression) throws RecognitionException
int rank ()
 Returns zero if this is a scalar expression, one if it's a vector type and 2 if it's a table/cursor type.

boolean isUpdatable ()
 Is this table expression updatable?

void getBaseTables (Vector v)
 Return a vector consisting of the names of the underlying base tables that are used to derive this table expression.

int size ()
final Expression get (int i)
Row getValues (Session session, Cursor cursor) throws SQLException
 If this is a vector, return the value.

Cursor getCursor (Session session, Cursor cursor) throws SQLException
 Return a cursor which can be used to access this table expression.

void invert ()
 Negate the logical value of the expression.

void visitSubExpressions (ExpressionVisitor ev)
 Give a visitor access to the parse tree.

String toString ()
void readExternal (ObjectInput in) throws IOException, ClassNotFoundException
void writeExternal (ObjectOutput out) throws IOException
Value getParameter (Session session, int pos)
 Return the (one-based) parameter from this VectorExpression which is assumed to be a simple list of parameterized expressions.

String name ()

Package Attributes

Vector expressions = new Vector()
int rank = 1


Constructor & Destructor Documentation

com.quadcap.sql.VectorExpression.VectorExpression  ) 
 

Definition at line 68 of file VectorExpression.java.


Member Function Documentation

void com.quadcap.sql.VectorExpression.addElement Expression  expression  )  throws RecognitionException
 

Definition at line 70 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.addElement(), com.quadcap.sql.VectorExpression.expressions, and com.quadcap.sql.VectorExpression.rank.

Referenced by com.quadcap.sql.VectorExpression.addElement(), com.quadcap.sql.SQLParser.caseExpression(), com.quadcap.sql.SQLParser.castExpression(), com.quadcap.sql.SQLParser.tableValueConstructor(), and com.quadcap.sql.SQLParser.vectorExpression().

final Expression com.quadcap.sql.VectorExpression.get int  i  ) 
 

Definition at line 91 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.expressions, and com.quadcap.sql.VectorExpression.get().

Referenced by com.quadcap.sql.StmtInsert.execute(), com.quadcap.sql.VectorExpression.get(), com.quadcap.sql.VectorExpression.getParameter(), com.quadcap.sql.FunctionExpression.getType(), and com.quadcap.sql.StmtInsert.setVrow().

void com.quadcap.sql.VectorExpression.getBaseTables Vector  v  )  [virtual]
 

Return a vector consisting of the names of the underlying base tables that are used to derive this table expression.

Implements com.quadcap.sql.TableExpression.

Definition at line 87 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.getBaseTables().

Referenced by com.quadcap.sql.VectorExpression.getBaseTables().

Cursor com.quadcap.sql.VectorExpression.getCursor Session  session,
Cursor  cursor
throws SQLException [virtual]
 

Return a cursor which can be used to access this table expression.

Implements com.quadcap.sql.TableExpression.

Definition at line 110 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.expressions, com.quadcap.sql.VectorExpression.getCursor(), and com.quadcap.sql.Expression.getValues().

Referenced by com.quadcap.sql.VectorExpression.getCursor().

Value com.quadcap.sql.VectorExpression.getParameter Session  session,
int  pos
 

Return the (one-based) parameter from this VectorExpression which is assumed to be a simple list of parameterized expressions.

Definition at line 163 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.expressions, com.quadcap.sql.VectorExpression.get(), com.quadcap.sql.VectorExpression.getParameter(), and com.quadcap.sql.Expression.getValue().

Referenced by com.quadcap.sql.VectorExpression.getParameter().

Row com.quadcap.sql.VectorExpression.getValues Session  session,
Cursor  cursor
throws SQLException
 

If this is a vector, return the value.

Reimplemented from com.quadcap.sql.Expression.

Definition at line 95 of file VectorExpression.java.

References com.quadcap.sql.Row.addElement(), com.quadcap.sql.VectorExpression.expressions, com.quadcap.sql.Expression.getValue(), com.quadcap.sql.Expression.getValues(), and com.quadcap.sql.VectorExpression.getValues().

Referenced by com.quadcap.sql.FunctionExpression.getValue(), and com.quadcap.sql.VectorExpression.getValues().

void com.quadcap.sql.VectorExpression.invert  ) 
 

Negate the logical value of the expression.

Reimplemented from com.quadcap.sql.Expression.

Definition at line 129 of file VectorExpression.java.

boolean com.quadcap.sql.VectorExpression.isUpdatable  )  [virtual]
 

Is this table expression updatable?

Implements com.quadcap.sql.TableExpression.

Definition at line 85 of file VectorExpression.java.

String com.quadcap.sql.VectorExpression.name  )  [virtual]
 

Implements com.quadcap.sql.TableExpression.

Definition at line 175 of file VectorExpression.java.

int com.quadcap.sql.VectorExpression.rank  )  [virtual]
 

Returns zero if this is a scalar expression, one if it's a vector type and 2 if it's a table/cursor type.

Implements com.quadcap.sql.TableExpression.

Definition at line 83 of file VectorExpression.java.

void com.quadcap.sql.VectorExpression.readExternal ObjectInput  in  )  throws IOException, ClassNotFoundException
 

Definition at line 149 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.expressions, and com.quadcap.sql.VectorExpression.readExternal().

Referenced by com.quadcap.sql.VectorExpression.readExternal().

int com.quadcap.sql.VectorExpression.size  ) 
 

Definition at line 89 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.expressions.

Referenced by com.quadcap.sql.StmtInsert.execute(), com.quadcap.sql.FunctionExpression.getType(), and com.quadcap.sql.StmtInsert.setVrow().

String com.quadcap.sql.VectorExpression.toString  )  [virtual]
 

Implements com.quadcap.sql.Expression.

Definition at line 140 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.expressions.

Referenced by com.quadcap.sql.FunctionExpression.toString().

void com.quadcap.sql.VectorExpression.visitSubExpressions ExpressionVisitor  ev  ) 
 

Give a visitor access to the parse tree.

Reimplemented from com.quadcap.sql.Expression.

Definition at line 133 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.expressions, com.quadcap.sql.ExpressionVisitor.visit(), and com.quadcap.sql.VectorExpression.visitSubExpressions().

Referenced by com.quadcap.sql.VectorExpression.visitSubExpressions(), and com.quadcap.sql.FunctionExpression.visitSubExpressions().

void com.quadcap.sql.VectorExpression.writeExternal ObjectOutput  out  )  throws IOException
 

Definition at line 155 of file VectorExpression.java.

References com.quadcap.sql.VectorExpression.expressions, and com.quadcap.sql.VectorExpression.writeExternal().

Referenced by com.quadcap.sql.VectorExpression.writeExternal().


Member Data Documentation

Vector com.quadcap.sql.VectorExpression.expressions = new Vector() [package]
 

Definition at line 65 of file VectorExpression.java.

Referenced by com.quadcap.sql.VectorExpression.addElement(), com.quadcap.sql.VectorExpression.get(), com.quadcap.sql.VectorExpression.getCursor(), com.quadcap.sql.VectorExpression.getParameter(), com.quadcap.sql.VectorExpression.getValues(), com.quadcap.sql.VectorExpression.readExternal(), com.quadcap.sql.VectorExpression.size(), com.quadcap.sql.VectorExpression.toString(), com.quadcap.sql.VectorExpression.visitSubExpressions(), and com.quadcap.sql.VectorExpression.writeExternal().

int com.quadcap.sql.VectorExpression.rank = 1 [package]
 

Definition at line 66 of file VectorExpression.java.

Referenced by com.quadcap.sql.VectorExpression.addElement(), and com.quadcap.sql.StmtInsert.execute().