blob: 465acce2481e75f54a25810b500b2c294d6debc3 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Uses of Class org.apache.calcite.plan.SubstitutionVisitor.Replacement (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.Replacement (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.Replacement.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.Replacement" class="title">Uses of Class<br>org.apache.calcite.plan.SubstitutionVisitor.Replacement</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">
<li class="blockList">
<table class="useSummary">
<caption><span>Packages that use <a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</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.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</a> in <a href="../package-summary.html">org.apache.calcite.plan</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../package-summary.html">org.apache.calcite.plan</a> that return <a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</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>static <a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#replace(org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel)">replace</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;find,
<a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;replace)</code></th>
<td class="colLast">
<div class="block">Within a relational expression <code>query</code>, replaces occurrences of
<code>find</code> with <code>replace</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#replaceRecurse(org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel)">replaceRecurse</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;find,
<a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;replace)</code></th>
<td class="colLast">
<div class="block">Helper for <a href="../SubstitutionVisitor.html#replace(org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel)"><code>SubstitutionVisitor.replace(org.apache.calcite.rel.mutable.MutableRel, org.apache.calcite.rel.mutable.MutableRel, org.apache.calcite.rel.mutable.MutableRel)</code></a>.</div>
</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.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</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;java.util.List&lt;<a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#go(org.apache.calcite.rel.mutable.MutableRel)">go</a></span>&#8203;(<a href="../../rel/mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;replacement)</code></th>
<td class="colLast">
<div class="block">Substitutes the query with replacement whenever possible but meanwhile
keeps track of all the substitutions and their original rel before
replacement, so that in later processing stage, the replacement can be
recovered individually to produce a list of all possible rels with
substitution in different places.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../package-summary.html">org.apache.calcite.plan</a> with type arguments of type <a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</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 static void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#redoReplacement(java.util.List)">redoReplacement</a></span>&#8203;(java.util.List&lt;<a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</a>&gt;&nbsp;replacement)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#reverseSubstitute(org.apache.calcite.tools.RelBuilder,org.apache.calcite.rel.mutable.Holder,java.util.List,java.util.List,int,int)">reverseSubstitute</a></span>&#8203;(<a href="../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a>&nbsp;relBuilder,
<a href="../../rel/mutable/Holder.html" title="class in org.apache.calcite.rel.mutable">Holder</a>&nbsp;query,
java.util.List&lt;java.util.List&lt;<a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</a>&gt;&gt;&nbsp;matches,
java.util.List&lt;<a href="../../rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;sub,
int&nbsp;replaceCount,
int&nbsp;maxCount)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstitutionVisitor.</span><code><span class="memberNameLink"><a href="../SubstitutionVisitor.html#undoReplacement(java.util.List)">undoReplacement</a></span>&#8203;(java.util.List&lt;<a href="../SubstitutionVisitor.Replacement.html" title="class in org.apache.calcite.plan">SubstitutionVisitor.Replacement</a>&gt;&nbsp;replacement)</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.Replacement.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>