blob: b472bc41e5130dd706058aed97d5d2c1702516e1 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>org.apache.calcite.adapter.enumerable (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="org.apache.calcite.adapter.enumerable (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 class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></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">
<h1 title="Package" class="title">Package&nbsp;org.apache.calcite.adapter.enumerable</h1>
</div>
<div class="contentContainer">
<section role="region"><a id="package.description">
<!-- -->
</a>
<div class="block">Query optimizer rules for Java calling convention.</div>
</section>
<ul class="blockList">
<li class="blockList">
<table class="typeSummary">
<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Interface</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="AggAddContext.html" title="interface in org.apache.calcite.adapter.enumerable">AggAddContext</a></th>
<td class="colLast">
<div class="block">Information for a call to
<a href="AggImplementor.html#implementAdd(org.apache.calcite.adapter.enumerable.AggContext,org.apache.calcite.adapter.enumerable.AggAddContext)"><code>AggImplementor.implementAdd(AggContext, AggAddContext)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="AggContext.html" title="interface in org.apache.calcite.adapter.enumerable">AggContext</a></th>
<td class="colLast">
<div class="block">Information on the aggregate calculation context.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="AggImplementor.html" title="interface in org.apache.calcite.adapter.enumerable">AggImplementor</a></th>
<td class="colLast">
<div class="block">Implements an aggregate function by generating expressions to
initialize, add to, and get a result from, an accumulator.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="AggregateLambdaFactory.html" title="interface in org.apache.calcite.adapter.enumerable">AggregateLambdaFactory</a>&lt;TSource,&#8203;TOrigAccumulate,&#8203;TAccumulate,&#8203;TResult,&#8203;TKey&gt;</th>
<td class="colLast">
<div class="block">Generates lambda functions used in <a href="EnumerableAggregate.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableAggregate</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="AggResetContext.html" title="interface in org.apache.calcite.adapter.enumerable">AggResetContext</a></th>
<td class="colLast">
<div class="block">Information for a call to
<a href="AggImplementor.html#implementReset(org.apache.calcite.adapter.enumerable.AggContext,org.apache.calcite.adapter.enumerable.AggResetContext)"><code>AggImplementor.implementReset(AggContext, AggResetContext)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="AggResultContext.html" title="interface in org.apache.calcite.adapter.enumerable">AggResultContext</a></th>
<td class="colLast">
<div class="block">Information for a call to
<a href="AggImplementor.html#implementResult(org.apache.calcite.adapter.enumerable.AggContext,org.apache.calcite.adapter.enumerable.AggResultContext)"><code>AggImplementor.implementResult(AggContext, AggResultContext)</code></a></div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="CallImplementor.html" title="interface in org.apache.calcite.adapter.enumerable">CallImplementor</a></th>
<td class="colLast">
<div class="block">Implements a call via given translator.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableRel.html" title="interface in org.apache.calcite.adapter.enumerable">EnumerableRel</a></th>
<td class="colLast">
<div class="block">A relational expression of one of the
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>EnumerableConvention</code></a> calling
conventions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="LazyAggregateLambdaFactory.LazyAccumulator.html" title="interface in org.apache.calcite.adapter.enumerable">LazyAggregateLambdaFactory.LazyAccumulator</a>&lt;TOrigAccumulate,&#8203;TSource&gt;</th>
<td class="colLast">
<div class="block">Accumulate on the cached input sources.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="NestedBlockBuilder.html" title="interface in org.apache.calcite.adapter.enumerable">NestedBlockBuilder</a></th>
<td class="colLast">
<div class="block">Allows to build nested code blocks with tracking of current context and the
nullability of particular <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex"><code>RexNode</code></a> expressions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="NotNullImplementor.html" title="interface in org.apache.calcite.adapter.enumerable">NotNullImplementor</a></th>
<td class="colLast">
<div class="block">Simplified version of
<a href="CallImplementor.html" title="interface in org.apache.calcite.adapter.enumerable"><code>CallImplementor</code></a>
that does not know about null semantics.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="PhysType.html" title="interface in org.apache.calcite.adapter.enumerable">PhysType</a></th>
<td class="colLast">
<div class="block">Physical type of a row.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexToLixTranslator.InputGetter.html" title="interface in org.apache.calcite.adapter.enumerable">RexToLixTranslator.InputGetter</a></th>
<td class="colLast">
<div class="block">Translates a field of an input to an expression.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="WinAggAddContext.html" title="interface in org.apache.calcite.adapter.enumerable">WinAggAddContext</a></th>
<td class="colLast">
<div class="block">Information for a call to
<a href="AggImplementor.html#implementAdd(org.apache.calcite.adapter.enumerable.AggContext,org.apache.calcite.adapter.enumerable.AggAddContext)"><code>AggImplementor.implementAdd(AggContext, AggAddContext)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="WinAggContext.html" title="interface in org.apache.calcite.adapter.enumerable">WinAggContext</a></th>
<td class="colLast">
<div class="block">Marker interface to allow
<a href="AggImplementor.html" title="interface in org.apache.calcite.adapter.enumerable"><code>AggImplementor</code></a>
to tell if it is used in regular or windowed context.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="WinAggFrameContext.html" title="interface in org.apache.calcite.adapter.enumerable">WinAggFrameContext</a></th>
<td class="colLast">
<div class="block">Provides information on the current window.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="WinAggFrameResultContext.html" title="interface in org.apache.calcite.adapter.enumerable">WinAggFrameResultContext</a></th>
<td class="colLast">
<div class="block">Provides information on the current window when computing the result of
the aggregation.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="WinAggImplementor.html" title="interface in org.apache.calcite.adapter.enumerable">WinAggImplementor</a></th>
<td class="colLast">
<div class="block">Implements a windowed aggregate function by generating expressions to
initialize, add to, and get a result from, an accumulator.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="WinAggResetContext.html" title="interface in org.apache.calcite.adapter.enumerable">WinAggResetContext</a></th>
<td class="colLast">
<div class="block">Information for a call to
<a href="AggImplementor.html#implementReset(org.apache.calcite.adapter.enumerable.AggContext,org.apache.calcite.adapter.enumerable.AggResetContext)"><code>AggImplementor.implementReset(AggContext, AggResetContext)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="WinAggResultContext.html" title="interface in org.apache.calcite.adapter.enumerable">WinAggResultContext</a></th>
<td class="colLast">
<div class="block">Information for a call to
<a href="AggImplementor.html#implementResult(org.apache.calcite.adapter.enumerable.AggContext,org.apache.calcite.adapter.enumerable.AggResultContext)"><code>AggImplementor.implementResult(AggContext, AggResultContext)</code></a>.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary">
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="AggImpState.html" title="class in org.apache.calcite.adapter.enumerable">AggImpState</a></th>
<td class="colLast">
<div class="block">Represents internal state when implementing aggregate functions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="BasicAggregateLambdaFactory.html" title="class in org.apache.calcite.adapter.enumerable">BasicAggregateLambdaFactory</a>&lt;TSource,&#8203;TAccumulate,&#8203;TResult,&#8203;TKey&gt;</th>
<td class="colLast">
<div class="block">Implementation of <a href="AggregateLambdaFactory.html" title="interface in org.apache.calcite.adapter.enumerable"><code>AggregateLambdaFactory</code></a> that applies a sequence of
accumulator adders to input source.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="BasicLazyAccumulator.html" title="class in org.apache.calcite.adapter.enumerable">BasicLazyAccumulator</a>&lt;TAccumulate,&#8203;TSource&gt;</th>
<td class="colLast">
<div class="block">Performs accumulation against a pre-collected list of input sources,
used with <a href="LazyAggregateLambdaFactory.html" title="class in org.apache.calcite.adapter.enumerable"><code>LazyAggregateLambdaFactory</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="CodeGenerationBenchmark.html" title="class in org.apache.calcite.adapter.enumerable">CodeGenerationBenchmark</a></th>
<td class="colLast">
<div class="block">A benchmark of the main methods that are dynamically generating and compiling
Java code at runtime.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="CodeGenerationBenchmark.CacheState.html" title="class in org.apache.calcite.adapter.enumerable">CodeGenerationBenchmark.CacheState</a></th>
<td class="colLast">
<div class="block">State holding a cache that is initialized
once at the beginning of each iteration.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="CodeGenerationBenchmark.PlanInfo.html" title="class in org.apache.calcite.adapter.enumerable">CodeGenerationBenchmark.PlanInfo</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="CodeGenerationBenchmark.QueryState.html" title="class in org.apache.calcite.adapter.enumerable">CodeGenerationBenchmark.QueryState</a></th>
<td class="colLast">
<div class="block">State holding the generated queries/plans and additional information
exploited by the embedded compiler in order to dynamically build a Java class.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableAggregate.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableAggregate</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Aggregate.html" title="class in org.apache.calcite.rel.core"><code>Aggregate</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableAggregateRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableAggregateRule</a></th>
<td class="colLast">
<div class="block">Rule to convert a <a href="../../rel/logical/LogicalAggregate.html" title="class in org.apache.calcite.rel.logical"><code>LogicalAggregate</code></a>
to an <a href="EnumerableAggregate.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableAggregate</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableBindable.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableBindable</a></th>
<td class="colLast">
<div class="block">Relational expression that converts an enumerable input to interpretable
calling convention.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableBindable.EnumerableToBindableConverterRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableBindable.EnumerableToBindableConverterRule</a></th>
<td class="colLast">
<div class="block">Rule that converts any enumerable relational expression to bindable.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableCalc.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableCalc</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Calc.html" title="class in org.apache.calcite.rel.core"><code>Calc</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableCalcRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableCalcRule</a></th>
<td class="colLast">
<div class="block">Rule to convert a <a href="../../rel/logical/LogicalCalc.html" title="class in org.apache.calcite.rel.logical"><code>LogicalCalc</code></a> to an
<a href="EnumerableCalc.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableCalc</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableCollect.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableCollect</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Collect.html" title="class in org.apache.calcite.rel.core"><code>Collect</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableCollectRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableCollectRule</a></th>
<td class="colLast">
<div class="block">Rule to convert an <a href="../../rel/core/Collect.html" title="class in org.apache.calcite.rel.core"><code>Collect</code></a> to an
<a href="EnumerableCollect.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableCollect</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableCorrelate.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableCorrelate</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Correlate.html" title="class in org.apache.calcite.rel.core"><code>Correlate</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableCorrelateRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableCorrelateRule</a></th>
<td class="colLast">
<div class="block">Implementation of nested loops over enumerable inputs.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableFilter.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableFilter</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Filter.html" title="class in org.apache.calcite.rel.core"><code>Filter</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableFilterRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableFilterRule</a></th>
<td class="colLast">
<div class="block">Rule to convert a <a href="../../rel/logical/LogicalFilter.html" title="class in org.apache.calcite.rel.logical"><code>LogicalFilter</code></a> to an
<a href="EnumerableFilter.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableFilter</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableFilterToCalcRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableFilterToCalcRule</a></th>
<td class="colLast">
<div class="block">Variant of <a href="../../rel/rules/FilterToCalcRule.html" title="class in org.apache.calcite.rel.rules"><code>FilterToCalcRule</code></a> for
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableHashJoin.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableHashJoin</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Join.html" title="class in org.apache.calcite.rel.core"><code>Join</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableInterpretable.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableInterpretable</a></th>
<td class="colLast">
<div class="block">Relational expression that converts an enumerable input to interpretable
calling convention.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableInterpretable.EnumerableNode.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableInterpretable.EnumerableNode</a></th>
<td class="colLast">
<div class="block">Interpreter node that reads from an <a href="../../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j"><code>Enumerable</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableInterpretable.StaticFieldDetector.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableInterpretable.StaticFieldDetector</a></th>
<td class="colLast">
<div class="block">A visitor detecting if the Java AST contains static fields.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableInterpreter.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableInterpreter</a></th>
<td class="colLast">
<div class="block">Relational expression that executes its children using an interpreter.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableInterpreterRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableInterpreterRule</a></th>
<td class="colLast">
<div class="block">Planner rule that converts <a href="../../interpreter/BindableRel.html" title="interface in org.apache.calcite.interpreter"><code>BindableRel</code></a>
to <a href="EnumerableRel.html" title="interface in org.apache.calcite.adapter.enumerable"><code>EnumerableRel</code></a> by creating
an <a href="EnumerableInterpreter.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableInterpreter</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableIntersect.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableIntersect</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Intersect.html" title="class in org.apache.calcite.rel.core"><code>Intersect</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableIntersectRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableIntersectRule</a></th>
<td class="colLast">
<div class="block">Rule to convert a
<a href="../../rel/logical/LogicalIntersect.html" title="class in org.apache.calcite.rel.logical"><code>LogicalIntersect</code></a> to an
<a href="EnumerableIntersect.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableIntersect</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableJoinRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableJoinRule</a></th>
<td class="colLast">
<div class="block">Planner rule that converts a
<a href="../../rel/logical/LogicalJoin.html" title="class in org.apache.calcite.rel.logical"><code>LogicalJoin</code></a> relational expression
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableLimit.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableLimit</a></th>
<td class="colLast">
<div class="block">Relational expression that applies a limit and/or offset to its input.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableLimitRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableLimitRule</a></th>
<td class="colLast">
<div class="block">Rule to convert an <a href="../../rel/core/Sort.html" title="class in org.apache.calcite.rel.core"><code>Sort</code></a> that has
<code>offset</code> or <code>fetch</code> set to an
<a href="EnumerableLimit.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableLimit</code></a>
on top of a "pure" <code>Sort</code> that has no offset or fetch.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableMergeJoin.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableMergeJoin</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Join.html" title="class in org.apache.calcite.rel.core"><code>Join</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a> using
a merge algorithm.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableMergeJoinRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableMergeJoinRule</a></th>
<td class="colLast">
<div class="block">Planner rule that converts a
<a href="../../rel/logical/LogicalJoin.html" title="class in org.apache.calcite.rel.logical"><code>LogicalJoin</code></a> relational expression
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableMinus.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableMinus</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Minus.html" title="class in org.apache.calcite.rel.core"><code>Minus</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableMinusRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableMinusRule</a></th>
<td class="colLast">
<div class="block">Rule to convert an <a href="../../rel/logical/LogicalMinus.html" title="class in org.apache.calcite.rel.logical"><code>LogicalMinus</code></a> to an
<a href="EnumerableMinus.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableMinus</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableNestedLoopJoin.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableNestedLoopJoin</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Join.html" title="class in org.apache.calcite.rel.core"><code>Join</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>
that allows conditions that are not just <code>=</code> (equals).</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableProject.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableProject</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Project.html" title="class in org.apache.calcite.rel.core"><code>Project</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableProjectRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableProjectRule</a></th>
<td class="colLast">
<div class="block">Rule to convert a <a href="../../rel/logical/LogicalProject.html" title="class in org.apache.calcite.rel.logical"><code>LogicalProject</code></a> to an
<a href="EnumerableProject.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableProject</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableProjectToCalcRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableProjectToCalcRule</a></th>
<td class="colLast">
<div class="block">Variant of <a href="../../rel/rules/ProjectToCalcRule.html" title="class in org.apache.calcite.rel.rules"><code>ProjectToCalcRule</code></a> for
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableRel.Result.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableRel.Result</a></th>
<td class="colLast">
<div class="block">Result of implementing an enumerable relational expression by generating
Java code.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableRelImplementor.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableRelImplementor</a></th>
<td class="colLast">
<div class="block">Subclass of <a href="../../plan/RelImplementor.html" title="interface in org.apache.calcite.plan"><code>RelImplementor</code></a> for relational
operators of <a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>EnumerableConvention</code></a> calling convention.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableRelImplementor.TypeFinder.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableRelImplementor.TypeFinder</a></th>
<td class="colLast">
<div class="block">Visitor that finds types in an <a href="../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree"><code>Expression</code></a> tree.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableRepeatUnion.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableRepeatUnion</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/RepeatUnion.html" title="class in org.apache.calcite.rel.core"><code>RepeatUnion</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableRepeatUnionRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableRepeatUnionRule</a></th>
<td class="colLast">
<div class="block">Rule to convert a <a href="../../rel/logical/LogicalRepeatUnion.html" title="class in org.apache.calcite.rel.logical"><code>LogicalRepeatUnion</code></a> into an <a href="EnumerableRepeatUnion.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableRepeatUnion</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableRules.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableRules</a></th>
<td class="colLast">
<div class="block">Rules and relational operators for the
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableSemiJoin.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableSemiJoin</a></th>
<td class="colLast">Deprecated.
<div class="deprecationComment">This class is deprecated along with
<a href="../../rel/core/SemiJoin.html" title="class in org.apache.calcite.rel.core"><code>SemiJoin</code></a>;
the function is merged into <a href="EnumerableHashJoin.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableHashJoin</code></a>;
see <a href="EnumerableJoinRule.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableJoinRule</code></a> for details.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableSemiJoinRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableSemiJoinRule</a></th>
<td class="colLast">Deprecated.
<div class="deprecationComment">Use <a href="EnumerableJoinRule.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableJoinRule</code></a> instead.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableSort.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableSort</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Sort.html" title="class in org.apache.calcite.rel.core"><code>Sort</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableSortRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableSortRule</a></th>
<td class="colLast">
<div class="block">Rule to convert an <a href="../../rel/core/Sort.html" title="class in org.apache.calcite.rel.core"><code>Sort</code></a> to an
<a href="EnumerableSort.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableSort</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableTableFunctionScan.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableFunctionScan</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/TableFunctionScan.html" title="class in org.apache.calcite.rel.core"><code>TableFunctionScan</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableTableFunctionScanRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableFunctionScanRule</a></th>
<td class="colLast">
<div class="block">Planner rule that converts a
<a href="../../rel/logical/LogicalTableFunctionScan.html" title="class in org.apache.calcite.rel.logical"><code>LogicalTableFunctionScan</code></a>
relational expression
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableTableModify.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableModify</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/TableModify.html" title="class in org.apache.calcite.rel.core"><code>TableModify</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableTableModifyRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableModifyRule</a></th>
<td class="colLast">
<div class="block">Planner rule that converts a
<a href="../../rel/logical/LogicalTableModify.html" title="class in org.apache.calcite.rel.logical"><code>LogicalTableModify</code></a>
relational expression
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableTableScan.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableScan</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/TableScan.html" title="class in org.apache.calcite.rel.core"><code>TableScan</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableTableScanRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableScanRule</a></th>
<td class="colLast">
<div class="block">Planner rule that converts a
<a href="../../rel/logical/LogicalTableFunctionScan.html" title="class in org.apache.calcite.rel.logical"><code>LogicalTableFunctionScan</code></a>
relational expression
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableTableSpool.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableSpool</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/TableSpool.html" title="class in org.apache.calcite.rel.core"><code>TableSpool</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>
that writes into a <a href="../../schema/ModifiableTable.html" title="interface in org.apache.calcite.schema"><code>ModifiableTable</code></a> (which must exist in the current
schema).</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableTableSpoolRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableSpoolRule</a></th>
<td class="colLast">
<div class="block">Rule to convert a <a href="../../rel/logical/LogicalTableSpool.html" title="class in org.apache.calcite.rel.logical"><code>LogicalTableSpool</code></a> into an
<a href="EnumerableTableSpool.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableTableSpool</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableUncollect.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableUncollect</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Uncollect.html" title="class in org.apache.calcite.rel.core"><code>Uncollect</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableUncollectRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableUncollectRule</a></th>
<td class="colLast">
<div class="block">Rule to convert an <a href="../../rel/core/Uncollect.html" title="class in org.apache.calcite.rel.core"><code>Uncollect</code></a> to an
<a href="EnumerableUncollect.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableUncollect</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableUnion.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableUnion</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Union.html" title="class in org.apache.calcite.rel.core"><code>Union</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableUnionRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableUnionRule</a></th>
<td class="colLast">
<div class="block">Rule to convert an <a href="../../rel/logical/LogicalUnion.html" title="class in org.apache.calcite.rel.logical"><code>LogicalUnion</code></a> to an
<a href="EnumerableUnion.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableUnion</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableValues.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableValues</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Values.html" title="class in org.apache.calcite.rel.core"><code>Values</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableValuesRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableValuesRule</a></th>
<td class="colLast">
<div class="block">Planner rule that converts a
<a href="../../rel/logical/LogicalValues.html" title="class in org.apache.calcite.rel.logical"><code>LogicalValues</code></a>
relational expression
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableWindow.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableWindow</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="../../rel/core/Window.html" title="class in org.apache.calcite.rel.core"><code>Window</code></a> in
<a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable"><code>enumerable calling convention</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableWindow.WindowRelInputGetter.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableWindow.WindowRelInputGetter</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="RexToLixTranslator.InputGetter.html" title="interface in org.apache.calcite.adapter.enumerable"><code>RexToLixTranslator.InputGetter</code></a>
suitable for generating implementations of windowed aggregate
functions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableWindowRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableWindowRule</a></th>
<td class="colLast">
<div class="block">Rule to convert a <a href="../../rel/logical/LogicalWindow.html" title="class in org.apache.calcite.rel.logical"><code>LogicalWindow</code></a> to
an <a href="EnumerableWindow.html" title="class in org.apache.calcite.adapter.enumerable"><code>EnumerableWindow</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumUtils.html" title="class in org.apache.calcite.adapter.enumerable">EnumUtils</a></th>
<td class="colLast">
<div class="block">Utilities for generating programs in the Enumerable (functional)
style.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="JavaRelImplementor.html" title="class in org.apache.calcite.adapter.enumerable">JavaRelImplementor</a></th>
<td class="colLast">
<div class="block">Abstract base class for implementations of <a href="../../plan/RelImplementor.html" title="interface in org.apache.calcite.plan"><code>RelImplementor</code></a>
that generate java code.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="LazyAggregateLambdaFactory.html" title="class in org.apache.calcite.adapter.enumerable">LazyAggregateLambdaFactory</a>&lt;TSource,&#8203;TKey,&#8203;TOrigAccumulate,&#8203;TResult&gt;</th>
<td class="colLast">
<div class="block">Generate aggregate lambdas that preserve the input source before calling each
aggregate adder, this implementation is generally used when we need to sort the input
before performing aggregation.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="LazyAggregateLambdaFactory.LazySource.html" title="class in org.apache.calcite.adapter.enumerable">LazyAggregateLambdaFactory.LazySource</a>&lt;TSource&gt;</th>
<td class="colLast">
<div class="block">Cache the input sources.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="NestedBlockBuilderImpl.html" title="class in org.apache.calcite.adapter.enumerable">NestedBlockBuilderImpl</a></th>
<td class="colLast">
<div class="block">Allows to build nested code blocks with tracking of current context and the
nullability of particular <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex"><code>RexNode</code></a> expressions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="PhysTypeImpl.html" title="class in org.apache.calcite.adapter.enumerable">PhysTypeImpl</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="PhysType.html" title="interface in org.apache.calcite.adapter.enumerable"><code>PhysType</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ReflectiveCallNotNullImplementor.html" title="class in org.apache.calcite.adapter.enumerable">ReflectiveCallNotNullImplementor</a></th>
<td class="colLast">
<div class="block">Implementation of
<a href="NotNullImplementor.html" title="interface in org.apache.calcite.adapter.enumerable"><code>NotNullImplementor</code></a>
that calls a given <code>Method</code>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable</a></th>
<td class="colLast">
<div class="block">Contains implementations of Rex operators as Java code.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.BinaryImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.BinaryImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for binary operators.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.BitOpImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.BitOpImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>BIT_AND</code> and <code>BIT_OR</code> aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.CaseImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.CaseImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the SQL <code>CASE</code> operator.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.CastImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.CastImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the SQL <code>CAST</code> operator.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.CastOptimizedImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.CastOptimizedImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the SQL <code>CAST</code> function that optimizes if, say, the
argument is already of the desired type.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.CoalesceImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.CoalesceImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the SQL <code>COALESCE</code> operator.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.CollectImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.CollectImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>COLLECT</code> aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.CountImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.CountImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>COUNT</code> aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.CountWinImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.CountWinImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>COUNT</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.DatetimeArithmeticImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.DatetimeArithmeticImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for various datetime arithmetic.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.DenseRankImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.DenseRankImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>DENSE_RANK</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.ExtractImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.ExtractImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>EXTRACT(unit FROM datetime)</code> function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.FirstLastValueImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.FirstLastValueImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>FIRST_VALUE</code> and <code>LAST_VALUE</code>
windowed aggregate functions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.FirstValueImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.FirstValueImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>FIRST_VALUE</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.FloorImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.FloorImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>FLOOR</code> and <code>CEIL</code> functions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.FusionImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.FusionImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>FUSION</code> aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.GroupingImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.GroupingImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>GROUPING</code> aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.IsXxxImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.IsXxxImplementor</a></th>
<td class="colLast">
<div class="block">Implements "IS XXX" operations such as "IS NULL"
or "IS NOT TRUE".</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.ItemImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.ItemImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>ITEM</code> SQL operator.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.JsonArrayAggImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.JsonArrayAggImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>JSON_ARRAYAGG</code> aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.JsonObjectAggImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.JsonObjectAggImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>JSON_OBJECTAGG</code> aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.LagImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.LagImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>LAG</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.LastValueImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.LastValueImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>LAST_VALUE</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.LeadImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.LeadImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>LEAD</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.LeadLagImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.LeadLagImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>LEAD</code> and <code>LAG</code> windowed
aggregate functions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.ListaggImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.ListaggImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>LISTAGG</code> aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.MethodImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.MethodImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for a function that generates calls to a given method.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.MethodNameImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.MethodNameImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for SQL functions that generates calls to a given method name.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.MinMaxImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.MinMaxImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>MIN</code> and <code>MAX</code> aggregate functions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.NotImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.NotImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>NOT</code> operator.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.NthValueImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.NthValueImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>NTH_VALUE</code>
windowed aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.NtileImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.NtileImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>NTILE</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.RankImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.RankImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>RANK</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.ReinterpretImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.ReinterpretImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>REINTERPRET</code> internal SQL operator.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.RowNumberImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.RowNumberImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>ROW_NUMBER</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.SingleValueImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.SingleValueImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>SINGLE_VALUE</code> aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.SumImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.SumImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>SUM</code> windowed aggregate function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.SystemFunctionImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.SystemFunctionImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for SQL system functions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.TrimImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.TrimImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for the <code>TRIM</code> function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.UnaryImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.UnaryImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for unary operators.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.UserDefinedAggReflectiveImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.UserDefinedAggReflectiveImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for user-defined aggregate functions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexImpTable.ValueConstructorImplementor.html" title="class in org.apache.calcite.adapter.enumerable">RexImpTable.ValueConstructorImplementor</a></th>
<td class="colLast">
<div class="block">Implementor for a value-constructor.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexToLixTranslator.html" title="class in org.apache.calcite.adapter.enumerable">RexToLixTranslator</a></th>
<td class="colLast">
<div class="block">Translates <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex"><code>REX expressions</code></a> to
<a href="../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree"><code>linq4j expressions</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RexToLixTranslator.InputGetterImpl.html" title="class in org.apache.calcite.adapter.enumerable">RexToLixTranslator.InputGetterImpl</a></th>
<td class="colLast">
<div class="block">Implementation of <a href="RexToLixTranslator.InputGetter.html" title="interface in org.apache.calcite.adapter.enumerable"><code>RexToLixTranslator.InputGetter</code></a> that calls
<a href="PhysType.html#fieldReference(org.apache.calcite.linq4j.tree.Expression,int)"><code>PhysType.fieldReference(org.apache.calcite.linq4j.tree.Expression, int)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="SourceSorter.html" title="class in org.apache.calcite.adapter.enumerable">SourceSorter</a>&lt;TAccumulate,&#8203;TSource,&#8203;TSortKey&gt;</th>
<td class="colLast">
<div class="block">Helper that combines the sorting process and accumulating process against the
aggregate execution, used with <a href="LazyAggregateLambdaFactory.html" title="class in org.apache.calcite.adapter.enumerable"><code>LazyAggregateLambdaFactory</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="StrictAggImplementor.html" title="class in org.apache.calcite.adapter.enumerable">StrictAggImplementor</a></th>
<td class="colLast">
<div class="block">The base implementation of strict aggregate function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="StrictWinAggImplementor.html" title="class in org.apache.calcite.adapter.enumerable">StrictWinAggImplementor</a></th>
<td class="colLast">
<div class="block">The base implementation of strict window aggregate function.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary">
<caption><span>Enum Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Enum</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="EnumerableConvention.html" title="enum in org.apache.calcite.adapter.enumerable">EnumerableConvention</a></th>
<td class="colLast">
<div class="block">Family of calling conventions that return results as an
<a href="../../linq4j/Enumerable.html" title="interface in org.apache.calcite.linq4j"><code>Enumerable</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="EnumerableRel.Prefer.html" title="enum in org.apache.calcite.adapter.enumerable">EnumerableRel.Prefer</a></th>
<td class="colLast">
<div class="block">Preferred physical type.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="JavaRowFormat.html" title="enum in org.apache.calcite.adapter.enumerable">JavaRowFormat</a></th>
<td class="colLast">
<div class="block">How a row is represented as a Java value.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="NullPolicy.html" title="enum in org.apache.calcite.adapter.enumerable">NullPolicy</a></th>
<td class="colLast">
<div class="block">Describes when a function/operator will return null.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexImpTable.NullAs.html" title="enum in org.apache.calcite.adapter.enumerable">RexImpTable.NullAs</a></th>
<td class="colLast">
<div class="block">Strategy what an operator should return if one of its
arguments is null.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="WinAggImplementor.SeekType.html" title="enum in org.apache.calcite.adapter.enumerable">WinAggImplementor.SeekType</a></th>
<td class="colLast">
<div class="block">Allows to access rows in window partition relative to first/last and
current row.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary">
<caption><span>Exception Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Exception</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RexToLixTranslator.AlwaysNull.html" title="class in org.apache.calcite.adapter.enumerable">RexToLixTranslator.AlwaysNull</a></th>
<td class="colLast">
<div class="block">Thrown in the unusual (but not erroneous) situation where the expression
we are translating is the null literal but we have already checked that
it is not null.</div>
</td>
</tr>
</tbody>
</table>
</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 class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></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>