Package com.twilio.kudu.sql
Class KuduPhysType
- java.lang.Object
-
- com.twilio.kudu.sql.KuduPhysType
-
- All Implemented Interfaces:
org.apache.calcite.adapter.enumerable.PhysType
public final class KuduPhysType extends Object implements org.apache.calcite.adapter.enumerable.PhysType
A partially implemented implementation ofPhysType
. This class producesExpressions
that take as input aRowResult
and fetch various fields out of it. Primarily used to constructFunction1
andPredicate1
that can be used filter and project the kudu rpc result.
-
-
Constructor Summary
Constructors Constructor Description KuduPhysType(org.apache.kudu.Schema tableSchema, org.apache.calcite.rel.type.RelDataType logicalType, List<Integer> descendingSortedFieldIndices, List<Integer> kuduColumnProjections)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<org.apache.calcite.linq4j.tree.Expression>
accessors(org.apache.calcite.linq4j.tree.Expression parameter, List<Integer> argList)
org.apache.calcite.linq4j.tree.Expression
comparer()
org.apache.calcite.adapter.enumerable.PhysType
component(int field)
org.apache.calcite.linq4j.tree.Expression
convertTo(org.apache.calcite.linq4j.tree.Expression expression, org.apache.calcite.adapter.enumerable.JavaRowFormat targetFormat)
org.apache.calcite.linq4j.tree.Expression
convertTo(org.apache.calcite.linq4j.tree.Expression expression, org.apache.calcite.adapter.enumerable.PhysType targetPhysType)
org.apache.calcite.adapter.enumerable.PhysType
field(int ordinal)
Class
fieldClass(int field)
boolean
fieldNullable(int index)
org.apache.calcite.linq4j.tree.Expression
fieldReference(org.apache.calcite.linq4j.tree.Expression expression, int ord)
org.apache.calcite.linq4j.tree.Expression
fieldReference(org.apache.calcite.linq4j.tree.Expression expression, int ord, Type storageType)
org.apache.calcite.linq4j.tree.Expression
generateAccessor(List<Integer> fields)
org.apache.calcite.util.Pair<org.apache.calcite.linq4j.tree.Expression,org.apache.calcite.linq4j.tree.Expression>
generateCollationKey(List<org.apache.calcite.rel.RelFieldCollation> collations)
org.apache.calcite.linq4j.tree.Expression
generateComparator(org.apache.calcite.rel.RelCollation collation)
org.apache.calcite.linq4j.tree.Expression
generateSelector(org.apache.calcite.linq4j.tree.ParameterExpression parameter, List<Integer> fields)
org.apache.calcite.linq4j.tree.Expression
generateSelector(org.apache.calcite.linq4j.tree.ParameterExpression parameter, List<Integer> fields, List<Integer> usedFields, org.apache.calcite.adapter.enumerable.JavaRowFormat targetFormat)
org.apache.calcite.linq4j.tree.Expression
generateSelector(org.apache.calcite.linq4j.tree.ParameterExpression parameter, List<Integer> fields, org.apache.calcite.adapter.enumerable.JavaRowFormat targetFormat)
org.apache.calcite.adapter.enumerable.JavaRowFormat
getFormat()
Type
getJavaFieldType(int field)
Type
getJavaRowType()
org.apache.calcite.rel.type.RelDataType
getRowType()
org.apache.calcite.adapter.enumerable.PhysType
makeNullable(boolean nullable)
org.apache.calcite.adapter.enumerable.PhysType
project(List<Integer> integers, boolean indicator, org.apache.calcite.adapter.enumerable.JavaRowFormat format)
org.apache.calcite.adapter.enumerable.PhysType
project(List<Integer> integers, org.apache.calcite.adapter.enumerable.JavaRowFormat format)
org.apache.calcite.linq4j.tree.Expression
record(List<org.apache.calcite.linq4j.tree.Expression> expressions)
org.apache.calcite.util.Pair<Type,List<org.apache.calcite.linq4j.tree.Expression>>
selector(org.apache.calcite.linq4j.tree.ParameterExpression parameter, List<Integer> fields, org.apache.calcite.adapter.enumerable.JavaRowFormat targetFormat)
-
-
-
Method Detail
-
getJavaRowType
public Type getJavaRowType()
- Specified by:
getJavaRowType
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
getJavaFieldType
public Type getJavaFieldType(int field)
- Specified by:
getJavaFieldType
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
field
public org.apache.calcite.adapter.enumerable.PhysType field(int ordinal)
- Specified by:
field
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
component
public org.apache.calcite.adapter.enumerable.PhysType component(int field)
- Specified by:
component
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
getRowType
public org.apache.calcite.rel.type.RelDataType getRowType()
- Specified by:
getRowType
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
fieldClass
public Class fieldClass(int field)
- Specified by:
fieldClass
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
fieldNullable
public boolean fieldNullable(int index)
- Specified by:
fieldNullable
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
fieldReference
public org.apache.calcite.linq4j.tree.Expression fieldReference(org.apache.calcite.linq4j.tree.Expression expression, int ord)
- Specified by:
fieldReference
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
fieldReference
public org.apache.calcite.linq4j.tree.Expression fieldReference(org.apache.calcite.linq4j.tree.Expression expression, int ord, Type storageType)
- Specified by:
fieldReference
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
generateAccessor
public org.apache.calcite.linq4j.tree.Expression generateAccessor(List<Integer> fields)
- Specified by:
generateAccessor
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
generateSelector
public org.apache.calcite.linq4j.tree.Expression generateSelector(org.apache.calcite.linq4j.tree.ParameterExpression parameter, List<Integer> fields)
- Specified by:
generateSelector
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
generateSelector
public org.apache.calcite.linq4j.tree.Expression generateSelector(org.apache.calcite.linq4j.tree.ParameterExpression parameter, List<Integer> fields, org.apache.calcite.adapter.enumerable.JavaRowFormat targetFormat)
- Specified by:
generateSelector
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
generateSelector
public org.apache.calcite.linq4j.tree.Expression generateSelector(org.apache.calcite.linq4j.tree.ParameterExpression parameter, List<Integer> fields, List<Integer> usedFields, org.apache.calcite.adapter.enumerable.JavaRowFormat targetFormat)
- Specified by:
generateSelector
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
selector
public org.apache.calcite.util.Pair<Type,List<org.apache.calcite.linq4j.tree.Expression>> selector(org.apache.calcite.linq4j.tree.ParameterExpression parameter, List<Integer> fields, org.apache.calcite.adapter.enumerable.JavaRowFormat targetFormat)
- Specified by:
selector
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
project
public org.apache.calcite.adapter.enumerable.PhysType project(List<Integer> integers, org.apache.calcite.adapter.enumerable.JavaRowFormat format)
- Specified by:
project
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
project
public org.apache.calcite.adapter.enumerable.PhysType project(List<Integer> integers, boolean indicator, org.apache.calcite.adapter.enumerable.JavaRowFormat format)
- Specified by:
project
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
generateCollationKey
public org.apache.calcite.util.Pair<org.apache.calcite.linq4j.tree.Expression,org.apache.calcite.linq4j.tree.Expression> generateCollationKey(List<org.apache.calcite.rel.RelFieldCollation> collations)
- Specified by:
generateCollationKey
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
generateComparator
public org.apache.calcite.linq4j.tree.Expression generateComparator(org.apache.calcite.rel.RelCollation collation)
- Specified by:
generateComparator
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
comparer
public org.apache.calcite.linq4j.tree.Expression comparer()
- Specified by:
comparer
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
record
public org.apache.calcite.linq4j.tree.Expression record(List<org.apache.calcite.linq4j.tree.Expression> expressions)
- Specified by:
record
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
getFormat
public org.apache.calcite.adapter.enumerable.JavaRowFormat getFormat()
- Specified by:
getFormat
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
accessors
public List<org.apache.calcite.linq4j.tree.Expression> accessors(org.apache.calcite.linq4j.tree.Expression parameter, List<Integer> argList)
- Specified by:
accessors
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
makeNullable
public org.apache.calcite.adapter.enumerable.PhysType makeNullable(boolean nullable)
- Specified by:
makeNullable
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
convertTo
public org.apache.calcite.linq4j.tree.Expression convertTo(org.apache.calcite.linq4j.tree.Expression expression, org.apache.calcite.adapter.enumerable.PhysType targetPhysType)
- Specified by:
convertTo
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
convertTo
public org.apache.calcite.linq4j.tree.Expression convertTo(org.apache.calcite.linq4j.tree.Expression expression, org.apache.calcite.adapter.enumerable.JavaRowFormat targetFormat)
- Specified by:
convertTo
in interfaceorg.apache.calcite.adapter.enumerable.PhysType
-
-