public class JdbcToEnumerableConverter extends ConverterImpl implements EnumerableRel
EnumerableRel.Prefer, EnumerableRel.Result
RelNode.Context
inTraits, traitDef
digest, id, rowType, traitSet
FILTER_FACTORY, PROJECT_FACTORY
Modifier | Constructor and Description |
---|---|
protected |
JdbcToEnumerableConverter(RelOptCluster cluster,
RelTraitSet traits,
RelNode input) |
Modifier and Type | Method and Description |
---|---|
RelOptCost |
computeSelfCost(RelOptPlanner planner,
RelMetadataQuery mq)
Returns the cost of this plan (not including children).
|
RelNode |
copy(RelTraitSet traitSet,
java.util.List<RelNode> inputs)
Creates a copy of this relational expression, perhaps changing traits and
inputs.
|
private void |
generateGet(EnumerableRelImplementor implementor,
PhysType physType,
BlockBuilder builder,
ParameterExpression resultSet_,
int i,
Expression target,
Expression calendar_,
SqlDialect.CalendarPolicy calendarPolicy) |
private SqlString |
generateSql(SqlDialect dialect) |
private java.lang.reflect.Method |
getMethod(SqlTypeName sqlTypeName,
boolean nullable,
boolean offset) |
private java.lang.reflect.Method |
getMethod2(SqlTypeName sqlTypeName) |
private UnaryExpression |
getTimeZoneExpression(EnumerableRelImplementor implementor) |
EnumerableRel.Result |
implement(EnumerableRelImplementor implementor,
EnumerableRel.Prefer pref)
Creates a plan for this expression according to a calling convention.
|
private java.lang.String |
jdbcGetMethod(Primitive primitive)
E,g,
jdbcGetMethod(int) returns "getInt". |
private java.util.List<ConstantExpression> |
toIndexesTableExpression(SqlString sqlString) |
cannotImplement, getInputTraits, getTraitDef
childrenAccept, deriveRowType, estimateRowCount, explainTerms, getInput, getInputs, replaceInput
accept, accept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, explain, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraitSet, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, sole, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, estimateRowCount, explain, getChildExps, getCollationList, getConvention, getCorrelVariable, getExpectedInputRowType, getInput, getInputs, getQuery, getRelTypeName, getRows, getRowType, getTable, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, replaceInput
getCluster, getDescription, getDigest, getId, getTraitSet
protected JdbcToEnumerableConverter(RelOptCluster cluster, RelTraitSet traits, RelNode input)
public RelNode copy(RelTraitSet traitSet, java.util.List<RelNode> inputs)
RelNode
Sub-classes with other important attributes are encouraged to create variants of this method with more parameters.
copy
in interface RelNode
copy
in class AbstractRelNode
traitSet
- Trait setinputs
- Inputspublic RelOptCost computeSelfCost(RelOptPlanner planner, RelMetadataQuery mq)
RelNode
NOTE jvs 29-Mar-2006: Don't call this method directly. Instead, use
RelMetadataQuery.getNonCumulativeCost(org.apache.calcite.rel.RelNode)
, which gives plugins a
chance to override the rel's default ideas about cost.
computeSelfCost
in interface RelNode
computeSelfCost
in class ConverterImpl
planner
- Planner for cost calculationmq
- Metadata querypublic EnumerableRel.Result implement(EnumerableRelImplementor implementor, EnumerableRel.Prefer pref)
EnumerableRel
implement
in interface EnumerableRel
implementor
- Implementorpref
- Preferred representation for rows in result expressionprivate java.util.List<ConstantExpression> toIndexesTableExpression(SqlString sqlString)
private UnaryExpression getTimeZoneExpression(EnumerableRelImplementor implementor)
private void generateGet(EnumerableRelImplementor implementor, PhysType physType, BlockBuilder builder, ParameterExpression resultSet_, int i, Expression target, Expression calendar_, SqlDialect.CalendarPolicy calendarPolicy)
private java.lang.reflect.Method getMethod(SqlTypeName sqlTypeName, boolean nullable, boolean offset)
private java.lang.reflect.Method getMethod2(SqlTypeName sqlTypeName)
private java.lang.String jdbcGetMethod(Primitive primitive)
jdbcGetMethod(int)
returns "getInt".private SqlString generateSql(SqlDialect dialect)
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.