org.h2.index
Class IndexCursor

java.lang.Object
  extended by org.h2.index.IndexCursor
All Implemented Interfaces:
Cursor

public class IndexCursor
extends java.lang.Object
implements Cursor

The filter used to walk through an index. This class supports IN(..) and IN(SELECT ...) optimizations.


Constructor Summary
IndexCursor(TableFilter filter)
           
 
Method Summary
 void find(Session s, java.util.ArrayList<IndexCondition> indexConditions)
          Re-evaluate the start and end values of the index search for rows.
 Row get()
          Get the complete current row.
 SearchRow getSearchRow()
          Get the current row.
 boolean isAlwaysFalse()
          Check if the result is empty for sure.
 boolean next()
          Skip to the next row if one is available.
 boolean previous()
          Skip to the previous row if one is available.
 void setIndex(Index index)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IndexCursor

public IndexCursor(TableFilter filter)
Method Detail

setIndex

public void setIndex(Index index)

find

public void find(Session s,
                 java.util.ArrayList<IndexCondition> indexConditions)
Re-evaluate the start and end values of the index search for rows.

Parameters:
s - the session
indexConditions - the index conditions

isAlwaysFalse

public boolean isAlwaysFalse()
Check if the result is empty for sure.

Returns:
true if it is

get

public Row get()
Description copied from interface: Cursor
Get the complete current row. All column are available.

Specified by:
get in interface Cursor
Returns:
the complete row

getSearchRow

public SearchRow getSearchRow()
Description copied from interface: Cursor
Get the current row. Only the data for indexed columns is available in this row.

Specified by:
getSearchRow in interface Cursor
Returns:
the search row

next

public boolean next()
Description copied from interface: Cursor
Skip to the next row if one is available.

Specified by:
next in interface Cursor
Returns:
true if another row is available

previous

public boolean previous()
Description copied from interface: Cursor
Skip to the previous row if one is available. No filtering is made here.

Specified by:
previous in interface Cursor
Returns:
true if another row is available