saffron.rel
Class Correlator

java.lang.Object
  |
  +--saffron.rel.Rel
        |
        +--saffron.rel.Join
              |
              +--saffron.rel.Correlator

public class Correlator
extends Join

A Correlator behaves like a kind of Join, but works by setting variables in its environment and restarting its right-hand input. It is used to represent a correlated query; one implementation option is to de-correlate the expression.

Since:
23 September, 2001
Version:
$Id: //open/saffron/src/main/saffron/rel/Correlator.java#3 $
Author:
jhyde

Nested Class Summary
 
Nested classes inherited from class saffron.rel.Join
Join.JoinType
 
Nested classes inherited from class saffron.rel.Rel
 
Field Summary
(package private)  Expression[] correlations
           
 
Fields inherited from class saffron.rel.Join
condition, joinType, left, right, variablesStopped
 
Fields inherited from class saffron.rel.Rel
cluster, digest, emptyArray, id, nextId, rowType
 
Constructor Summary
(package private) Correlator(Cluster cluster, Rel left, Rel right, int joinType, Expression[] correlations)
          Creates a Correlator.
 
Method Summary
 Object clone()
           
 
Methods inherited from class saffron.rel.Join
childrenAccept, deriveRowType, explain, getChildExps, getCondition, getInputs, getJoinType, getLeft, getRight, getVariablesStopped, register, registerStoppedVariable, replaceInput, setVariablesStopped, switchJoinType
 
Methods inherited from class saffron.rel.Rel
computeDigest, computeSelfCost, getCluster, getConvention, getCorelVariable, getEnvironment, getId, getInput, getOrCreateCorelVariable, getParentEnv, getQualifier, getQuery, getRelTypeName, getRows, getRowType, getTable, getType, implement, implementExp, implementExps, implementFieldAccess, implementSelf, isAccessTo, isDistinct, onRegister, recomputeDigest, registerCorelVariable, setCorelVariable, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

correlations

Expression[] correlations
Constructor Detail

Correlator

Correlator(Cluster cluster,
           Rel left,
           Rel right,
           int joinType,
           Expression[] correlations)
Creates a Correlator.

Parameters:
cluster - Cluster this relational expression belongs to
left - left input relational expression
right - right input relational expression
joinType - join type (see Join.joinType)
correlations - set of expressions to set as variables each time a row arrives from the left input
Method Detail

clone

public Object clone()
Overrides:
clone in class Join

SourceForge.net_Logo