Package org.apache.calcite.rel.logical
Class LogicalMatch
- java.lang.Object
-
- org.apache.calcite.rel.AbstractRelNode
-
- org.apache.calcite.rel.SingleRel
-
- org.apache.calcite.rel.core.Match
-
- org.apache.calcite.rel.logical.LogicalMatch
-
- All Implemented Interfaces:
java.lang.Cloneable
,RelOptNode
,RelNode
public class LogicalMatch extends Match
Sub-class ofMatch
not targeted at any particular engine or calling convention.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.calcite.rel.core.Match
Match.RexMRAggCall
-
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
RelNode.Context
-
-
Field Summary
-
Fields inherited from class org.apache.calcite.rel.core.Match
after, aggregateCalls, aggregateCallsPreVar, allRows, interval, measures, orderKeys, partitionKeys, pattern, patternDefinitions, strictEnd, strictStart, subsets
-
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet
-
-
Constructor Summary
Constructors Modifier Constructor Description private
LogicalMatch(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, RelDataType rowType, RexNode pattern, boolean strictStart, boolean strictEnd, java.util.Map<java.lang.String,RexNode> patternDefinitions, java.util.Map<java.lang.String,RexNode> measures, RexNode after, java.util.Map<java.lang.String,? extends java.util.SortedSet<java.lang.String>> subsets, boolean allRows, java.util.List<RexNode> partitionKeys, RelCollation orderKeys, RexNode interval)
Creates a LogicalMatch.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description RelNode
accept(RelShuttle shuttle)
Accepts a visit from a shuttle.Match
copy(RelNode input, RelDataType rowType, RexNode pattern, boolean strictStart, boolean strictEnd, java.util.Map<java.lang.String,RexNode> patternDefinitions, java.util.Map<java.lang.String,RexNode> measures, RexNode after, java.util.Map<java.lang.String,? extends java.util.SortedSet<java.lang.String>> subsets, boolean allRows, java.util.List<RexNode> partitionKeys, RelCollation orderKeys, RexNode interval)
static LogicalMatch
create(RelNode input, RelDataType rowType, RexNode pattern, boolean strictStart, boolean strictEnd, java.util.Map<java.lang.String,RexNode> patternDefinitions, java.util.Map<java.lang.String,RexNode> measures, RexNode after, java.util.Map<java.lang.String,? extends java.util.SortedSet<java.lang.String>> subsets, boolean allRows, java.util.List<RexNode> partitionKeys, RelCollation orderKeys, RexNode interval)
Creates a LogicalMatch.-
Methods inherited from class org.apache.calcite.rel.core.Match
copy, explainTerms, getAfter, getInterval, getMeasures, getOrderKeys, getPartitionKeys, getPattern, getPatternDefinitions, getSubsets, isAllRows, isStrictEnd, isStrictStart
-
Methods inherited from class org.apache.calcite.rel.SingleRel
childrenAccept, deriveRowType, estimateRowCount, getInput, getInputs, replaceInput
-
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, 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
-
-
-
-
Constructor Detail
-
LogicalMatch
private LogicalMatch(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, RelDataType rowType, RexNode pattern, boolean strictStart, boolean strictEnd, java.util.Map<java.lang.String,RexNode> patternDefinitions, java.util.Map<java.lang.String,RexNode> measures, RexNode after, java.util.Map<java.lang.String,? extends java.util.SortedSet<java.lang.String>> subsets, boolean allRows, java.util.List<RexNode> partitionKeys, RelCollation orderKeys, RexNode interval)
Creates a LogicalMatch.- Parameters:
cluster
- clustertraitSet
- Trait setinput
- Input relational expressionrowType
- Row typepattern
- Regular Expression defining pattern variablesstrictStart
- Whether it is a strict start patternstrictEnd
- Whether it is a strict end patternpatternDefinitions
- Pattern definitionsmeasures
- Measure definitionsafter
- After match definitionssubsets
- Subset definitionsallRows
- Whether all rows per match (false means one row per match)partitionKeys
- Partition by columnsorderKeys
- Order by columnsinterval
- Interval definition, null if WITHIN clause is not defined
-
-
Method Detail
-
create
public static LogicalMatch create(RelNode input, RelDataType rowType, RexNode pattern, boolean strictStart, boolean strictEnd, java.util.Map<java.lang.String,RexNode> patternDefinitions, java.util.Map<java.lang.String,RexNode> measures, RexNode after, java.util.Map<java.lang.String,? extends java.util.SortedSet<java.lang.String>> subsets, boolean allRows, java.util.List<RexNode> partitionKeys, RelCollation orderKeys, RexNode interval)
Creates a LogicalMatch.
-
copy
public Match copy(RelNode input, RelDataType rowType, RexNode pattern, boolean strictStart, boolean strictEnd, java.util.Map<java.lang.String,RexNode> patternDefinitions, java.util.Map<java.lang.String,RexNode> measures, RexNode after, java.util.Map<java.lang.String,? extends java.util.SortedSet<java.lang.String>> subsets, boolean allRows, java.util.List<RexNode> partitionKeys, RelCollation orderKeys, RexNode interval)
-
accept
public RelNode accept(RelShuttle shuttle)
Description copied from interface:RelNode
Accepts a visit from a shuttle.- Specified by:
accept
in interfaceRelNode
- Overrides:
accept
in classAbstractRelNode
- Parameters:
shuttle
- Shuttle- Returns:
- A copy of this node incorporating changes made by the shuttle to this node's children
-
-