<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Uses of Class org.apache.calcite.plan.SubstitutionVisitor.UnifyRule (Apache Calcite API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Uses of Class org.apache.calcite.plan.SubstitutionVisitor.UnifyRule (Apache Calcite API)";
        }
    }
    catch(err) {
    }
//-->
var pathtoroot = "../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">Class</a></li>
<li class="navBarCell1Rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<main role="main">
<div class="header">
<h2 title="Uses of Class org.apache.calcite.plan.SubstitutionVisitor.UnifyRule" class="title">Uses of Class<br>org.apache.calcite.plan.SubstitutionVisitor.UnifyRule</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">
<li class="blockList">
<table class="useSummary">
<caption><span>Packages that use <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.plan">org.apache.calcite.plan</a></th>
<td class="colLast">
<div class="block">Defines interfaces for constructing rule-based optimizers of
 relational expressions.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<ul class="blockList">
<li class="blockList">
<section role="region"><a id="org.apache.calcite.plan">
<!--   -->
</a>
<h3>Uses of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a> in <a href="../package-summary.html">org.apache.calcite.plan</a></h3>
<table class="useSummary">
<caption><span>Subclasses of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a> in <a href="../package-summary.html">org.apache.calcite.plan</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../MaterializedViewSubstitutionVisitor.FilterToFilterUnifyRule1.html" title="class in org.apache.calcite.plan">MaterializedViewSubstitutionVisitor.FilterToFilterUnifyRule1</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a
 <a href="../../rel/mutable/MutableFilter.html" title="class in org.apache.calcite.rel.mutable"><code>MutableFilter</code></a> to a
 <a href="../../rel/mutable/MutableFilter.html" title="class in org.apache.calcite.rel.mutable"><code>MutableFilter</code></a> where the condition of the target
 relation is weaker.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../MaterializedViewSubstitutionVisitor.FilterToProjectUnifyRule1.html" title="class in org.apache.calcite.plan">MaterializedViewSubstitutionVisitor.FilterToProjectUnifyRule1</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a
 <a href="../../rel/mutable/MutableFilter.html" title="class in org.apache.calcite.rel.mutable"><code>MutableFilter</code></a> to a
 <a href="../../rel/mutable/MutableProject.html" title="class in org.apache.calcite.rel.mutable"><code>MutableProject</code></a> on top of a
 <a href="../../rel/mutable/MutableFilter.html" title="class in org.apache.calcite.rel.mutable"><code>MutableFilter</code></a> where the condition of the target
 relation is weaker.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../MaterializedViewSubstitutionVisitor.ProjectToProjectUnifyRule1.html" title="class in org.apache.calcite.plan">MaterializedViewSubstitutionVisitor.ProjectToProjectUnifyRule1</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a
 <a href="../../rel/mutable/MutableProject.html" title="class in org.apache.calcite.rel.mutable"><code>MutableProject</code></a> to a
 <a href="../../rel/mutable/MutableProject.html" title="class in org.apache.calcite.rel.mutable"><code>MutableProject</code></a> where the condition of the target
 relation is weaker.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../MaterializedViewSubstitutionVisitor.UnionToUnionUnifyRule.html" title="class in org.apache.calcite.plan">MaterializedViewSubstitutionVisitor.UnionToUnionUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a
 <a href="../../rel/mutable/MutableUnion.html" title="class in org.apache.calcite.rel.mutable"><code>MutableUnion</code></a> to a <a href="../../rel/mutable/MutableUnion.html" title="class in org.apache.calcite.rel.mutable"><code>MutableUnion</code></a> where the query and target
 have the same inputs but might not have the same order.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.AbstractUnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.AbstractUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Abstract base class for implementing <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.AggregateOnProjectToAggregateUnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.AggregateOnProjectToAggregateUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a
 <a href="../../rel/mutable/MutableAggregate.html" title="class in org.apache.calcite.rel.mutable"><code>MutableAggregate</code></a> on
 a <a href="../../rel/mutable/MutableProject.html" title="class in org.apache.calcite.rel.mutable"><code>MutableProject</code></a> query to an <a href="../../rel/mutable/MutableAggregate.html" title="class in org.apache.calcite.rel.mutable"><code>MutableAggregate</code></a> target.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.AggregateToAggregateUnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.AggregateToAggregateUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a
 <a href="../../rel/core/Aggregate.html" title="class in org.apache.calcite.rel.core"><code>Aggregate</code></a> to a
 <a href="../../rel/core/Aggregate.html" title="class in org.apache.calcite.rel.core"><code>Aggregate</code></a>, provided
 that they have the same child.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.FilterToFilterUnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.FilterToFilterUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a
 <a href="../../rel/mutable/MutableFilter.html" title="class in org.apache.calcite.rel.mutable"><code>MutableFilter</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.FilterToProjectUnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.FilterToProjectUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a <a href="../../rel/mutable/MutableFilter.html" title="class in org.apache.calcite.rel.mutable"><code>MutableFilter</code></a>
 to a <a href="../../rel/mutable/MutableProject.html" title="class in org.apache.calcite.rel.mutable"><code>MutableProject</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.ProjectToFilterUnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.ProjectToFilterUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches a <a href="../../rel/mutable/MutableProject.html" title="class in org.apache.calcite.rel.mutable"><code>MutableProject</code></a>
 to a <a href="../../rel/mutable/MutableFilter.html" title="class in org.apache.calcite.rel.mutable"><code>MutableFilter</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.ProjectToProjectUnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.ProjectToProjectUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches
 <a href="../../rel/core/Project.html" title="class in org.apache.calcite.rel.core"><code>Project</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.ScanToProjectUnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.ScanToProjectUnifyRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches
 <a href="../../rel/core/TableScan.html" title="class in org.apache.calcite.rel.core"><code>TableScan</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.TrivialRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.TrivialRule</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan"><code>SubstitutionVisitor.UnifyRule</code></a> that matches if the query is already
 equal to the target.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../package-summary.html">org.apache.calcite.plan</a> declared as <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.UnifyRuleCall.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.UnifyRuleCall.html#rule">rule</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../package-summary.html">org.apache.calcite.plan</a> with type parameters of type <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>protected static com.google.common.collect.ImmutableList&lt;<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#DEFAULT_RULES">DEFAULT_RULES</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static com.google.common.collect.ImmutableList&lt;<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MaterializedViewSubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../MaterializedViewSubstitutionVisitor.html#EXTENDED_RULES">EXTENDED_RULES</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.Map&lt;<a href="../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.lang.Class,&#8203;java.lang.Class&gt;,&#8203;java.util.List&lt;<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#ruleMap">ruleMap</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private com.google.common.collect.ImmutableList&lt;<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#rules">rules</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../package-summary.html">org.apache.calcite.plan</a> that return types with arguments of type <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#applicableRules(org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel)">applicableRules</a></span>&#8203;(<a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;query,
               <a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;target)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../package-summary.html">org.apache.calcite.plan</a> with parameters of type <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../SubstitutionVisitor.UnifyResult.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyResult</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#apply(org.apache.calcite.plan.SubstitutionVisitor.UnifyRule,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel)">apply</a></span>&#8203;(<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&nbsp;rule,
     <a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;query,
     <a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;target)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#mightMatch(org.apache.calcite.plan.SubstitutionVisitor.UnifyRule,java.lang.Class,java.lang.Class)">mightMatch</a></span>&#8203;(<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&nbsp;rule,
          java.lang.Class&nbsp;queryClass,
          java.lang.Class&nbsp;targetClass)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../package-summary.html">org.apache.calcite.plan</a> with parameters of type <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.UnifyRuleCall.html#%3Cinit%3E(org.apache.calcite.plan.SubstitutionVisitor.UnifyRule,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel,com.google.common.collect.ImmutableList)">UnifyRuleCall</a></span>&#8203;(<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&nbsp;rule,
             <a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;query,
             <a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;target,
             com.google.common.collect.ImmutableList&lt;<a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;slots)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../package-summary.html">org.apache.calcite.plan</a> with type arguments of type <a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#%3Cinit%3E(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelNode,com.google.common.collect.ImmutableList)">SubstitutionVisitor</a></span>&#8203;(<a href="../../rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;target_,
                   <a href="../../rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;query_,
                   com.google.common.collect.ImmutableList&lt;<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&gt;&nbsp;rules)</code></th>
<td class="colLast">
<div class="block">Creates a SubstitutionVisitor with the default logical builder.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#%3Cinit%3E(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelNode,com.google.common.collect.ImmutableList,org.apache.calcite.tools.RelBuilderFactory)">SubstitutionVisitor</a></span>&#8203;(<a href="../../rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;target_,
                   <a href="../../rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;query_,
                   com.google.common.collect.ImmutableList&lt;<a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.UnifyRule</a>&gt;&nbsp;rules,
                   <a href="../../tools/RelBuilderFactory.html" title="interface in org.apache.calcite.tools">RelBuilderFactory</a>&nbsp;relBuilderFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
</ul>
</li>
</ul>
</div>
</main>
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../SubstitutionVisitor.UnifyRule.html" title="class in org.apache.calcite.plan">Class</a></li>
<li class="navBarCell1Rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2012&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
