TurtleDB
A mini distributed database system
ca.uqac.dim.turtledb.RelationStreamIterator Class Reference
Inheritance diagram for ca.uqac.dim.turtledb.RelationStreamIterator:
Collaboration diagram for ca.uqac.dim.turtledb.RelationStreamIterator:

List of all members.

Public Member Functions

 RelationStreamIterator ()
final boolean hasNext ()
final Tuple next ()
final void remove ()
void reset ()

Protected Member Functions

abstract Tuple internalNext ()

Protected Attributes

List< Tuplem_outputTuples
Tuple m_nextTuple
boolean m_internalNextCalled

Detailed Description

Definition at line 23 of file RelationStreamIterator.java.


Constructor & Destructor Documentation


Member Function Documentation

abstract Tuple ca.uqac.dim.turtledb.RelationStreamIterator.internalNext ( ) [protected, pure virtual]

Method that must be implemented by every non-abstract relation; it returns the next tuple of the enumeration, if any. Methods next and hasNext use the return value of internalNext and additionally remove any duplicate tuples from the output enumeration. Hence a call to next may result in multiple calls to the relation's internalNext, if the tuples returned are already part of the result (this is especially true of Projections.

Returns:
The next tuple, null if no such tuple exists

Implemented in ca.uqac.dim.turtledb.Table.TableStreamIterator, ca.uqac.dim.turtledb.VariableTable.VariableTableStreamIterator, ca.uqac.dim.turtledb.Join.JoinStreamIterator, ca.uqac.dim.turtledb.Product.ProductStreamIterator, and ca.uqac.dim.turtledb.Intersection.IntersectionIterator.


Member Data Documentation


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