blob: 289335bfe84cf8727d65a9e7cacb730807bfc865 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>RexUnknownAs (Apache Calcite calcite API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.calcite.rex, enum: RexUnknownAs">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../script-dir/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../script-dir/jquery-3.4.1.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.js"></script>
</head>
<body class="class-declaration">
<script type="text/javascript">var data = {"i0":9,"i1":10,"i2":10,"i3":9,"i4":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flexBox">
<header role="banner" class="flexHeader">
<nav role="navigation">
<!-- ========= 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 class="navBarCell1Rev">Class</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 class="aboutLanguage"><b>Apache Calcite</b></div>
</div>
<div class="subNav">
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<div class="navListSearch"><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="skipNav"><a id="skip.navbar.top">
<!-- -->
</a></div>
</nav>
</header>
<div class="flexContent">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.calcite.rex</a></div>
<h1 title="Enum RexUnknownAs" class="title">Enum RexUnknownAs</h1>
</div>
<div class="contentContainer">
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a>
<div class="inheritance"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Enum</a>&lt;<a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a>&gt;
<div class="inheritance">org.apache.calcite.rex.RexUnknownAs</div>
</div>
</div>
<section class="description">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/javase/9/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;<a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a>&gt;</code>, <code>java.lang.constant.Constable</code></dd>
</dl>
<hr>
<pre>public enum <span class="typeNameLabel">RexUnknownAs</span>
extends <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a>&lt;<a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a>&gt;</pre>
<div class="block">Policy for whether a simplified expression may instead return another
value.
<p>In particular, it deals with converting three-valued logic (TRUE, FALSE,
UNKNOWN) to two-valued logic (TRUE, FALSE) for callers that treat the UNKNOWN
value the same as TRUE or FALSE.
<p>Sometimes the three-valued version of the expression is simpler (has a
smaller expression tree) than the two-valued version. In these cases,
favor simplicity over reduction to two-valued logic.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="RexSimplify.html" title="class in org.apache.calcite.rex"><code>RexSimplify</code></a></dd>
</dl>
</section>
<section class="summary">
<ul class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<li class="blockList">
<section class="nestedClassSummary"><a id="nested.class.summary">
<!-- -->
</a>
<h2>Nested Class Summary</h2>
<div class="inheritedList">
<h2>Nested classes/interfaces inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a></h2>
<a id="nested.classes.inherited.from.class.java.lang.Enum">
<!-- -->
</a><code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.EnumDesc.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum.EnumDesc</a>&lt;<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.EnumDesc.html?is-external=true" title="class or interface in java.lang" class="externalLink">E</a> extends <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a>&lt;<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.EnumDesc.html?is-external=true" title="class or interface in java.lang" class="externalLink">E</a>&gt;&gt;</code></div>
</section>
</li>
<!-- =========== ENUM CONSTANT SUMMARY =========== -->
<li class="blockList">
<section class="constantsSummary"><a id="enum.constant.summary">
<!-- -->
</a>
<h2>Enum Constant Summary</h2>
<div class="memberSummary">
<table>
<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
<thead>
<tr>
<th class="colFirst" scope="col">Enum Constant</th>
<th class="colLast" scope="col">Description</th>
</tr>
</thead>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#FALSE">FALSE</a></span></code></th>
<td class="colLast">
<div class="block">Policy that indicates that the expression is being used in a context
Where an UNKNOWN value is treated in the same way as FALSE.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#TRUE">TRUE</a></span></code></th>
<td class="colLast">
<div class="block">Policy that indicates that the expression is being used in a context
Where an UNKNOWN value is treated in the same way as TRUE.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#UNKNOWN">UNKNOWN</a></span></code></th>
<td class="colLast">
<div class="block">Policy that indicates that the expression is being used in a context
Where an UNKNOWN value is treated as is.</div>
</td>
</tr>
</tbody>
</table>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li class="blockList">
<section class="methodSummary"><a id="method.summary">
<!-- -->
</a>
<h2>Method Summary</h2>
<div class="memberSummary">
<div role="tablist" aria-orientation="horizontal"><button role="tab" aria-selected="true" aria-controls="memberSummary_tabpanel" tabindex="0" onkeydown="switchTab(event)" id="t0" class="activeTableTab">All Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t1" class="tableTab" onclick="show(1);">Static Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t2" class="tableTab" onclick="show(2);">Instance Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t4" class="tableTab" onclick="show(8);">Concrete Methods</button></div>
<div id="memberSummary_tabpanel" role="tabpanel">
<table aria-labelledby="t0">
<thead>
<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>
</thead>
<tbody>
<tr class="altColor" id="i0">
<td class="colFirst"><code>static <a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#falseIf(boolean)">falseIf</a></span>&#8203;(boolean&nbsp;unknownAsFalse)</code></th>
<td class="colLast">
<div class="block">Returns <a href="#FALSE"><code>FALSE</code></a> if <code>unknownAsFalse</code> is true,
<a href="#UNKNOWN"><code>UNKNOWN</code></a> otherwise.</div>
</td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code><a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#negate()">negate</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toBoolean()">toBoolean</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code>static <a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(java.lang.String)">valueOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Returns the enum constant of this type with the specified name.</div>
</td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code>static <a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a>[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#values()">values</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="inheritedList">
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a></h3>
<a id="methods.inherited.from.class.java.lang.Enum">
<!-- -->
</a><code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#compareTo(E)" title="class or interface in java.lang" class="externalLink">compareTo</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#describeConstable()" title="class or interface in java.lang" class="externalLink">describeConstable</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass()" title="class or interface in java.lang" class="externalLink">getDeclaringClass</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#name()" title="class or interface in java.lang" class="externalLink">name</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#ordinal()" title="class or interface in java.lang" class="externalLink">ordinal</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Enum.html?is-external=true#valueOf(java.lang.Class,java.lang.String)" title="class or interface in java.lang" class="externalLink">valueOf</a></code></div>
<div class="inheritedList">
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
<a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a><code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="blockList">
<!-- ============ ENUM CONSTANT DETAIL =========== -->
<li class="blockList">
<section class="constantDetails"><a id="enum.constant.detail">
<!-- -->
</a>
<h2>Enum Constant Details</h2>
<ul class="blockList">
<li class="blockList">
<section class="detail">
<h3><a id="FALSE">FALSE</a></h3>
<div class="memberSignature"><span class="modifiers">public static final</span>&nbsp;<span class="returnType"><a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></span>&nbsp;<span class="memberName">FALSE</span></div>
<div class="block">Policy that indicates that the expression is being used in a context
Where an UNKNOWN value is treated in the same way as FALSE. Therefore, when
simplifying the expression, it is acceptable for the simplified expression
to evaluate to FALSE in some situations where the original expression would
evaluate to UNKNOWN.
<p>SQL predicates (<code>WHERE</code>, <code>ON</code>, <code>HAVING</code> and
<code>FILTER (WHERE)</code> clauses, a <code>WHEN</code> clause of a <code>CASE</code>
expression, and in <code>CHECK</code> constraints) all treat UNKNOWN as FALSE.
<p>If the simplified expression never returns UNKNOWN, the simplifier
should make this clear to the caller, if possible, by marking its type as
<code>BOOLEAN NOT NULL</code>.</div>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="TRUE">TRUE</a></h3>
<div class="memberSignature"><span class="modifiers">public static final</span>&nbsp;<span class="returnType"><a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></span>&nbsp;<span class="memberName">TRUE</span></div>
<div class="block">Policy that indicates that the expression is being used in a context
Where an UNKNOWN value is treated in the same way as TRUE. Therefore, when
simplifying the expression, it is acceptable for the simplified expression
to evaluate to TRUE in some situations where the original expression would
evaluate to UNKNOWN.
<p>This does not occur commonly in SQL. However, it occurs internally
during simplification. For example, "<code>WHERE NOT expression</code>"
evaluates "<code>NOT expression</code>" in a context that treats UNKNOWN as
FALSE; it is useful to consider that "<code>expression</code>" is evaluated in a
context that treats UNKNOWN as TRUE.
<p>If the simplified expression never returns UNKNOWN, the simplifier
should make this clear to the caller, if possible, by marking its type as
<code>BOOLEAN NOT NULL</code>.</div>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="UNKNOWN">UNKNOWN</a></h3>
<div class="memberSignature"><span class="modifiers">public static final</span>&nbsp;<span class="returnType"><a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></span>&nbsp;<span class="memberName">UNKNOWN</span></div>
<div class="block">Policy that indicates that the expression is being used in a context
Where an UNKNOWN value is treated as is. This occurs:
<ul>
<li>In any expression whose type is not <code>BOOLEAN</code>
<li>In <code>BOOLEAN</code> expressions that are <code>NOT NULL</code>
<li>In <code>BOOLEAN</code> expressions where <code>UNKNOWN</code> should be
returned as is, for example in a <code>SELECT</code> clause, or within an
expression such as an operand to <code>AND</code>, <code>OR</code> or
<code>NOT</code>
</ul>
<p>If you are unsure, use UNKNOWN. It is the safest option.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li class="blockList">
<section class="methodDetails"><a id="method.detail">
<!-- -->
</a>
<h2>Method Details</h2>
<ul class="blockList">
<li class="blockList">
<section class="detail">
<h3><a id="values()">values</a></h3>
<div class="memberSignature"><span class="modifiers">public static</span>&nbsp;<span class="returnType"><a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a>[]</span>&nbsp;<span class="memberName">values</span>()</div>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array containing the constants of this enum type, in the order they are declared</dd>
</dl>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="valueOf(java.lang.String)">valueOf</a></h3>
<div class="memberSignature"><span class="modifiers">public static</span>&nbsp;<span class="returnType"><a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></span>&nbsp;<span class="memberName">valueOf</span>&#8203;(<span class="arguments"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</span></div>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the enum constant with the specified name</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
<dd><code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang" class="externalLink">NullPointerException</a></code> - if the argument is null</dd>
</dl>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="falseIf(boolean)">falseIf</a></h3>
<div class="memberSignature"><span class="annotations"><a href="https://docs.oracle.com/javase/9/docs/api/javax/annotation/Nonnull.html?is-external=true" title="class or interface in javax.annotation" class="externalLink">@Nonnull</a>
</span><span class="modifiers">public static</span>&nbsp;<span class="returnType"><a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></span>&nbsp;<span class="memberName">falseIf</span>&#8203;(<span class="arguments">boolean&nbsp;unknownAsFalse)</span></div>
<div class="block">Returns <a href="#FALSE"><code>FALSE</code></a> if <code>unknownAsFalse</code> is true,
<a href="#UNKNOWN"><code>UNKNOWN</code></a> otherwise.</div>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="toBoolean()">toBoolean</a></h3>
<div class="memberSignature"><span class="modifiers">public</span>&nbsp;<span class="returnType">boolean</span>&nbsp;<span class="memberName">toBoolean</span>()</div>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="negate()">negate</a></h3>
<div class="memberSignature"><span class="modifiers">public</span>&nbsp;<span class="returnType"><a href="RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a></span>&nbsp;<span class="memberName">negate</span>()</div>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
</div>
<!-- ========= END OF CLASS DATA ========= -->
</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 class="navBarCell1Rev">Class</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 class="aboutLanguage"><b>Apache Calcite</b></div>
</div>
<div class="subNav">
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &copy; 2012-2020 Apache Software Foundation. All Rights Reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>