blob: e72839051f7e742eaab5dbf736f9b790680449ae [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Uses of Interface org.apache.calcite.sql.type.SqlOperandTypeChecker (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 Interface org.apache.calcite.sql.type.SqlOperandTypeChecker (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="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">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 Interface org.apache.calcite.sql.type.SqlOperandTypeChecker" class="title">Uses of Interface<br>org.apache.calcite.sql.type.SqlOperandTypeChecker</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">
<li class="blockList">
<table class="useSummary">
<caption><span>Packages that use <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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.sql">org.apache.calcite.sql</a></th>
<td class="colLast">
<div class="block">Provides a SQL parser and object model.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.sql.fun">org.apache.calcite.sql.fun</a></th>
<td class="colLast">
<div class="block">Defines the set of standard SQL row-level functions and
operators.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.sql.type">org.apache.calcite.sql.type</a></th>
<td class="colLast">
<div class="block">SQL type system.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.sql.validate">org.apache.calcite.sql.validate</a></th>
<td class="colLast">
<div class="block">SQL validation.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<ul class="blockList">
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql">
<!-- -->
</a>
<h3>Uses of <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a> in <a href="../../package-summary.html">org.apache.calcite.sql</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../package-summary.html">org.apache.calcite.sql</a> declared as <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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 <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../SqlOperator.html#operandTypeChecker">operandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">used to validate operand types</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../package-summary.html">org.apache.calcite.sql</a> that return <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../SqlOperator.html#getOperandTypeChecker()">getOperandTypeChecker</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../package-summary.html">org.apache.calcite.sql</a> with parameters of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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">SqlOperator.</span><code><span class="memberNameLink"><a href="../../SqlOperator.html#checkOperandCount(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlCall)">checkOperandCount</a></span>&#8203;(<a href="../../validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;argType,
<a href="../../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../package-summary.html">org.apache.calcite.sql</a> with parameters of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlAggFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlFunctionCategory)">SqlAggFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;funcType)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlAggFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlFunctionCategory,boolean,boolean)">SqlAggFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;funcType,
boolean&nbsp;requiresOrder,
boolean&nbsp;requiresOver)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlAggFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlFunctionCategory,boolean,boolean,org.apache.calcite.util.Optionality)">SqlAggFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;funcType,
boolean&nbsp;requiresOrder,
boolean&nbsp;requiresOver,
<a href="../../../util/Optionality.html" title="enum in org.apache.calcite.util">Optionality</a>&nbsp;requiresGroupOrder)</code></th>
<td class="colLast">
<div class="block">Creates a built-in or user-defined SqlAggFunction or window function.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlAggFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlFunctionCategory)">SqlAggFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;funcType)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlAsOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,boolean,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlAsOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
boolean&nbsp;leftAssoc,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlBinaryOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,boolean,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlBinaryOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
boolean&nbsp;leftAssoc,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">
<div class="block">Creates a SqlBinaryOperator.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.sql.SqlFunctionCategory)">SqlFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;category)</code></th>
<td class="colLast">
<div class="block">Internal constructor.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlFunctionCategory)">SqlFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;category)</code></th>
<td class="colLast">
<div class="block">Creates a new SqlFunction for a call to a builtin function.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlFunction.html#%3Cinit%3E(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.sql.SqlFunctionCategory)">SqlFunction</a></span>&#8203;(<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;funcType)</code></th>
<td class="colLast">
<div class="block">Creates a placeholder SqlFunction for an invocation of a function with a
possibly qualified name.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlFunctionalOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,boolean,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlFunctionalOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;pred,
boolean&nbsp;isLeftAssoc,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlGroupedWindowFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.SqlGroupedWindowFunction,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlGroupedWindowFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../../SqlGroupedWindowFunction.html" title="class in org.apache.calcite.sql">SqlGroupedWindowFunction</a>&nbsp;groupFunction,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlGroupedWindowFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.SqlGroupedWindowFunction,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlFunctionCategory)">SqlGroupedWindowFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../../SqlGroupedWindowFunction.html" title="class in org.apache.calcite.sql">SqlGroupedWindowFunction</a>&nbsp;groupFunction,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;category)</code></th>
<td class="colLast">
<div class="block">Creates a SqlGroupedWindowFunction.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlGroupedWindowFunction.html#%3Cinit%3E(org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.SqlGroupedWindowFunction,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlGroupedWindowFunction</a></span>&#8203;(<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../../SqlGroupedWindowFunction.html" title="class in org.apache.calcite.sql">SqlGroupedWindowFunction</a>&nbsp;groupFunction,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlInfixOperator.html#%3Cinit%3E(java.lang.String%5B%5D,org.apache.calcite.sql.SqlKind,int,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlInfixOperator</a></span>&#8203;(java.lang.String[]&nbsp;names,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;precedence,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlInternalOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,boolean,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlInternalOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
boolean&nbsp;isLeftAssoc,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,boolean,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
boolean&nbsp;leftAssoc,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">
<div class="block">Creates an operator specifying left/right associativity.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,int,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;leftPrecedence,
int&nbsp;rightPrecedence,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">
<div class="block">Creates an operator.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlPostfixOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlPostfixOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlPrefixOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlPrefixOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlSetOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,boolean,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlSetOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
boolean&nbsp;all,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlSpecialOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,boolean,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlSpecialOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
boolean&nbsp;leftAssoc,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../SqlUnresolvedFunction.html#%3Cinit%3E(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.sql.SqlFunctionCategory)">SqlUnresolvedFunction</a></span>&#8203;(<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;funcType)</code></th>
<td class="colLast">
<div class="block">Creates a placeholder SqlUnresolvedFunction for an invocation of a function
with a possibly qualified name.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql.fun">
<!-- -->
</a>
<h3>Uses of <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a> in <a href="../../fun/package-summary.html">org.apache.calcite.sql.fun</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../fun/package-summary.html">org.apache.calcite.sql.fun</a> declared as <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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 static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAbstractTimeFunction.</span><code><span class="memberNameLink"><a href="../../fun/SqlAbstractTimeFunction.html#OTC_CUSTOM">OTC_CUSTOM</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlBetweenOperator.</span><code><span class="memberNameLink"><a href="../../fun/SqlBetweenOperator.html#OTC_CUSTOM">OTC_CUSTOM</a></span></code></th>
<td class="colLast">
<div class="block">Custom operand-type checking strategy.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOverlayFunction.</span><code><span class="memberNameLink"><a href="../../fun/SqlOverlayFunction.html#OTC_CUSTOM">OTC_CUSTOM</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlPositionFunction.</span><code><span class="memberNameLink"><a href="../../fun/SqlPositionFunction.html#OTC_CUSTOM">OTC_CUSTOM</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../fun/package-summary.html">org.apache.calcite.sql.fun</a> with parameters of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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">SqlJsonArrayFunction.</span><code><span class="memberNameLink"><a href="../../fun/SqlJsonArrayFunction.html#checkOperandCount(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlCall)">checkOperandCount</a></span>&#8203;(<a href="../../validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;argType,
<a href="../../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJsonDepthFunction.</span><code><span class="memberNameLink"><a href="../../fun/SqlJsonDepthFunction.html#checkOperandCount(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlCall)">checkOperandCount</a></span>&#8203;(<a href="../../validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;argType,
<a href="../../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJsonObjectFunction.</span><code><span class="memberNameLink"><a href="../../fun/SqlJsonObjectFunction.html#checkOperandCount(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlCall)">checkOperandCount</a></span>&#8203;(<a href="../../validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;argType,
<a href="../../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJsonPrettyFunction.</span><code><span class="memberNameLink"><a href="../../fun/SqlJsonPrettyFunction.html#checkOperandCount(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlCall)">checkOperandCount</a></span>&#8203;(<a href="../../validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;argType,
<a href="../../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJsonTypeFunction.</span><code><span class="memberNameLink"><a href="../../fun/SqlJsonTypeFunction.html#checkOperandCount(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlCall)">checkOperandCount</a></span>&#8203;(<a href="../../validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;argType,
<a href="../../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../fun/package-summary.html">org.apache.calcite.sql.fun</a> with parameters of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../fun/SqlAbstractGroupFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlFunctionCategory)">SqlAbstractGroupFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;category)</code></th>
<td class="colLast">
<div class="block">Creates a SqlAbstractGroupFunction.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../fun/SqlCountAggFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlCountAggFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;sqlOperandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../fun/SqlMonotonicBinaryOperator.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,int,boolean,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker)">SqlMonotonicBinaryOperator</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
int&nbsp;prec,
boolean&nbsp;isLeftAssoc,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../fun/SqlMonotonicUnaryFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.sql.SqlFunctionCategory)">SqlMonotonicUnaryFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;funcType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql.type">
<!-- -->
</a>
<h3>Uses of <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a> in <a href="../package-summary.html">org.apache.calcite.sql.type</a></h3>
<table class="useSummary">
<caption><span>Subinterfaces of <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a> in <a href="../package-summary.html">org.apache.calcite.sql.type</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Interface</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>interface&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SqlSingleOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlSingleOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">SqlSingleOperandTypeChecker is an extension of <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type"><code>SqlOperandTypeChecker</code></a>
for implementations which are capable of checking the type of a single
operand in isolation.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Classes in <a href="../package-summary.html">org.apache.calcite.sql.type</a> that implement <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../AssignableOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">AssignableOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">AssignableOperandTypeChecker implements <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type"><code>SqlOperandTypeChecker</code></a> by
verifying that the type of each argument is assignable to a predefined set of
parameter types (under the SQL definition of "assignable").</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../ComparableOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">ComparableOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">Type checking strategy which verifies that types have the required attributes
to be used as arguments to comparison operators.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../CompositeOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">CompositeOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">This class allows multiple existing <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type"><code>SqlOperandTypeChecker</code></a> rules to be
combined into one rule.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../CompositeSingleOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">CompositeSingleOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">Allows multiple
<a href="../SqlSingleOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type"><code>SqlSingleOperandTypeChecker</code></a> rules to be
combined into one rule.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../FamilyOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">FamilyOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">Operand type-checking strategy which checks operands for inclusion in type
families.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../LiteralOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">LiteralOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">Parameter type-checking strategy type must be a literal (whether null is
allowed is determined by the constructor).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../MultisetOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">MultisetOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">Parameter type-checking strategy types must be [nullable] Multiset,
[nullable] Multiset and the two types must have the same element type</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../OperandTypes.PeriodOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">OperandTypes.PeriodOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">Operand type checker that accepts period types:
PERIOD (DATETIME, DATETIME)
PERIOD (DATETIME, INTERVAL)
[ROW] (DATETIME, DATETIME)
[ROW] (DATETIME, INTERVAL)</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SameOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">SameOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">Parameter type-checking strategy where all operand types must be the same.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SameOperandTypeExceptLastOperandChecker.html" title="class in org.apache.calcite.sql.type">SameOperandTypeExceptLastOperandChecker</a></span></code></th>
<td class="colLast">
<div class="block">Parameter type-checking strategy where all operand types except last one must be the same.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../SetopOperandTypeChecker.html" title="class in org.apache.calcite.sql.type">SetopOperandTypeChecker</a></span></code></th>
<td class="colLast">
<div class="block">Parameter type-checking strategy for a set operator (UNION, INTERSECT,
EXCEPT).</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../package-summary.html">org.apache.calcite.sql.type</a> declared as <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#COMPARABLE_ORDERED">COMPARABLE_ORDERED</a></span></code></th>
<td class="colLast">
<div class="block">Operand type-checking strategy where operand type must allow ordered
comparisons.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#COMPARABLE_ORDERED_COMPARABLE_ORDERED">COMPARABLE_ORDERED_COMPARABLE_ORDERED</a></span></code></th>
<td class="colLast">
<div class="block">Operand type-checking strategy where operand types must allow ordered
comparisons.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#COMPARABLE_UNORDERED_COMPARABLE_UNORDERED">COMPARABLE_UNORDERED_COMPARABLE_UNORDERED</a></span></code></th>
<td class="colLast">
<div class="block">Operand type-checking strategy where operand types must allow unordered
comparisons.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#MULTISET_MULTISET">MULTISET_MULTISET</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#ONE_OR_MORE">ONE_OR_MORE</a></span></code></th>
<td class="colLast">
<div class="block">Operand type-checking strategy that allows one or more operands.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#RECORD_TO_SCALAR">RECORD_TO_SCALAR</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#SAME_VARIADIC">SAME_VARIADIC</a></span></code></th>
<td class="colLast">
<div class="block">Operand type-checking strategy where any number of operands must all be
in the same type family.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#SET_OP">SET_OP</a></span></code></th>
<td class="colLast">
<div class="block">Operand type-checking strategy for a set operator (UNION, INTERSECT,
EXCEPT).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#VARIADIC">VARIADIC</a></span></code></th>
<td class="colLast">
<div class="block">Operand type-checking strategy for an operator with no restrictions on
number or type of operands.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../package-summary.html">org.apache.calcite.sql.type</a> with type parameters of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>protected com.google.common.collect.ImmutableList&lt;? extends <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CompositeOperandTypeChecker.</span><code><span class="memberNameLink"><a href="../CompositeOperandTypeChecker.html#allowedRules">allowedRules</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../package-summary.html">org.apache.calcite.sql.type</a> that return <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#and(org.apache.calcite.sql.type.SqlOperandTypeChecker...)">and</a></span>&#8203;(<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>...&nbsp;rules)</code></th>
<td class="colLast">
<div class="block">Creates a checker that passes if all of the rules pass.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#or(org.apache.calcite.sql.type.SqlOperandTypeChecker...)">or</a></span>&#8203;(<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>...&nbsp;rules)</code></th>
<td class="colLast">
<div class="block">Creates a checker that passes if any one of the rules passes.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#repeat(org.apache.calcite.sql.SqlOperandCountRange,org.apache.calcite.sql.type.SqlSingleOperandTypeChecker...)">repeat</a></span>&#8203;(<a href="../../SqlOperandCountRange.html" title="interface in org.apache.calcite.sql">SqlOperandCountRange</a>&nbsp;range,
<a href="../SqlSingleOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlSingleOperandTypeChecker</a>...&nbsp;rules)</code></th>
<td class="colLast">
<div class="block">Creates a checker that passes if all of the rules pass for each operand,
using a given operand count strategy.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#sequence(java.lang.String,org.apache.calcite.sql.type.SqlSingleOperandTypeChecker...)">sequence</a></span>&#8203;(java.lang.String&nbsp;allowedSignatures,
<a href="../SqlSingleOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlSingleOperandTypeChecker</a>...&nbsp;rules)</code></th>
<td class="colLast">
<div class="block">Creates an operand checker from a sequence of single-operand checkers.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#variadic(org.apache.calcite.sql.SqlOperandCountRange)">variadic</a></span>&#8203;(<a href="../../SqlOperandCountRange.html" title="interface in org.apache.calcite.sql">SqlOperandCountRange</a>&nbsp;range)</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.sql.type</a> that return types with arguments of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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>com.google.common.collect.ImmutableList&lt;? extends <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CompositeOperandTypeChecker.</span><code><span class="memberNameLink"><a href="../CompositeOperandTypeChecker.html#getRules()">getRules</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../package-summary.html">org.apache.calcite.sql.type</a> with parameters of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</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="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#and(org.apache.calcite.sql.type.SqlOperandTypeChecker...)">and</a></span>&#8203;(<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>...&nbsp;rules)</code></th>
<td class="colLast">
<div class="block">Creates a checker that passes if all of the rules pass.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OperandTypes.</span><code><span class="memberNameLink"><a href="../OperandTypes.html#or(org.apache.calcite.sql.type.SqlOperandTypeChecker...)">or</a></span>&#8203;(<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>...&nbsp;rules)</code></th>
<td class="colLast">
<div class="block">Creates a checker that passes if any one of the rules passes.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../package-summary.html">org.apache.calcite.sql.type</a> with type arguments of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../CompositeOperandTypeChecker.html#%3Cinit%3E(org.apache.calcite.sql.type.CompositeOperandTypeChecker.Composition,com.google.common.collect.ImmutableList,java.lang.String,org.apache.calcite.sql.SqlOperandCountRange)">CompositeOperandTypeChecker</a></span>&#8203;(<a href="../CompositeOperandTypeChecker.Composition.html" title="enum in org.apache.calcite.sql.type">CompositeOperandTypeChecker.Composition</a>&nbsp;composition,
com.google.common.collect.ImmutableList&lt;? extends <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&gt;&nbsp;allowedRules,
java.lang.String&nbsp;allowedSignatures,
<a href="../../SqlOperandCountRange.html" title="interface in org.apache.calcite.sql">SqlOperandCountRange</a>&nbsp;range)</code></th>
<td class="colLast">
<div class="block">Package private.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql.validate">
<!-- -->
</a>
<h3>Uses of <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a> in <a href="../../validate/package-summary.html">org.apache.calcite.sql.validate</a></h3>
<table class="useSummary">
<caption><span>Constructors in <a href="../../validate/package-summary.html">org.apache.calcite.sql.validate</a> with parameters of type <a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../validate/SqlUserDefinedAggFunction.html#%3Cinit%3E(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,org.apache.calcite.schema.AggregateFunction,boolean,boolean,org.apache.calcite.util.Optionality,org.apache.calcite.rel.type.RelDataTypeFactory)">SqlUserDefinedAggFunction</a></span>&#8203;(<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
<a href="../../../schema/AggregateFunction.html" title="interface in org.apache.calcite.schema">AggregateFunction</a>&nbsp;function,
boolean&nbsp;requiresOrder,
boolean&nbsp;requiresOver,
<a href="../../../util/Optionality.html" title="enum in org.apache.calcite.util">Optionality</a>&nbsp;requiresGroupOrder,
<a href="../../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Creates a SqlUserDefinedAggFunction.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../validate/SqlUserDefinedFunction.html#%3Cinit%3E(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.schema.Function)">SqlUserDefinedFunction</a></span>&#8203;(<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../../schema/Function.html" title="interface in org.apache.calcite.schema">Function</a>&nbsp;function)</code></th>
<td class="colLast">
<div class="block">Creates a <a href="../../validate/SqlUserDefinedFunction.html" title="class in org.apache.calcite.sql.validate"><code>SqlUserDefinedFunction</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../validate/SqlUserDefinedFunction.html#%3Cinit%3E(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.schema.Function,org.apache.calcite.sql.SqlFunctionCategory)">SqlUserDefinedFunction</a></span>&#8203;(<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../../schema/Function.html" title="interface in org.apache.calcite.schema">Function</a>&nbsp;function,
<a href="../../SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;category)</code></th>
<td class="colLast">
<div class="block">Constructor used internally and by derived classes.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../validate/SqlUserDefinedTableFunction.html#%3Cinit%3E(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.schema.TableFunction)">SqlUserDefinedTableFunction</a></span>&#8203;(<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../../schema/TableFunction.html" title="interface in org.apache.calcite.schema">TableFunction</a>&nbsp;function)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../validate/SqlUserDefinedTableMacro.html#%3Cinit%3E(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.schema.TableMacro)">SqlUserDefinedTableMacro</a></span>&#8203;(<a href="../../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../../schema/TableMacro.html" title="interface in org.apache.calcite.schema">TableMacro</a>&nbsp;tableMacro)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
</ul>
</li>
</ul>
</div>
</main>
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">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>