Class LogicalMatch

  • All Implemented Interfaces:
    java.lang.Cloneable, RelOptNode, RelNode

    public class LogicalMatch
    extends Match
    Sub-class of Match not targeted at any particular engine or calling convention.
    • 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 - cluster
        traitSet - Trait set
        input - Input relational expression
        rowType - Row type
        pattern - Regular Expression defining pattern variables
        strictStart - Whether it is a strict start pattern
        strictEnd - Whether it is a strict end pattern
        patternDefinitions - Pattern definitions
        measures - Measure definitions
        after - After match definitions
        subsets - Subset definitions
        allRows - Whether all rows per match (false means one row per match)
        partitionKeys - Partition by columns
        orderKeys - Order by columns
        interval - 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)
        Specified by:
        copy in class Match
      • accept

        public RelNode accept​(RelShuttle shuttle)
        Description copied from interface: RelNode
        Accepts a visit from a shuttle.
        Specified by:
        accept in interface RelNode
        Overrides:
        accept in class AbstractRelNode
        Parameters:
        shuttle - Shuttle
        Returns:
        A copy of this node incorporating changes made by the shuttle to this node's children