Class SubstitutionVisitor.ProjectToProjectUnifyRule

    • Constructor Detail

      • ProjectToProjectUnifyRule

        private ProjectToProjectUnifyRule()
    • Method Detail

      • apply

        public SubstitutionVisitor.UnifyResult apply​(SubstitutionVisitor.UnifyRuleCall call)
        Description copied from class: SubstitutionVisitor.UnifyRule

        Applies this rule to a particular node in a query. The goal is to convert query into target. Before the rule is invoked, Calcite has made sure that query's children are equivalent to target's children.

        There are 3 possible outcomes:

        • query already exactly matches target; returns target
        • query is sufficiently close to a match for target; returns target
        • query cannot be made to match target; returns null

        REVIEW: Is possible that we match query PLUS one or more of its ancestors?

        Specified by:
        apply in class SubstitutionVisitor.UnifyRule
        call - Input parameters