OmniSciDB  c07336695a
org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle Class Reference
+ Inheritance diagram for org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle:
+ Collaboration diagram for org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle:

Public Member Functions

RexNode visitInputRef (RexInputRef input)
 

Package Functions

 RexAccessShuttle (RexBuilder builder, RexCorrelVariable rexCorrel)
 

Private Attributes

final RexBuilder builder
 
final RexCorrelVariable rexCorrel
 
final BitSet varCols = new BitSet()
 

Detailed Description

Shuttle that replace outer RexInputRef with RexFieldAccess, and adjust

offset

to each inner RexInputRef in the lateral join condition.

Definition at line 2303 of file SqlToRelConverter.java.

Constructor & Destructor Documentation

◆ RexAccessShuttle()

org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle.RexAccessShuttle ( RexBuilder  builder,
RexCorrelVariable  rexCorrel 
)
inlinepackage

Definition at line 2308 of file SqlToRelConverter.java.

References org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle.builder, and org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle.rexCorrel.

Referenced by org.apache.calcite.sql2rel.SqlToRelConverter.createJoin().

+ Here is the caller graph for this function:

Member Function Documentation

◆ visitInputRef()

RexNode org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle.visitInputRef ( RexInputRef  input)
inline

Definition at line 2314 of file SqlToRelConverter.java.

2314  {
2315  int i = input.getIndex() - rexCorrel.getType().getFieldCount();
2316  if (i < 0) {
2317  varCols.set(input.getIndex());
2318  return builder.makeFieldAccess(rexCorrel, input.getIndex());
2319  }
2320  return builder.makeInputRef(input.getType(), i);
2321  }

Member Data Documentation

◆ builder

◆ rexCorrel

final RexCorrelVariable org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle.rexCorrel
private

◆ varCols

final BitSet org.apache.calcite.sql2rel.SqlToRelConverter.RexAccessShuttle.varCols = new BitSet()
private

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