org.eigenbase.rel.metadata
Class RelMdColumnOrigins

java.lang.Object
  extended by org.eigenbase.rel.metadata.ReflectiveRelMetadataProvider
      extended by org.eigenbase.rel.metadata.RelMdColumnOrigins
All Implemented Interfaces:
RelMetadataProvider, ReflectiveVisitor
Direct Known Subclasses:
LoptMetadataProvider.SimpleColumnOrigins

public class RelMdColumnOrigins
extends ReflectiveRelMetadataProvider

RelMdColumnOrigins supplies a default implementation of RelMetadataQuery.getColumnOrigins(org.eigenbase.rel.RelNode, int) for the standard logical algebra.

Version:
$Id: //open/dev/farrago/src/org/eigenbase/rel/metadata/RelMdColumnOrigins.java#10 $
Author:
John V. Sichi

Constructor Summary
RelMdColumnOrigins()
           
 
Method Summary
private  Set<RelColumnOrigin> createDerivedColumnOrigins(Set<RelColumnOrigin> inputSet)
           
 Set<RelColumnOrigin> getColumnOrigins(AggregateRelBase rel, int iOutputColumn)
           
 Set<RelColumnOrigin> getColumnOrigins(FilterRelBase rel, int iOutputColumn)
           
 Set<RelColumnOrigin> getColumnOrigins(JoinRelBase rel, int iOutputColumn)
           
 Set<RelColumnOrigin> getColumnOrigins(ProjectRelBase rel, int iOutputColumn)
           
 Set<RelColumnOrigin> getColumnOrigins(RelNode rel, int iOutputColumn)
           
 Set<RelColumnOrigin> getColumnOrigins(SetOpRel rel, int iOutputColumn)
           
 Set<RelColumnOrigin> getColumnOrigins(SortRel rel, int iOutputColumn)
           
 Set<RelColumnOrigin> getColumnOrigins(TableFunctionRelBase rel, int iOutputColumn)
           
protected  Set<RelColumnOrigin> invokeGetColumnOrigins(RelNode rel, int iOutputColumn)
           
 
Methods inherited from class org.eigenbase.rel.metadata.ReflectiveRelMetadataProvider
getRelMetadata, mapParameterTypes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RelMdColumnOrigins

public RelMdColumnOrigins()
Method Detail

getColumnOrigins

public Set<RelColumnOrigin> getColumnOrigins(AggregateRelBase rel,
                                             int iOutputColumn)

getColumnOrigins

public Set<RelColumnOrigin> getColumnOrigins(JoinRelBase rel,
                                             int iOutputColumn)

getColumnOrigins

public Set<RelColumnOrigin> getColumnOrigins(SetOpRel rel,
                                             int iOutputColumn)

getColumnOrigins

public Set<RelColumnOrigin> getColumnOrigins(ProjectRelBase rel,
                                             int iOutputColumn)

getColumnOrigins

public Set<RelColumnOrigin> getColumnOrigins(FilterRelBase rel,
                                             int iOutputColumn)

getColumnOrigins

public Set<RelColumnOrigin> getColumnOrigins(SortRel rel,
                                             int iOutputColumn)

getColumnOrigins

public Set<RelColumnOrigin> getColumnOrigins(TableFunctionRelBase rel,
                                             int iOutputColumn)

getColumnOrigins

public Set<RelColumnOrigin> getColumnOrigins(RelNode rel,
                                             int iOutputColumn)

invokeGetColumnOrigins

protected Set<RelColumnOrigin> invokeGetColumnOrigins(RelNode rel,
                                                      int iOutputColumn)

createDerivedColumnOrigins

private Set<RelColumnOrigin> createDerivedColumnOrigins(Set<RelColumnOrigin> inputSet)