<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Uses of Class org.apache.calcite.rex.RexTableInputRef (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.rex.RexTableInputRef (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="../RexTableInputRef.html" title="class in org.apache.calcite.rex">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.rex.RexTableInputRef" class="title">Uses of Class<br>org.apache.calcite.rex.RexTableInputRef</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">
<li class="blockList">
<table class="useSummary">
<caption><span>Packages that use <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</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.rel.rules">org.apache.calcite.rel.rules</a></th>
<td class="colLast">
<div class="block">Provides a core set of planner rules.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rex">org.apache.calcite.rex</a></th>
<td class="colLast">
<div class="block">Provides a language for representing row-expressions.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<ul class="blockList">
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.rules">
<!--   -->
</a>
<h3>Uses of <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a> in <a href="../../rel/rules/package-summary.html">org.apache.calcite.rel.rules</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../rel/rules/package-summary.html">org.apache.calcite.rel.rules</a> with type parameters of type <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</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>private java.util.List&lt;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#cacheEquivalenceClasses">cacheEquivalenceClasses</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#cacheEquivalenceClassesMap">cacheEquivalenceClassesMap</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#cacheEquivalenceClassesMap">cacheEquivalenceClassesMap</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) com.google.common.collect.Multimap&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.Edge.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.Edge.html#equiColumns">equiColumns</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) com.google.common.collect.Multimap&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.Edge.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.Edge.html#equiColumns">equiColumns</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#nodeToEquivalenceClass">nodeToEquivalenceClass</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#nodeToEquivalenceClass">nodeToEquivalenceClass</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../rel/rules/package-summary.html">org.apache.calcite.rel.rules</a> that return types with arguments of type <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</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>protected java.util.List&lt;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#getEquivalenceClasses()">getEquivalenceClasses</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#getEquivalenceClassesMap()">getEquivalenceClassesMap</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#getEquivalenceClassesMap()">getEquivalenceClassesMap</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../rel/rules/package-summary.html">org.apache.calcite.rel.rules</a> with parameters of type <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</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>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.EquivalenceClasses.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html#addEquivalenceClass(org.apache.calcite.rex.RexTableInputRef,org.apache.calcite.rex.RexTableInputRef)">addEquivalenceClass</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;p1,
                   <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;p2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../rel/rules/package-summary.html">org.apache.calcite.rel.rules</a> with type arguments of type <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</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 boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.html#compensatePartial(java.util.Set,org.apache.calcite.rel.rules.AbstractMaterializedViewRule.EquivalenceClasses,java.util.Set,com.google.common.collect.Multimap)">compensatePartial</a></span>&#8203;(java.util.Set&lt;<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&gt;&nbsp;sourceTableRefs,
                 <a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html" title="class in org.apache.calcite.rel.rules">AbstractMaterializedViewRule.EquivalenceClasses</a>&nbsp;sourceEC,
                 java.util.Set&lt;<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&gt;&nbsp;targetTableRefs,
                 com.google.common.collect.Multimap&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&nbsp;compensationEquiColumns)</code></th>
<td class="colLast">
<div class="block">It checks whether the target can be rewritten using the source even though the
 source uses additional tables.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.html#compensatePartial(java.util.Set,org.apache.calcite.rel.rules.AbstractMaterializedViewRule.EquivalenceClasses,java.util.Set,com.google.common.collect.Multimap)">compensatePartial</a></span>&#8203;(java.util.Set&lt;<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&gt;&nbsp;sourceTableRefs,
                 <a href="../../rel/rules/AbstractMaterializedViewRule.EquivalenceClasses.html" title="class in org.apache.calcite.rel.rules">AbstractMaterializedViewRule.EquivalenceClasses</a>&nbsp;sourceEC,
                 java.util.Set&lt;<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&gt;&nbsp;targetTableRefs,
                 com.google.common.collect.Multimap&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&nbsp;compensationEquiColumns)</code></th>
<td class="colLast">
<div class="block">It checks whether the target can be rewritten using the source even though the
 source uses additional tables.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static com.google.common.collect.Multimap&lt;java.lang.Integer,&#8203;java.lang.Integer&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractMaterializedViewRule.</span><code><span class="memberNameLink"><a href="../../rel/rules/AbstractMaterializedViewRule.html#extractPossibleMapping(java.util.List,java.util.List)">extractPossibleMapping</a></span>&#8203;(java.util.List&lt;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;&nbsp;sourceEquivalenceClasses,
                      java.util.List&lt;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;&nbsp;targetEquivalenceClasses)</code></th>
<td class="colLast">
<div class="block">Given the source and target equivalence classes, it extracts the possible mappings
 from each source equivalence class to each target equivalence class.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rex">
<!--   -->
</a>
<h3>Uses of <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a> in <a href="../package-summary.html">org.apache.calcite.rex</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../package-summary.html">org.apache.calcite.rex</a> that return <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</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="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../RexUtil.html#containsTableInputRef(org.apache.calcite.rex.RexNode)">containsTableInputRef</a></span>&#8203;(<a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node)</code></th>
<td class="colLast">
<div class="block">Returns whether a given tree contains any {link RexTableInputRef} nodes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexTableInputRef.</span><code><span class="memberNameLink"><a href="../RexTableInputRef.html#of(org.apache.calcite.rex.RexTableInputRef.RelTableRef,int,org.apache.calcite.rel.type.RelDataType)">of</a></span>&#8203;(<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&nbsp;tableRef,
  int&nbsp;index,
  <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexTableInputRef.</span><code><span class="memberNameLink"><a href="../RexTableInputRef.html#of(org.apache.calcite.rex.RexTableInputRef.RelTableRef,org.apache.calcite.rex.RexInputRef)">of</a></span>&#8203;(<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&nbsp;tableRef,
  <a href="../RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&nbsp;ref)</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.rex</a> with parameters of type <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</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><a href="../../plan/RelOptUtil.Logic.html" title="enum in org.apache.calcite.plan">RelOptUtil.Logic</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicVisitor.</span><code><span class="memberNameLink"><a href="../LogicVisitor.html#visitTableInputRef(org.apache.calcite.rex.RexTableInputRef,org.apache.calcite.plan.RelOptUtil.Logic)">visitTableInputRef</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;ref,
                  <a href="../../plan/RelOptUtil.Logic.html" title="enum in org.apache.calcite.plan">RelOptUtil.Logic</a>&nbsp;arg)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RexBiVisitor.html" title="type parameter in RexBiVisitor">R</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBiVisitor.</span><code><span class="memberNameLink"><a href="../RexBiVisitor.html#visitTableInputRef(org.apache.calcite.rex.RexTableInputRef,P)">visitTableInputRef</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;ref,
                  <a href="../RexBiVisitor.html" title="type parameter in RexBiVisitor">P</a>&nbsp;arg)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.Comparable</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexInterpreter.</span><code><span class="memberNameLink"><a href="../RexInterpreter.html#visitTableInputRef(org.apache.calcite.rex.RexTableInputRef)">visitTableInputRef</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;fieldRef)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexShuttle.</span><code><span class="memberNameLink"><a href="../RexShuttle.html#visitTableInputRef(org.apache.calcite.rex.RexTableInputRef)">visitTableInputRef</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;ref)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.Boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexSimplify.SafeRexVisitor.</span><code><span class="memberNameLink"><a href="../RexSimplify.SafeRexVisitor.html#visitTableInputRef(org.apache.calcite.rex.RexTableInputRef)">visitTableInputRef</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;fieldRef)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.Boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.ConstantFinder.</span><code><span class="memberNameLink"><a href="../RexUtil.ConstantFinder.html#visitTableInputRef(org.apache.calcite.rex.RexTableInputRef)">visitTableInputRef</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;ref)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RexVisitor.html" title="type parameter in RexVisitor">R</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexVisitor.</span><code><span class="memberNameLink"><a href="../RexVisitor.html#visitTableInputRef(org.apache.calcite.rex.RexTableInputRef)">visitTableInputRef</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;fieldRef)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RexVisitorImpl.html" title="type parameter in RexVisitorImpl">R</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexVisitorImpl.</span><code><span class="memberNameLink"><a href="../RexVisitorImpl.html#visitTableInputRef(org.apache.calcite.rex.RexTableInputRef)">visitTableInputRef</a></span>&#8203;(<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&nbsp;ref)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../package-summary.html">org.apache.calcite.rex</a> with type arguments of type <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</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="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../RexUtil.html#swapColumnReferences(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexNode,java.util.Map)">swapColumnReferences</a></span>&#8203;(<a href="../RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
                    <a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node,
                    java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;&nbsp;ec)</code></th>
<td class="colLast">
<div class="block">Given an expression, it will swap its column references <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex"><code>RexTableInputRef</code></a>
 using the contents in the map (in particular, the first element of the set in the
 map value).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../RexUtil.html#swapColumnReferences(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexNode,java.util.Map)">swapColumnReferences</a></span>&#8203;(<a href="../RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
                    <a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node,
                    java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;&nbsp;ec)</code></th>
<td class="colLast">
<div class="block">Given an expression, it will swap its column references <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex"><code>RexTableInputRef</code></a>
 using the contents in the map (in particular, the first element of the set in the
 map value).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../RexUtil.html#swapColumnTableReferences(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexNode,java.util.Map,java.util.Map)">swapColumnTableReferences</a></span>&#8203;(<a href="../RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
                         <a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node,
                         java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;&nbsp;ec,
                         java.util.Map&lt;<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>,&#8203;<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&gt;&nbsp;tableMapping)</code></th>
<td class="colLast">
<div class="block">Given an expression, it will swap the column references <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex"><code>RexTableInputRef</code></a>
 using the contents in the first map (in particular, the first element of the set
 in the map value), and then it will swap the table references contained in its
 <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex"><code>RexTableInputRef</code></a> using the contents in the second map.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../RexUtil.html#swapColumnTableReferences(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexNode,java.util.Map,java.util.Map)">swapColumnTableReferences</a></span>&#8203;(<a href="../RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
                         <a href="../RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node,
                         java.util.Map&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>,&#8203;java.util.Set&lt;<a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a>&gt;&gt;&nbsp;ec,
                         java.util.Map&lt;<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>,&#8203;<a href="../RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&gt;&nbsp;tableMapping)</code></th>
<td class="colLast">
<div class="block">Given an expression, it will swap the column references <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex"><code>RexTableInputRef</code></a>
 using the contents in the first map (in particular, the first element of the set
 in the map value), and then it will swap the table references contained in its
 <a href="../RexTableInputRef.html" title="class in org.apache.calcite.rex"><code>RexTableInputRef</code></a> using the contents in the second map.</div>
</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="../RexTableInputRef.html" title="class in org.apache.calcite.rex">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>
