Quadcap Embeddable Database

com.quadcap.sql.InExpression.InSessionState Class Reference

Inheritance diagram for com.quadcap.sql.InExpression.InSessionState:

com.quadcap.sql.StatementContext List of all members.

Detailed Description

Private class to maintain per-session state for this expression.

Definition at line 75 of file InExpression.java.

Public Member Functions

 InSessionState (Session session)
 Construct "IN" session state.

boolean initialized ()
int priority ()
 Whenever you get around to finishing me is fine.

void finish (boolean abort) throws IOException
 Clean up any resources held by this context.

void reset () throws IOException
 Get ready for another day.

boolean contains (Value eval, Expression f, Cursor cursor) throws SQLException
 Does RHS set contain this value?


Package Functions

void init (Expression f, Cursor cursor) throws SQLException
 Initialize "IN" session state from RHS cursor.

void init (Row r) throws SQLException
 Initialize "IN" session state from RHS row.

boolean matchCorrelated (Expression f, Cursor cursor, Value eval) throws SQLException
 Correlated sub-queries can't be short-circuited, alas.


Package Attributes

boolean correlatedSubquery = true
Session session
Btree index = null
byte[] aByte = new byte[1]


Constructor & Destructor Documentation

com.quadcap.sql.InExpression.InSessionState.InSessionState Session  session  ) 
 

Construct "IN" session state.

Definition at line 84 of file InExpression.java.


Member Function Documentation

boolean com.quadcap.sql.InExpression.InSessionState.contains Value  eval,
Expression  f,
Cursor  cursor
throws SQLException
 

Does RHS set contain this value?

Definition at line 182 of file InExpression.java.

References com.quadcap.sql.InExpression.InSessionState.aByte, com.quadcap.sql.InExpression.InSessionState.contains(), com.quadcap.sql.InExpression.InSessionState.correlatedSubquery, com.quadcap.sql.InExpression.InSessionState.index, and com.quadcap.sql.InExpression.InSessionState.matchCorrelated().

Referenced by com.quadcap.sql.InExpression.InSessionState.contains(), and com.quadcap.sql.InExpression.getValue1().

void com.quadcap.sql.InExpression.InSessionState.finish boolean  abort  )  throws IOException
 

Clean up any resources held by this context.

Implements com.quadcap.sql.StatementContext.

Definition at line 165 of file InExpression.java.

References com.quadcap.sql.InExpression.InSessionState.finish(), com.quadcap.sql.Session.getDatabase(), com.quadcap.sql.InExpression.InSessionState.index, and com.quadcap.sql.InExpression.InSessionState.session.

Referenced by com.quadcap.sql.InExpression.InSessionState.finish().

void com.quadcap.sql.InExpression.InSessionState.init Row  r  )  throws SQLException [package]
 

Initialize "IN" session state from RHS row.

Definition at line 148 of file InExpression.java.

References com.quadcap.sql.InExpression.InSessionState.aByte, com.quadcap.sql.InExpression.InSessionState.index, com.quadcap.sql.Session.makeTempTree(), and com.quadcap.sql.InExpression.InSessionState.session.

void com.quadcap.sql.InExpression.InSessionState.init Expression  f,
Cursor  cursor
throws SQLException [package]
 

Initialize "IN" session state from RHS cursor.

Definition at line 95 of file InExpression.java.

References com.quadcap.sql.InExpression.InSessionState.aByte, com.quadcap.sql.Cursor.beforeFirst(), com.quadcap.sql.Cursor.close(), com.quadcap.sql.InExpression.InSessionState.correlatedSubquery, com.quadcap.sql.Tuple.getColumn(), com.quadcap.sql.Tuple.getColumnCount(), com.quadcap.sql.Cursor.getRow(), com.quadcap.sql.Column.getType(), com.quadcap.sql.InExpression.InSessionState.index, com.quadcap.sql.InExpression.InSessionState.init(), com.quadcap.sql.Row.item(), com.quadcap.sql.Session.makeTempTree(), com.quadcap.sql.Cursor.next(), and com.quadcap.sql.InExpression.InSessionState.session.

Referenced by com.quadcap.sql.InExpression.getValue1(), and com.quadcap.sql.InExpression.InSessionState.init().

boolean com.quadcap.sql.InExpression.InSessionState.initialized  ) 
 

Definition at line 88 of file InExpression.java.

References com.quadcap.sql.InExpression.InSessionState.index.

Referenced by com.quadcap.sql.InExpression.getValue1().

boolean com.quadcap.sql.InExpression.InSessionState.matchCorrelated Expression  f,
Cursor  cursor,
Value  eval
throws SQLException [package]
 

Correlated sub-queries can't be short-circuited, alas.

Definition at line 196 of file InExpression.java.

References com.quadcap.sql.Cursor.beforeFirst(), com.quadcap.sql.Cursor.close(), com.quadcap.sql.Tuple.getColumnCount(), com.quadcap.sql.Cursor.getRow(), com.quadcap.sql.Row.item(), com.quadcap.sql.InExpression.InSessionState.matchCorrelated(), com.quadcap.sql.Cursor.next(), and com.quadcap.sql.InExpression.InSessionState.session.

Referenced by com.quadcap.sql.InExpression.InSessionState.contains(), and com.quadcap.sql.InExpression.InSessionState.matchCorrelated().

int com.quadcap.sql.InExpression.InSessionState.priority  ) 
 

Whenever you get around to finishing me is fine.

Implements com.quadcap.sql.StatementContext.

Definition at line 162 of file InExpression.java.

void com.quadcap.sql.InExpression.InSessionState.reset  )  throws IOException
 

Get ready for another day.

Definition at line 177 of file InExpression.java.


Member Data Documentation

byte [] com.quadcap.sql.InExpression.InSessionState.aByte = new byte[1] [package]
 

Definition at line 79 of file InExpression.java.

Referenced by com.quadcap.sql.InExpression.InSessionState.contains(), and com.quadcap.sql.InExpression.InSessionState.init().

boolean com.quadcap.sql.InExpression.InSessionState.correlatedSubquery = true [package]
 

Definition at line 76 of file InExpression.java.

Referenced by com.quadcap.sql.InExpression.InSessionState.contains(), and com.quadcap.sql.InExpression.InSessionState.init().

Btree com.quadcap.sql.InExpression.InSessionState.index = null [package]
 

Definition at line 78 of file InExpression.java.

Referenced by com.quadcap.sql.InExpression.InSessionState.contains(), com.quadcap.sql.InExpression.InSessionState.finish(), com.quadcap.sql.InExpression.InSessionState.init(), and com.quadcap.sql.InExpression.InSessionState.initialized().

Session com.quadcap.sql.InExpression.InSessionState.session [package]
 

Definition at line 77 of file InExpression.java.

Referenced by com.quadcap.sql.InExpression.InSessionState.finish(), com.quadcap.sql.InExpression.InSessionState.init(), and com.quadcap.sql.InExpression.InSessionState.matchCorrelated().