org.eigenbase.rex
Class RexProgram.Marshaller

java.lang.Object
  extended by org.eigenbase.rex.RexVisitorImpl<RexNode>
      extended by org.eigenbase.rex.RexProgram.Marshaller
All Implemented Interfaces:
RexVisitor<RexNode>
Enclosing class:
RexProgram

private class RexProgram.Marshaller
extends RexVisitorImpl<RexNode>

Given an expression in a program, creates a clone of the expression with sub-expressions (represented by RexLocalRefs) fully expanded.


Field Summary
 
Fields inherited from class org.eigenbase.rex.RexVisitorImpl
deep
 
Constructor Summary
RexProgram.Marshaller()
           
 
Method Summary
 RexNode visitCall(RexCall call)
           
 RexNode visitCorrelVariable(RexCorrelVariable correlVariable)
           
 RexNode visitDynamicParam(RexDynamicParam dynamicParam)
           
 RexNode visitFieldAccess(RexFieldAccess fieldAccess)
           
 RexNode visitInputRef(RexInputRef inputRef)
           
 RexNode visitLiteral(RexLiteral literal)
           
 RexNode visitLocalRef(RexLocalRef localRef)
           
 RexNode visitOver(RexOver over)
           
 RexNode visitRangeRef(RexRangeRef rangeRef)
           
 
Methods inherited from class org.eigenbase.rex.RexVisitorImpl
visitArrayAnd, visitArrayOr
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RexProgram.Marshaller

RexProgram.Marshaller()
Method Detail

visitInputRef

public RexNode visitInputRef(RexInputRef inputRef)
Specified by:
visitInputRef in interface RexVisitor<RexNode>
Overrides:
visitInputRef in class RexVisitorImpl<RexNode>

visitLocalRef

public RexNode visitLocalRef(RexLocalRef localRef)
Specified by:
visitLocalRef in interface RexVisitor<RexNode>
Overrides:
visitLocalRef in class RexVisitorImpl<RexNode>

visitLiteral

public RexNode visitLiteral(RexLiteral literal)
Specified by:
visitLiteral in interface RexVisitor<RexNode>
Overrides:
visitLiteral in class RexVisitorImpl<RexNode>

visitCall

public RexNode visitCall(RexCall call)
Specified by:
visitCall in interface RexVisitor<RexNode>
Overrides:
visitCall in class RexVisitorImpl<RexNode>

visitOver

public RexNode visitOver(RexOver over)
Specified by:
visitOver in interface RexVisitor<RexNode>
Overrides:
visitOver in class RexVisitorImpl<RexNode>

visitCorrelVariable

public RexNode visitCorrelVariable(RexCorrelVariable correlVariable)
Specified by:
visitCorrelVariable in interface RexVisitor<RexNode>
Overrides:
visitCorrelVariable in class RexVisitorImpl<RexNode>

visitDynamicParam

public RexNode visitDynamicParam(RexDynamicParam dynamicParam)
Specified by:
visitDynamicParam in interface RexVisitor<RexNode>
Overrides:
visitDynamicParam in class RexVisitorImpl<RexNode>

visitRangeRef

public RexNode visitRangeRef(RexRangeRef rangeRef)
Specified by:
visitRangeRef in interface RexVisitor<RexNode>
Overrides:
visitRangeRef in class RexVisitorImpl<RexNode>

visitFieldAccess

public RexNode visitFieldAccess(RexFieldAccess fieldAccess)
Specified by:
visitFieldAccess in interface RexVisitor<RexNode>
Overrides:
visitFieldAccess in class RexVisitorImpl<RexNode>