blob: 66dd2dbc381066434c0d5b1bd60cc8556aaac6ea [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Uses of Interface org.apache.calcite.rel.type.RelDataType (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.rel.type.RelDataType (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="../RelDataType.html" title="interface in org.apache.calcite.rel.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.rel.type.RelDataType" class="title">Uses of Interface<br>org.apache.calcite.rel.type.RelDataType</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">
<li class="blockList">
<table class="useSummary">
<caption><span>Packages that use <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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.adapter.cassandra">org.apache.calcite.adapter.cassandra</a></th>
<td class="colLast">
<div class="block">Cassandra query provider.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.clone">org.apache.calcite.adapter.clone</a></th>
<td class="colLast">
<div class="block">Provides utility classes.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.csv">org.apache.calcite.adapter.csv</a></th>
<td class="colLast">
<div class="block">Calcite query provider that reads from CSV (comma-separated value) files.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.druid">org.apache.calcite.adapter.druid</a></th>
<td class="colLast">
<div class="block">Query provider based on a Druid database.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.elasticsearch">org.apache.calcite.adapter.elasticsearch</a></th>
<td class="colLast">
<div class="block">Query provider based on an Elasticsearch2 DB.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.enumerable">org.apache.calcite.adapter.enumerable</a></th>
<td class="colLast">
<div class="block">Query optimizer rules for Java calling convention.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.file">org.apache.calcite.adapter.file</a></th>
<td class="colLast">
<div class="block">Calcite query provider that reads from web tables (HTML).</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.geode.rel">org.apache.calcite.adapter.geode.rel</a></th>
<td class="colLast">
<div class="block">Query provider based on Apache Geode (Gemfire) In Memory Data Grid</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.geode.simple">org.apache.calcite.adapter.geode.simple</a></th>
<td class="colLast">
<div class="block">Query provider based on Apache Geode (Gemfire) In Memory Data Grid</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.geode.util">org.apache.calcite.adapter.geode.util</a></th>
<td class="colLast">
<div class="block">Query provider based on Apache Geode (Gemfire) In Memory Data Grid</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.java">org.apache.calcite.adapter.java</a></th>
<td class="colLast">
<div class="block">Query provider based on Java in-memory data
structures.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.jdbc">org.apache.calcite.adapter.jdbc</a></th>
<td class="colLast">
<div class="block">Query provider based on a JDBC data source.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.kafka">org.apache.calcite.adapter.kafka</a></th>
<td class="colLast">
<div class="block">Kafka query provider.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.mongodb">org.apache.calcite.adapter.mongodb</a></th>
<td class="colLast">
<div class="block">Query provider based on a MongoDB database.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.pig">org.apache.calcite.adapter.pig</a></th>
<td class="colLast">
<div class="block">Pig query provider.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.spark">org.apache.calcite.adapter.spark</a></th>
<td class="colLast">
<div class="block">Adapter based on the Apache Spark data management system.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.splunk">org.apache.calcite.adapter.splunk</a></th>
<td class="colLast">
<div class="block">Splunk query provider.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.tpcds">org.apache.calcite.adapter.tpcds</a></th>
<td class="colLast">
<div class="block">TPC-DS schema.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.adapter.tpch">org.apache.calcite.adapter.tpch</a></th>
<td class="colLast">
<div class="block">TPC-H schema.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.chinook">org.apache.calcite.chinook</a></th>
<td class="colLast">
<div class="block">End to end tests.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.example.maze">org.apache.calcite.example.maze</a></th>
<td class="colLast">
<div class="block">User-defined table function that generates a maze.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.interpreter">org.apache.calcite.interpreter</a></th>
<td class="colLast">
<div class="block">Provides an implementation of relational expressions using an interpreter.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.jdbc">org.apache.calcite.jdbc</a></th>
<td class="colLast">
<div class="block">JDBC driver for Calcite.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.materialize">org.apache.calcite.materialize</a></th>
<td class="colLast">
<div class="block">Management of materialized query results.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.piglet">org.apache.calcite.piglet</a></th>
<td class="colLast">
<div class="block">Piglet, a Pig-like language.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.plan">org.apache.calcite.plan</a></th>
<td class="colLast">
<div class="block">Defines interfaces for constructing rule-based optimizers of
relational expressions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.plan.hep">org.apache.calcite.plan.hep</a></th>
<td class="colLast">
<div class="block">Provides a heuristic planner implementation for the interfaces in
<a href="../../../plan/package-summary.html"><code>org.apache.calcite.plan</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.plan.volcano">org.apache.calcite.plan.volcano</a></th>
<td class="colLast">
<div class="block">Optimizes relational expressions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.prepare">org.apache.calcite.prepare</a></th>
<td class="colLast">
<div class="block">Preparation of queries (parsing, planning and implementation).</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel">org.apache.calcite.rel</a></th>
<td class="colLast">
<div class="block">Defines relational expressions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel.core">org.apache.calcite.rel.core</a></th>
<td class="colLast">
<div class="block">Defines core relational expressions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel.externalize">org.apache.calcite.rel.externalize</a></th>
<td class="colLast">
<div class="block">Facilities to externalize <a href="../../RelNode.html" title="interface in org.apache.calcite.rel"><code>RelNode</code></a>s to and from
XML and JSON format.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel.logical">org.apache.calcite.rel.logical</a></th>
<td class="colLast">
<div class="block">Defines logical relational expressions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel.metadata">org.apache.calcite.rel.metadata</a></th>
<td class="colLast">
<div class="block">Defines metadata interfaces and utilities for relational
expressions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel.mutable">org.apache.calcite.rel.mutable</a></th>
<td class="colLast">
<div class="block">Defines mutable relational expressions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel.rel2sql">org.apache.calcite.rel.rel2sql</a></th>
<td class="colLast">
<div class="block">Translates a relational expression to SQL parse tree.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel.rules">org.apache.calcite.rel.rules</a></th>
<td class="colLast">
<div class="block">Provides a core set of planner rules.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rel.type">org.apache.calcite.rel.type</a></th>
<td class="colLast">
<div class="block">Defines a type system for relational expressions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.rex">org.apache.calcite.rex</a></th>
<td class="colLast">
<div class="block">Provides a language for representing row-expressions.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.schema">org.apache.calcite.schema</a></th>
<td class="colLast">
<div class="block">Schema SPI.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.schema.impl">org.apache.calcite.schema.impl</a></th>
<td class="colLast">
<div class="block">Utilities to help implement Calcite's SPIs.</div>
</td>
</tr>
<tr class="rowColor">
<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="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.sql.advise">org.apache.calcite.sql.advise</a></th>
<td class="colLast">
<div class="block">Provides hints and corrections for editing SQL statements.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.sql.ddl">org.apache.calcite.sql.ddl</a></th>
<td class="colLast">
<div class="block">Parse tree for SQL DDL statements.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.sql.dialect">org.apache.calcite.sql.dialect</a></th>
<td class="colLast">
<div class="block">SQL unparsers for JDBC dialects.</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>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.sql.validate.implicit">org.apache.calcite.sql.validate.implicit</a></th>
<td class="colLast">
<div class="block">Sql implicit type cast.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.sql2rel">org.apache.calcite.sql2rel</a></th>
<td class="colLast">
<div class="block">Translates a SQL parse tree to relational expression.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.calcite.tools">org.apache.calcite.tools</a></th>
<td class="colLast">
<div class="block">Provides utility classes.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<ul class="blockList">
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.cassandra">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/cassandra/package-summary.html">org.apache.calcite.adapter.cassandra</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../adapter/cassandra/package-summary.html">org.apache.calcite.adapter.cassandra</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CassandraTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/cassandra/CassandraTableScan.html#projectRowType">projectRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CassandraFilter.Translator.</span><code><span class="memberNameLink"><a href="../../../adapter/cassandra/CassandraFilter.Translator.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/cassandra/package-summary.html">org.apache.calcite.adapter.cassandra</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CassandraTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/cassandra/CassandraTableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CassandraTable.</span><code><span class="memberNameLink"><a href="../../../adapter/cassandra/CassandraTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/cassandra/package-summary.html">org.apache.calcite.adapter.cassandra</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CassandraRules.</span><code><span class="memberNameLink"><a href="../../../adapter/cassandra/CassandraRules.html#cassandraFieldNames(org.apache.calcite.rel.type.RelDataType)">cassandraFieldNames</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CassandraProject.</span><code><span class="memberNameLink"><a href="../../../adapter/cassandra/CassandraProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/cassandra/package-summary.html">org.apache.calcite.adapter.cassandra</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/cassandra/CassandraProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">CassandraProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/cassandra/CassandraTableScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.plan.RelOptTable,org.apache.calcite.adapter.cassandra.CassandraTable,org.apache.calcite.rel.type.RelDataType)">CassandraTableScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;table,
<a href="../../../adapter/cassandra/CassandraTable.html" title="class in org.apache.calcite.adapter.cassandra">CassandraTable</a>&nbsp;cassandraTable,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;projectRowType)</code></th>
<td class="colLast">
<div class="block">Creates a CassandraTableScan.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/cassandra/CassandraFilter.Translator.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List,java.util.List)">Translator</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;java.lang.String&gt;&nbsp;partitionKeys,
java.util.List&lt;java.lang.String&gt;&nbsp;clusteringKeys,
java.util.List&lt;<a href="../../RelFieldCollation.html" title="class in org.apache.calcite.rel">RelFieldCollation</a>&gt;&nbsp;implicitFieldCollations)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.clone">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/clone/package-summary.html">org.apache.calcite.adapter.clone</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/clone/package-summary.html">org.apache.calcite.adapter.clone</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ArrayTable.</span><code><span class="memberNameLink"><a href="../../../adapter/clone/ArrayTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ListTable.</span><code><span class="memberNameLink"><a href="../../../adapter/clone/ListTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/clone/package-summary.html">org.apache.calcite.adapter.clone</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ColumnLoader.</span><code><span class="memberNameLink"><a href="../../../adapter/clone/ColumnLoader.html#load(org.apache.calcite.rel.type.RelDataType,java.util.List,int%5B%5D)">load</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
java.util.List&lt;org.apache.calcite.avatica.ColumnMetaData.Rep&gt;&nbsp;repList,
int[]&nbsp;sort)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.util.List</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ColumnLoader.</span><code><span class="memberNameLink"><a href="../../../adapter/clone/ColumnLoader.html#wrap(org.apache.calcite.avatica.ColumnMetaData.Rep,java.util.List,org.apache.calcite.rel.type.RelDataType)">wrap</a></span>&#8203;(org.apache.calcite.avatica.ColumnMetaData.Rep&nbsp;rep,
java.util.List&nbsp;list,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Adapt for some types that we represent differently internally than their
JDBC types.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.csv">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/csv/package-summary.html">org.apache.calcite.adapter.csv</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../adapter/csv/package-summary.html">org.apache.calcite.adapter.csv</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JsonEnumerator.JsonDataConverter.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/JsonEnumerator.JsonDataConverter.html#relDataType">relDataType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/csv/package-summary.html">org.apache.calcite.adapter.csv</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CsvEnumerator.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/CsvEnumerator.html#deduceRowType(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.util.Source,java.util.List)">deduceRowType</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../../../util/Source.html" title="interface in org.apache.calcite.util">Source</a>&nbsp;source,
java.util.List&lt;<a href="../../../adapter/csv/CsvFieldType.html" title="enum in org.apache.calcite.adapter.csv">CsvFieldType</a>&gt;&nbsp;fieldTypes)</code></th>
<td class="colLast">
<div class="block">Deduces the names and types of a table's columns by reading the first line
of a CSV file.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CsvEnumerator.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/CsvEnumerator.html#deduceRowType(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.util.Source,java.util.List,java.lang.Boolean)">deduceRowType</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../../../util/Source.html" title="interface in org.apache.calcite.util">Source</a>&nbsp;source,
java.util.List&lt;<a href="../../../adapter/csv/CsvFieldType.html" title="enum in org.apache.calcite.adapter.csv">CsvFieldType</a>&gt;&nbsp;fieldTypes,
java.lang.Boolean&nbsp;stream)</code></th>
<td class="colLast">
<div class="block">Deduces the names and types of a table's columns by reading the first line
of a CSV file.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CsvTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/CsvTableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JsonEnumerator.JsonDataConverter.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/JsonEnumerator.JsonDataConverter.html#getRelDataType()">getRelDataType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CsvStreamScannableTable.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/CsvStreamScannableTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CsvTable.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/CsvTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JsonTable.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/JsonTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CsvFieldType.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/CsvFieldType.html#toType(org.apache.calcite.adapter.java.JavaTypeFactory)">toType</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/csv/package-summary.html">org.apache.calcite.adapter.csv</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/csv/CsvTable.html" title="class in org.apache.calcite.adapter.csv">CsvTable</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CsvStreamTableFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/CsvStreamTableFactory.html#create(org.apache.calcite.schema.SchemaPlus,java.lang.String,java.util.Map,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../../schema/SchemaPlus.html" title="interface in org.apache.calcite.schema">SchemaPlus</a>&nbsp;schema,
java.lang.String&nbsp;name,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;operand,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../adapter/csv/CsvTable.html" title="class in org.apache.calcite.adapter.csv">CsvTable</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CsvTableFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/csv/CsvTableFactory.html#create(org.apache.calcite.schema.SchemaPlus,java.lang.String,java.util.Map,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../../schema/SchemaPlus.html" title="interface in org.apache.calcite.schema">SchemaPlus</a>&nbsp;schema,
java.lang.String&nbsp;name,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;operand,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/csv/package-summary.html">org.apache.calcite.adapter.csv</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/csv/JsonEnumerator.JsonDataConverter.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,java.util.List)">JsonDataConverter</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;relDataType,
java.util.List&lt;java.lang.Object&gt;&nbsp;dataList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.druid">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/druid/package-summary.html">org.apache.calcite.adapter.druid</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/druid/package-summary.html">org.apache.calcite.adapter.druid</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidTable.MapRelProtoDataType.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidTable.MapRelProtoDataType.html#apply(org.apache.calcite.rel.type.RelDataTypeFactory)">apply</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidQuery.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidQuery.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidTable.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/druid/package-summary.html">org.apache.calcite.adapter.druid</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 static <a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.util.List&lt;java.lang.String&gt;,&#8203;java.util.List&lt;<a href="../../../adapter/druid/VirtualColumn.html" title="class in org.apache.calcite.adapter.druid">VirtualColumn</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidQuery.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidQuery.html#computeProjectAsScan(org.apache.calcite.rel.core.Project,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">computeProjectAsScan</a></span>&#8203;(<a href="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a>&nbsp;projectRel,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">
<div class="block">Translates list of projects to Druid Column names and Virtual Columns if any
We can not use <a href="../../../util/Pair.html#zip(K%5B%5D,V%5B%5D)"><code>Pair.zip(Object[], Object[])</code></a>, since size can be different</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static <a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.util.List&lt;<a href="../../../adapter/druid/DimensionSpec.html" title="interface in org.apache.calcite.adapter.druid">DimensionSpec</a>&gt;,&#8203;java.util.List&lt;<a href="../../../adapter/druid/VirtualColumn.html" title="class in org.apache.calcite.adapter.druid">VirtualColumn</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidQuery.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidQuery.html#computeProjectGroupSet(org.apache.calcite.rel.core.Project,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">computeProjectGroupSet</a></span>&#8203;(<a href="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a>&nbsp;projectNode,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupSet,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">
<div class="block">Computes the project group set.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../schema/Table.html" title="interface in org.apache.calcite.schema">Table</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidTableFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidTableFactory.html#create(org.apache.calcite.schema.SchemaPlus,java.lang.String,java.util.Map,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../../schema/SchemaPlus.html" title="interface in org.apache.calcite.schema">SchemaPlus</a>&nbsp;schema,
java.lang.String&nbsp;name,
java.util.Map&nbsp;operand,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidQuery.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidQuery.html#extractColumnName(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">extractColumnName</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;query)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../adapter/druid/DruidQuery.QuerySpec.html" title="class in org.apache.calcite.adapter.druid">DruidQuery.QuerySpec</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidQuery.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidQuery.html#getQuery(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.Filter,org.apache.calcite.rel.core.Project,org.apache.calcite.util.ImmutableBitSet,java.util.List,java.util.List,java.util.List,java.util.List,org.apache.calcite.util.ImmutableBitSet,java.lang.Integer,org.apache.calcite.rel.core.Project,org.apache.calcite.rel.core.Filter)">getQuery</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../core/Filter.html" title="class in org.apache.calcite.rel.core">Filter</a>&nbsp;filter,
<a href="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a>&nbsp;project,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupSet,
java.util.List&lt;<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&gt;&nbsp;aggCalls,
java.util.List&lt;java.lang.String&gt;&nbsp;aggNames,
java.util.List&lt;java.lang.Integer&gt;&nbsp;collationIndexes,
java.util.List&lt;<a href="../../RelFieldCollation.Direction.html" title="enum in org.apache.calcite.rel">RelFieldCollation.Direction</a>&gt;&nbsp;collationDirections,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;numericCollationIndexes,
java.lang.Integer&nbsp;fetch,
<a href="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a>&nbsp;postProject,
<a href="../../core/Filter.html" title="class in org.apache.calcite.rel.core">Filter</a>&nbsp;havingFilter)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../../../adapter/druid/DruidJsonFilter.html" title="class in org.apache.calcite.adapter.druid">DruidJsonFilter</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toBetweenDruidFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toBetweenDruidFilter</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;query)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../../../adapter/druid/DruidJsonFilter.html" title="class in org.apache.calcite.adapter.druid">DruidJsonFilter</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toBoundDruidFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toBoundDruidFilter</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static <a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.lang.String,&#8203;<a href="../../../adapter/druid/ExtractionFunction.html" title="interface in org.apache.calcite.adapter.druid">ExtractionFunction</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidQuery.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidQuery.html#toDruidColumn(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidColumn</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">BinaryOperatorConversion.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/BinaryOperatorConversion.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CeilOperatorConversion.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/CeilOperatorConversion.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;query)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DirectOperatorConversion.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DirectOperatorConversion.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidExpressions.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidExpressions.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidRel)</code></th>
<td class="colLast">
<div class="block">Translates Calcite rexNode to Druid Expression when possible</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidSqlCastConverter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidSqlCastConverter.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;topRel,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidSqlOperatorConverter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidSqlOperatorConverter.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">
<div class="block">Translate rexNode to valid Druid expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ExtractOperatorConversion.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/ExtractOperatorConversion.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;query)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FloorOperatorConversion.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/FloorOperatorConversion.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">NaryOperatorConverter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/NaryOperatorConverter.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SubstringOperatorConversion.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/SubstringOperatorConversion.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;query)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">UnaryPrefixOperatorConversion.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/UnaryPrefixOperatorConversion.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">UnarySuffixOperatorConversion.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/UnarySuffixOperatorConversion.html#toDruidExpression(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpression</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../../../adapter/druid/DruidJsonFilter.html" title="class in org.apache.calcite.adapter.druid">DruidJsonFilter</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toDruidExpressionFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidExpressionFilter</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;query)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidExpressions.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidExpressions.html#toDruidExpressions(org.apache.calcite.adapter.druid.DruidQuery,org.apache.calcite.rel.type.RelDataType,java.util.List)">toDruidExpressions</a></span>&#8203;(<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidRel,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;rexNodes)</code></th>
<td class="colLast">
<div class="block">Translate a list of Calcite <code>RexNode</code> to Druid expressions.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) static <a href="../../../adapter/druid/DruidJsonFilter.html" title="class in org.apache.calcite.adapter.druid">DruidJsonFilter</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toDruidFilters(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidFilters</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toDruidLiteral(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toDruidLiteral</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../../../adapter/druid/DruidJsonFilter.html" title="class in org.apache.calcite.adapter.druid">DruidJsonFilter</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toEqualityKindDruidFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toEqualityKindDruidFilter</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../../../adapter/druid/DruidJsonFilter.html" title="class in org.apache.calcite.adapter.druid">DruidJsonFilter</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toInKindDruidFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toInKindDruidFilter</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;e,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../../../adapter/druid/DruidJsonFilter.html" title="class in org.apache.calcite.adapter.druid">DruidJsonFilter</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toIsNullKindDruidFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toIsNullKindDruidFilter</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../../../adapter/druid/DruidJsonFilter.html" title="class in org.apache.calcite.adapter.druid">DruidJsonFilter</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DruidJsonFilter.</span><code><span class="memberNameLink"><a href="../../../adapter/druid/DruidJsonFilter.html#toSimpleDruidFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.druid.DruidQuery)">toSimpleDruidFilter</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;e,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/druid/DruidQuery.html" title="class in org.apache.calcite.adapter.druid">DruidQuery</a>&nbsp;druidQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.elasticsearch">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/elasticsearch/package-summary.html">org.apache.calcite.adapter.elasticsearch</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../adapter/elasticsearch/package-summary.html">org.apache.calcite.adapter.elasticsearch</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ElasticsearchTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/ElasticsearchTableScan.html#projectRowType">projectRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PredicateAnalyzer.CastExpression.</span><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/PredicateAnalyzer.CastExpression.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/elasticsearch/package-summary.html">org.apache.calcite.adapter.elasticsearch</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ElasticsearchTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/ElasticsearchTableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ElasticsearchTable.</span><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/ElasticsearchTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;relDataTypeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/elasticsearch/package-summary.html">org.apache.calcite.adapter.elasticsearch</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ElasticsearchProject.</span><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/ElasticsearchProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;relTraitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;relDataType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ElasticsearchRules.</span><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/ElasticsearchRules.html#elasticsearchFieldNames(org.apache.calcite.rel.type.RelDataType)">elasticsearchFieldNames</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ElasticsearchAggregate.</span><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/ElasticsearchAggregate.html#fieldNames(org.apache.calcite.rel.type.RelDataType)">fieldNames</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;relDataType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/elasticsearch/package-summary.html">org.apache.calcite.adapter.elasticsearch</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/elasticsearch/PredicateAnalyzer.CastExpression.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.elasticsearch.PredicateAnalyzer.TerminalExpression)">CastExpression</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../adapter/elasticsearch/PredicateAnalyzer.TerminalExpression.html" title="interface in org.apache.calcite.adapter.elasticsearch">PredicateAnalyzer.TerminalExpression</a>&nbsp;argument)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/ElasticsearchProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">ElasticsearchProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/elasticsearch/ElasticsearchTableScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.plan.RelOptTable,org.apache.calcite.adapter.elasticsearch.ElasticsearchTable,org.apache.calcite.rel.type.RelDataType)">ElasticsearchTableScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;table,
<a href="../../../adapter/elasticsearch/ElasticsearchTable.html" title="class in org.apache.calcite.adapter.elasticsearch">ElasticsearchTable</a>&nbsp;elasticsearchTable,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;projectRowType)</code></th>
<td class="colLast">
<div class="block">Creates an ElasticsearchTableScan.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.enumerable">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/enumerable/package-summary.html">org.apache.calcite.adapter.enumerable</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../adapter/enumerable/package-summary.html">org.apache.calcite.adapter.enumerable</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PhysTypeImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/PhysTypeImpl.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/enumerable/package-summary.html">org.apache.calcite.adapter.enumerable</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PhysType.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/PhysType.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the SQL row type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PhysTypeImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/PhysTypeImpl.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexToLixTranslator.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/RexToLixTranslator.html#nullifyType(org.apache.calcite.rel.type.RelDataType,boolean)">nullifyType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggContext.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/AggContext.html#returnRelType()">returnRelType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the return type of the aggregate as
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableAggregate.AggContextImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableAggregate.AggContextImpl.html#returnRelType()">returnRelType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexImpTable.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/RexImpTable.html#toSql(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PhysTypeImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/PhysTypeImpl.html#toStruct(org.apache.calcite.rel.type.RelDataType)">toStruct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/enumerable/package-summary.html">org.apache.calcite.adapter.enumerable</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) static java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumUtils.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumUtils.html#fieldRowTypes(org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List)">fieldRowTypes</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;extraInputs,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;? extends <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggContext.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/AggContext.html#keyRelTypes()">keyRelTypes</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the types of the group key as
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;? extends <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableAggregate.AggContextImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableAggregate.AggContextImpl.html#keyRelTypes()">keyRelTypes</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;? extends <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggContext.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/AggContext.html#parameterRelTypes()">parameterRelTypes</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the parameter types of the aggregate as
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;? extends <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableAggregate.AggContextImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableAggregate.AggContextImpl.html#parameterRelTypes()">parameterRelTypes</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/enumerable/package-summary.html">org.apache.calcite.adapter.enumerable</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/enumerable/EnumerableProject.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableProject</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableProject.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../adapter/enumerable/EnumerableTableFunctionScan.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableTableFunctionScan</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableTableFunctionScan.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableTableFunctionScan.html#copy(org.apache.calcite.plan.RelTraitSet,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,org.apache.calcite.rel.type.RelDataType,java.util.Set)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../adapter/enumerable/EnumerableMatch.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableMatch</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableMatch.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableMatch.html#create(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">create</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates an EnumerableMatch.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../adapter/enumerable/EnumerableProject.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableProject</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableProject.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableProject.html#create(org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates an EnumerableProject, specifying row type rather than field
names.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../adapter/enumerable/EnumerableValues.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableValues</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableValues.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableValues.html#create(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList)">create</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples)</code></th>
<td class="colLast">
<div class="block">Creates an EnumerableValues.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumUtils.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumUtils.html#fieldRowTypes(org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List)">fieldRowTypes</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;extraInputs,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumerableTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableTableScan.html#hasCollectionField(org.apache.calcite.rel.type.RelDataType)">hasCollectionField</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static java.lang.reflect.Type</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumUtils.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumUtils.html#javaClass(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.rel.type.RelDataType)">javaClass</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) abstract java.lang.reflect.Type</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaRowFormat.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/JavaRowFormat.html#javaFieldClass(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.rel.type.RelDataType,int)">javaFieldClass</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Returns the java class that is used to physically store the given field.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../linq4j/tree/Primitive.html" title="enum in org.apache.calcite.linq4j.tree">Primitive</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexToLixTranslator.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/RexToLixTranslator.html#javaPrimitive(org.apache.calcite.rel.type.RelDataType)">javaPrimitive</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) abstract java.lang.reflect.Type</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaRowFormat.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/JavaRowFormat.html#javaRowClass(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.rel.type.RelDataType)">javaRowClass</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexToLixTranslator.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/RexToLixTranslator.html#nullifyType(org.apache.calcite.rel.type.RelDataType,boolean)">nullifyType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../adapter/enumerable/PhysType.html" title="interface in org.apache.calcite.adapter.enumerable">PhysType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PhysTypeImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/PhysTypeImpl.html#of(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.enumerable.JavaRowFormat)">of</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/enumerable/JavaRowFormat.html" title="enum in org.apache.calcite.adapter.enumerable">JavaRowFormat</a>&nbsp;format)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../adapter/enumerable/PhysType.html" title="interface in org.apache.calcite.adapter.enumerable">PhysType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PhysTypeImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/PhysTypeImpl.html#of(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.enumerable.JavaRowFormat,boolean)">of</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../adapter/enumerable/JavaRowFormat.html" title="enum in org.apache.calcite.adapter.enumerable">JavaRowFormat</a>&nbsp;format,
boolean&nbsp;optimize)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../adapter/enumerable/JavaRowFormat.html" title="enum in org.apache.calcite.adapter.enumerable">JavaRowFormat</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaRowFormat.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/JavaRowFormat.html#optimize(org.apache.calcite.rel.type.RelDataType)">optimize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexToLixTranslator.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/RexToLixTranslator.html#scaleIntervalToNumber(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.linq4j.tree.Expression)">scaleIntervalToNumber</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType,
<a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a>&nbsp;operand)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) static java.lang.reflect.Type</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumUtils.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumUtils.html#toInternal(org.apache.calcite.rel.type.RelDataType)">toInternal</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexImpTable.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/RexImpTable.html#toSql(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PhysTypeImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/PhysTypeImpl.html#toStruct(org.apache.calcite.rel.type.RelDataType)">toStruct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexToLixTranslator.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/RexToLixTranslator.html#translateCast(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.linq4j.tree.Expression)">translateCast</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType,
<a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a>&nbsp;operand)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexToLixTranslator.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/RexToLixTranslator.html#translateLiteral(org.apache.calcite.rex.RexLiteral,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.adapter.enumerable.RexImpTable.NullAs)">translateLiteral</a></span>&#8203;(<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&nbsp;literal,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../../../adapter/enumerable/RexImpTable.NullAs.html" title="enum in org.apache.calcite.adapter.enumerable">RexImpTable.NullAs</a>&nbsp;nullAs)</code></th>
<td class="colLast">
<div class="block">Translates a literal.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../adapter/enumerable/package-summary.html">org.apache.calcite.adapter.enumerable</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StrictAggImplementor.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/StrictAggImplementor.html#anyNullable(java.util.List)">anyNullable</a></span>&#8203;(java.util.List&lt;? extends <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static java.util.List&lt;java.lang.reflect.Type&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EnumUtils.</span><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumUtils.html#fieldTypes(org.apache.calcite.adapter.java.JavaTypeFactory,java.util.List)">fieldTypes</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;? extends <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;inputTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/enumerable/package-summary.html">org.apache.calcite.adapter.enumerable</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/enumerable/EnumerableMatch.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">EnumerableMatch</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates an EnumerableMatch.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">EnumerableProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates an EnumerableProject.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,int)">EnumerableProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;flags)</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="../../../adapter/enumerable/EnumerableTableFunctionScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,java.util.List,java.lang.reflect.Type,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,java.util.Set)">EnumerableTableFunctionScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traits,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
java.lang.reflect.Type&nbsp;elementType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;call,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableValues.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList,org.apache.calcite.plan.RelTraitSet)">EnumerableValues</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet)</code></th>
<td class="colLast">
<div class="block">Creates an EnumerableValues.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/enumerable/EnumerableWindow.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,java.util.List)">EnumerableWindow</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traits,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;child,
java.util.List&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&nbsp;constants,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../core/Window.Group.html" title="class in org.apache.calcite.rel.core">Window.Group</a>&gt;&nbsp;groups)</code></th>
<td class="colLast">
<div class="block">Creates an EnumerableWindowRel.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/enumerable/PhysTypeImpl.html#%3Cinit%3E(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.rel.type.RelDataType,java.lang.reflect.Type,org.apache.calcite.adapter.enumerable.JavaRowFormat)">PhysTypeImpl</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.reflect.Type&nbsp;javaRowClass,
<a href="../../../adapter/enumerable/JavaRowFormat.html" title="enum in org.apache.calcite.adapter.enumerable">JavaRowFormat</a>&nbsp;format)</code></th>
<td class="colLast">
<div class="block">Creates a PhysTypeImpl.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.file">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/file/package-summary.html">org.apache.calcite.adapter.file</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/file/package-summary.html">org.apache.calcite.adapter.file</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FileTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/file/FileTableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FileRowConverter.</span><code><span class="memberNameLink"><a href="../../../adapter/file/FileRowConverter.html#getRowType(org.apache.calcite.adapter.java.JavaTypeFactory)">getRowType</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FileTable.</span><code><span class="memberNameLink"><a href="../../../adapter/file/FileTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FileFieldType.</span><code><span class="memberNameLink"><a href="../../../adapter/file/FileFieldType.html#toType(org.apache.calcite.adapter.java.JavaTypeFactory)">toType</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.geode.rel">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/geode/rel/package-summary.html">org.apache.calcite.adapter.geode.rel</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../adapter/geode/rel/package-summary.html">org.apache.calcite.adapter.geode.rel</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeTableScan.html#projectRowType">projectRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeFilter.Translator.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeFilter.Translator.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeTable.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeTable.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/geode/rel/package-summary.html">org.apache.calcite.adapter.geode.rel</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeTableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeTable.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/geode/rel/package-summary.html">org.apache.calcite.adapter.geode.rel</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeProject.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeAggregate.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeAggregate.html#fieldNames(org.apache.calcite.rel.type.RelDataType)">fieldNames</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;relDataType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeRules.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeRules.html#geodeFieldNames(org.apache.calcite.rel.type.RelDataType)">geodeFieldNames</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/geode/rel/package-summary.html">org.apache.calcite.adapter.geode.rel</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/geode/rel/GeodeProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">GeodeProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeTableScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.plan.RelOptTable,org.apache.calcite.adapter.geode.rel.GeodeTable,org.apache.calcite.rel.type.RelDataType)">GeodeTableScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;table,
<a href="../../../adapter/geode/rel/GeodeTable.html" title="class in org.apache.calcite.adapter.geode.rel">GeodeTable</a>&nbsp;geodeTable,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;projectRowType)</code></th>
<td class="colLast">
<div class="block">Creates a GeodeTableScan.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/geode/rel/GeodeFilter.Translator.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexBuilder)">Translator</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.geode.simple">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/geode/simple/package-summary.html">org.apache.calcite.adapter.geode.simple</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../adapter/geode/simple/package-summary.html">org.apache.calcite.adapter.geode.simple</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeSimpleScannableTable.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/simple/GeodeSimpleScannableTable.html#relDataType">relDataType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/geode/simple/package-summary.html">org.apache.calcite.adapter.geode.simple</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeSimpleScannableTable.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/simple/GeodeSimpleScannableTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/geode/simple/package-summary.html">org.apache.calcite.adapter.geode.simple</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/geode/simple/GeodeSimpleScannableTable.html#%3Cinit%3E(java.lang.String,org.apache.calcite.rel.type.RelDataType,org.apache.geode.cache.client.ClientCache)">GeodeSimpleScannableTable</a></span>&#8203;(java.lang.String&nbsp;regionName,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;relDataType,
org.apache.geode.cache.client.ClientCache&nbsp;clientCache)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.geode.util">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/geode/util/package-summary.html">org.apache.calcite.adapter.geode.util</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/geode/util/package-summary.html">org.apache.calcite.adapter.geode.util</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeUtils.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/util/GeodeUtils.html#autodetectRelTypeFromRegion(org.apache.geode.cache.Region)">autodetectRelTypeFromRegion</a></span>&#8203;(org.apache.geode.cache.Region&lt;?,&#8203;?&gt;&nbsp;region)</code></th>
<td class="colLast">
<div class="block">Extract the first entity of each Regions and use it to build a table types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryExtImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/util/JavaTypeFactoryExtImpl.html#createPdxType(org.apache.geode.pdx.PdxInstance)">createPdxType</a></span>&#8203;(org.apache.geode.pdx.PdxInstance&nbsp;pdxInstance)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryExtImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/util/JavaTypeFactoryExtImpl.html#createPdxType2(org.apache.geode.pdx.PdxInstance)">createPdxType2</a></span>&#8203;(org.apache.geode.pdx.PdxInstance&nbsp;pdxInstance)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">GeodeUtils.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/util/GeodeUtils.html#createRelDataType(java.lang.Object)">createRelDataType</a></span>&#8203;(java.lang.Object&nbsp;regionEntry)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryExtImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/geode/util/JavaTypeFactoryExtImpl.html#createStructType(java.lang.Class)">createStructType</a></span>&#8203;(java.lang.Class&nbsp;type)</code></th>
<td class="colLast">
<div class="block">See <a href="http://stackoverflow.com/questions/16966629/what-is-the-difference-between-getfields-and-getdeclaredfields-in-java-reflectio">
the difference between fields and declared fields</a>.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.java">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/java/package-summary.html">org.apache.calcite.adapter.java</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/java/package-summary.html">org.apache.calcite.adapter.java</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/java/JavaTypeFactory.html#createStructType(java.lang.Class)">createStructType</a></span>&#8203;(java.lang.Class&nbsp;clazz)</code></th>
<td class="colLast">
<div class="block">Creates a record type based upon the public fields of a Java class.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/java/JavaTypeFactory.html#createType(java.lang.reflect.Type)">createType</a></span>&#8203;(java.lang.reflect.Type&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates a type, deducing whether a record, scalar or primitive type
is needed.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReflectiveSchema.ReflectiveTable.</span><code><span class="memberNameLink"><a href="../../../adapter/java/ReflectiveSchema.ReflectiveTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/java/JavaTypeFactory.html#toSql(org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Converts a type in Java format to a SQL-oriented type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/java/package-summary.html">org.apache.calcite.adapter.java</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>java.lang.reflect.Type</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/java/JavaTypeFactory.html#getJavaClass(org.apache.calcite.rel.type.RelDataType)">getJavaClass</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/java/JavaTypeFactory.html#toSql(org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Converts a type in Java format to a SQL-oriented type.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.jdbc">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/jdbc/package-summary.html">org.apache.calcite.adapter.jdbc</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/jdbc/package-summary.html">org.apache.calcite.adapter.jdbc</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JdbcTable.</span><code><span class="memberNameLink"><a href="../../../adapter/jdbc/JdbcTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JdbcSchema.</span><code><span class="memberNameLink"><a href="../../../adapter/jdbc/JdbcSchema.html#parseTypeString(org.apache.calcite.rel.type.RelDataTypeFactory,java.lang.String)">parseTypeString</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.lang.String&nbsp;typeString)</code></th>
<td class="colLast">
<div class="block">Given "INTEGER", returns BasicSqlType(INTEGER).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JdbcSchema.</span><code><span class="memberNameLink"><a href="../../../adapter/jdbc/JdbcSchema.html#sqlType(org.apache.calcite.rel.type.RelDataTypeFactory,int,int,int,java.lang.String)">sqlType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
int&nbsp;dataType,
int&nbsp;precision,
int&nbsp;scale,
java.lang.String&nbsp;typeString)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/jdbc/package-summary.html">org.apache.calcite.adapter.jdbc</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/jdbc/JdbcRules.JdbcProject.html" title="class in org.apache.calcite.adapter.jdbc">JdbcRules.JdbcProject</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JdbcRules.JdbcProject.</span><code><span class="memberNameLink"><a href="../../../adapter/jdbc/JdbcRules.JdbcProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/jdbc/package-summary.html">org.apache.calcite.adapter.jdbc</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/jdbc/JdbcRules.JdbcProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">JdbcProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/jdbc/JdbcRules.JdbcProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,int)">JdbcProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;flags)</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="../../../adapter/jdbc/JdbcRules.JdbcValues.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList,org.apache.calcite.plan.RelTraitSet)">JdbcValues</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.kafka">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/kafka/package-summary.html">org.apache.calcite.adapter.kafka</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/kafka/package-summary.html">org.apache.calcite.adapter.kafka</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">KafkaStreamTable.</span><code><span class="memberNameLink"><a href="../../../adapter/kafka/KafkaStreamTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">KafkaRowConverter.</span><code><span class="memberNameLink"><a href="../../../adapter/kafka/KafkaRowConverter.html#rowDataType(java.lang.String)">rowDataType</a></span>&#8203;(java.lang.String&nbsp;topicName)</code></th>
<td class="colLast">
<div class="block">Generates row type for a given Kafka topic.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">KafkaRowConverterImpl.</span><code><span class="memberNameLink"><a href="../../../adapter/kafka/KafkaRowConverterImpl.html#rowDataType(java.lang.String)">rowDataType</a></span>&#8203;(java.lang.String&nbsp;topicName)</code></th>
<td class="colLast">
<div class="block">Generate row schema for a given Kafka topic.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/kafka/package-summary.html">org.apache.calcite.adapter.kafka</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/kafka/KafkaStreamTable.html" title="class in org.apache.calcite.adapter.kafka">KafkaStreamTable</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">KafkaTableFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/kafka/KafkaTableFactory.html#create(org.apache.calcite.schema.SchemaPlus,java.lang.String,java.util.Map,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../../schema/SchemaPlus.html" title="interface in org.apache.calcite.schema">SchemaPlus</a>&nbsp;schema,
java.lang.String&nbsp;name,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;operand,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.mongodb">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/mongodb/package-summary.html">org.apache.calcite.adapter.mongodb</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../adapter/mongodb/package-summary.html">org.apache.calcite.adapter.mongodb</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MongoTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/mongodb/MongoTableScan.html#projectRowType">projectRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/mongodb/package-summary.html">org.apache.calcite.adapter.mongodb</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MongoTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/mongodb/MongoTableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MongoTable.</span><code><span class="memberNameLink"><a href="../../../adapter/mongodb/MongoTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/mongodb/package-summary.html">org.apache.calcite.adapter.mongodb</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MongoProject.</span><code><span class="memberNameLink"><a href="../../../adapter/mongodb/MongoProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MongoRules.</span><code><span class="memberNameLink"><a href="../../../adapter/mongodb/MongoRules.html#mongoFieldNames(org.apache.calcite.rel.type.RelDataType)">mongoFieldNames</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/mongodb/package-summary.html">org.apache.calcite.adapter.mongodb</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/mongodb/MongoProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">MongoProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../adapter/mongodb/MongoProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,int)">MongoProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;flags)</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="../../../adapter/mongodb/MongoTableScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.plan.RelOptTable,org.apache.calcite.adapter.mongodb.MongoTable,org.apache.calcite.rel.type.RelDataType)">MongoTableScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;table,
<a href="../../../adapter/mongodb/MongoTable.html" title="class in org.apache.calcite.adapter.mongodb">MongoTable</a>&nbsp;mongoTable,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;projectRowType)</code></th>
<td class="colLast">
<div class="block">Creates a MongoTableScan.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.pig">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/pig/package-summary.html">org.apache.calcite.adapter.pig</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/pig/package-summary.html">org.apache.calcite.adapter.pig</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTable.</span><code><span class="memberNameLink"><a href="../../../adapter/pig/PigTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/pig/package-summary.html">org.apache.calcite.adapter.pig</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigProject.</span><code><span class="memberNameLink"><a href="../../../adapter/pig/PigProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../adapter/pig/PigTable.html" title="class in org.apache.calcite.adapter.pig">PigTable</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTableFactory.</span><code><span class="memberNameLink"><a href="../../../adapter/pig/PigTableFactory.html#create(org.apache.calcite.schema.SchemaPlus,java.lang.String,java.util.Map,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../../schema/SchemaPlus.html" title="interface in org.apache.calcite.schema">SchemaPlus</a>&nbsp;schema,
java.lang.String&nbsp;name,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;operand,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/pig/package-summary.html">org.apache.calcite.adapter.pig</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/pig/PigProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">PigProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a PigProject.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.spark">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/spark/package-summary.html">org.apache.calcite.adapter.spark</a></h3>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../adapter/spark/package-summary.html">org.apache.calcite.adapter.spark</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/spark/SparkRules.SparkValues.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList,org.apache.calcite.plan.RelTraitSet)">SparkValues</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.splunk">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/splunk/package-summary.html">org.apache.calcite.adapter.splunk</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/splunk/package-summary.html">org.apache.calcite.adapter.splunk</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SplunkTableScan.</span><code><span class="memberNameLink"><a href="../../../adapter/splunk/SplunkTableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SplunkTable.</span><code><span class="memberNameLink"><a href="../../../adapter/splunk/SplunkTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/splunk/package-summary.html">org.apache.calcite.adapter.splunk</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SplunkPushDownRule.</span><code><span class="memberNameLink"><a href="../../../adapter/splunk/SplunkPushDownRule.html#appendSearchString(java.lang.String,org.apache.calcite.adapter.splunk.SplunkTableScan,org.apache.calcite.rel.logical.LogicalProject,org.apache.calcite.rel.logical.LogicalProject,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">appendSearchString</a></span>&#8203;(java.lang.String&nbsp;toAppend,
<a href="../../../adapter/splunk/SplunkTableScan.html" title="class in org.apache.calcite.adapter.splunk">SplunkTableScan</a>&nbsp;splunkRel,
<a href="../../logical/LogicalProject.html" title="class in org.apache.calcite.rel.logical">LogicalProject</a>&nbsp;topProj,
<a href="../../logical/LogicalProject.html" title="class in org.apache.calcite.rel.logical">LogicalProject</a>&nbsp;bottomProj,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;topRow,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;bottomRow)</code></th>
<td class="colLast">
<div class="block">Appends a search string.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SplunkPushDownRule.</span><code><span class="memberNameLink"><a href="../../../adapter/splunk/SplunkPushDownRule.html#getFieldsString(org.apache.calcite.rel.type.RelDataType)">getFieldsString</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;row)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.tpcds">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/tpcds/package-summary.html">org.apache.calcite.adapter.tpcds</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/tpcds/package-summary.html">org.apache.calcite.adapter.tpcds</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TpcdsSchema.TpcdsQueryableTable.</span><code><span class="memberNameLink"><a href="../../../adapter/tpcds/TpcdsSchema.TpcdsQueryableTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TpcdsSchema.TpcdsQueryableTable.</span><code><span class="memberNameLink"><a href="../../../adapter/tpcds/TpcdsSchema.TpcdsQueryableTable.html#type(org.apache.calcite.rel.type.RelDataTypeFactory,com.teradata.tpcds.column.Column)">type</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
com.teradata.tpcds.column.Column&nbsp;column)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.adapter.tpch">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../adapter/tpch/package-summary.html">org.apache.calcite.adapter.tpch</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../adapter/tpch/package-summary.html">org.apache.calcite.adapter.tpch</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TpchSchema.TpchQueryableTable.</span><code><span class="memberNameLink"><a href="../../../adapter/tpch/TpchSchema.TpchQueryableTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.chinook">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../chinook/package-summary.html">org.apache.calcite.chinook</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../chinook/package-summary.html">org.apache.calcite.chinook</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../adapter/java/AbstractQueryableTable.html" title="class in org.apache.calcite.adapter.java">AbstractQueryableTable</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PreferredAlbumsTableFactory.</span><code><span class="memberNameLink"><a href="../../../chinook/PreferredAlbumsTableFactory.html#create(org.apache.calcite.schema.SchemaPlus,java.lang.String,java.util.Map,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../../schema/SchemaPlus.html" title="interface in org.apache.calcite.schema">SchemaPlus</a>&nbsp;schema,
java.lang.String&nbsp;name,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;operand,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../adapter/java/AbstractQueryableTable.html" title="class in org.apache.calcite.adapter.java">AbstractQueryableTable</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PreferredGenresTableFactory.</span><code><span class="memberNameLink"><a href="../../../chinook/PreferredGenresTableFactory.html#create(org.apache.calcite.schema.SchemaPlus,java.lang.String,java.util.Map,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../../schema/SchemaPlus.html" title="interface in org.apache.calcite.schema">SchemaPlus</a>&nbsp;schema,
java.lang.String&nbsp;name,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;operand,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.example.maze">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../example/maze/package-summary.html">org.apache.calcite.example.maze</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../example/maze/package-summary.html">org.apache.calcite.example.maze</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MazeTable.</span><code><span class="memberNameLink"><a href="../../../example/maze/MazeTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.interpreter">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../interpreter/package-summary.html">org.apache.calcite.interpreter</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../interpreter/package-summary.html">org.apache.calcite.interpreter</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Compiler.</span><code><span class="memberNameLink"><a href="../../../interpreter/Compiler.html#combinedRowType(java.util.List)">combinedRowType</a></span>&#8203;(java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Interpreter.CompilerImpl.</span><code><span class="memberNameLink"><a href="../../../interpreter/Interpreter.CompilerImpl.html#combinedRowType(java.util.List)">combinedRowType</a></span>&#8203;(java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Bindables.BindableTableScan.</span><code><span class="memberNameLink"><a href="../../../interpreter/Bindables.BindableTableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../interpreter/package-summary.html">org.apache.calcite.interpreter</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../interpreter/Scalar.html" title="interface in org.apache.calcite.interpreter">Scalar</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Compiler.</span><code><span class="memberNameLink"><a href="../../../interpreter/Compiler.html#compile(java.util.List,org.apache.calcite.rel.type.RelDataType)">compile</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">
<div class="block">Compiles an expression to an executable form.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../interpreter/Scalar.html" title="interface in org.apache.calcite.interpreter">Scalar</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Interpreter.CompilerImpl.</span><code><span class="memberNameLink"><a href="../../../interpreter/Interpreter.CompilerImpl.html#compile(java.util.List,org.apache.calcite.rel.type.RelDataType)">compile</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../interpreter/Scalar.html" title="interface in org.apache.calcite.interpreter">Scalar</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Interpreter.FooCompiler.</span><code><span class="memberNameLink"><a href="../../../interpreter/Interpreter.FooCompiler.html#compile(java.util.List,org.apache.calcite.rel.type.RelDataType)">compile</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../interpreter/Scalar.html" title="interface in org.apache.calcite.interpreter">Scalar</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Interpreter.ScalarCompiler.</span><code><span class="memberNameLink"><a href="../../../interpreter/Interpreter.ScalarCompiler.html#compile(java.util.List,org.apache.calcite.rel.type.RelDataType)">compile</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../interpreter/Scalar.html" title="interface in org.apache.calcite.interpreter">Scalar</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JaninoRexCompiler.</span><code><span class="memberNameLink"><a href="../../../interpreter/JaninoRexCompiler.html#compile(java.util.List,org.apache.calcite.rel.type.RelDataType)">compile</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../interpreter/Bindables.BindableProject.html" title="class in org.apache.calcite.interpreter">Bindables.BindableProject</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Bindables.BindableProject.</span><code><span class="memberNameLink"><a href="../../../interpreter/Bindables.BindableProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../interpreter/package-summary.html">org.apache.calcite.interpreter</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../interpreter/Bindables.BindableMatch.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">BindableMatch</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates a BindableMatch.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../interpreter/Bindables.BindableProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">BindableProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../interpreter/Bindables.BindableValues.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList,org.apache.calcite.plan.RelTraitSet)">BindableValues</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../interpreter/Bindables.BindableWindow.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,java.util.List)">BindableWindow</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&nbsp;constants,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../core/Window.Group.html" title="class in org.apache.calcite.rel.core">Window.Group</a>&gt;&nbsp;groups)</code></th>
<td class="colLast">
<div class="block">Creates a BindableWindow.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.jdbc">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../jdbc/package-summary.html">org.apache.calcite.jdbc</a></h3>
<table class="useSummary">
<caption><span>Classes in <a href="../../../jdbc/package-summary.html">org.apache.calcite.jdbc</a> that implement <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../jdbc/JavaRecordType.html" title="class in org.apache.calcite.jdbc">JavaRecordType</a></span></code></th>
<td class="colLast">
<div class="block">Record type based on a Java class.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../../jdbc/package-summary.html">org.apache.calcite.jdbc</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryImpl.SyntheticRecordType.</span><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.SyntheticRecordType.html#relType">relType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepare.CalciteSignature.</span><code><span class="memberNameLink"><a href="../../../jdbc/CalcitePrepare.CalciteSignature.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepare.ParseResult.</span><code><span class="memberNameLink"><a href="../../../jdbc/CalcitePrepare.ParseResult.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../jdbc/package-summary.html">org.apache.calcite.jdbc</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.html#createStructType(java.lang.Class)">createStructType</a></span>&#8203;(java.lang.Class&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.html#createType(java.lang.reflect.Type)">createType</a></span>&#8203;(java.lang.reflect.Type&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteMetaImpl.MetadataTable.</span><code><span class="memberNameLink"><a href="../../../jdbc/CalciteMetaImpl.MetadataTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.html#toSql(org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.html#toSql(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Converts a type in Java format to a SQL-oriented type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../jdbc/package-summary.html">org.apache.calcite.jdbc</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>java.lang.reflect.Type</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.html#getJavaClass(org.apache.calcite.rel.type.RelDataType)">getJavaClass</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.html#toSql(org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JavaTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.html#toSql(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Converts a type in Java format to a SQL-oriented type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../jdbc/package-summary.html">org.apache.calcite.jdbc</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../jdbc/CalcitePrepare.AnalyzeViewResult.html#%3Cinit%3E(org.apache.calcite.prepare.CalcitePrepareImpl,org.apache.calcite.sql.validate.SqlValidator,java.lang.String,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.RelRoot,org.apache.calcite.schema.Table,com.google.common.collect.ImmutableList,org.apache.calcite.rex.RexNode,org.apache.calcite.util.ImmutableIntList,boolean)">AnalyzeViewResult</a></span>&#8203;(<a href="../../../prepare/CalcitePrepareImpl.html" title="class in org.apache.calcite.prepare">CalcitePrepareImpl</a>&nbsp;prepare,
<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
java.lang.String&nbsp;sql,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;sqlNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a>&nbsp;root,
<a href="../../../schema/Table.html" title="interface in org.apache.calcite.schema">Table</a>&nbsp;table,
com.google.common.collect.ImmutableList&lt;java.lang.String&gt;&nbsp;tablePath,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;constraint,
<a href="../../../util/ImmutableIntList.html" title="class in org.apache.calcite.util">ImmutableIntList</a>&nbsp;columnMapping,
boolean&nbsp;modifiable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../jdbc/CalcitePrepare.CalciteSignature.html#%3Cinit%3E(java.lang.String,java.util.List,java.util.Map,org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.avatica.Meta.CursorFactory,org.apache.calcite.jdbc.CalciteSchema,java.util.List,long,org.apache.calcite.runtime.Bindable)">CalciteSignature</a></span>&#8203;(java.lang.String&nbsp;sql,
java.util.List&lt;org.apache.calcite.avatica.AvaticaParameter&gt;&nbsp;parameterList,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;internalParameters,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;org.apache.calcite.avatica.ColumnMetaData&gt;&nbsp;columns,
org.apache.calcite.avatica.Meta.CursorFactory&nbsp;cursorFactory,
<a href="../../../jdbc/CalciteSchema.html" title="class in org.apache.calcite.jdbc">CalciteSchema</a>&nbsp;rootSchema,
java.util.List&lt;<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&gt;&nbsp;collationList,
long&nbsp;maxRowCount,
<a href="../../../runtime/Bindable.html" title="interface in org.apache.calcite.runtime">Bindable</a>&lt;<a href="../../../jdbc/CalcitePrepare.CalciteSignature.html" title="type parameter in CalcitePrepare.CalciteSignature">T</a>&gt;&nbsp;bindable)</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="../../../jdbc/CalcitePrepare.CalciteSignature.html#%3Cinit%3E(java.lang.String,java.util.List,java.util.Map,org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.avatica.Meta.CursorFactory,org.apache.calcite.jdbc.CalciteSchema,java.util.List,long,org.apache.calcite.runtime.Bindable,org.apache.calcite.avatica.Meta.StatementType)">CalciteSignature</a></span>&#8203;(java.lang.String&nbsp;sql,
java.util.List&lt;org.apache.calcite.avatica.AvaticaParameter&gt;&nbsp;parameterList,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;internalParameters,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;org.apache.calcite.avatica.ColumnMetaData&gt;&nbsp;columns,
org.apache.calcite.avatica.Meta.CursorFactory&nbsp;cursorFactory,
<a href="../../../jdbc/CalciteSchema.html" title="class in org.apache.calcite.jdbc">CalciteSchema</a>&nbsp;rootSchema,
java.util.List&lt;<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&gt;&nbsp;collationList,
long&nbsp;maxRowCount,
<a href="../../../runtime/Bindable.html" title="interface in org.apache.calcite.runtime">Bindable</a>&lt;<a href="../../../jdbc/CalcitePrepare.CalciteSignature.html" title="type parameter in CalcitePrepare.CalciteSignature">T</a>&gt;&nbsp;bindable,
org.apache.calcite.avatica.Meta.StatementType&nbsp;statementType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../jdbc/CalcitePrepare.ConvertResult.html#%3Cinit%3E(org.apache.calcite.prepare.CalcitePrepareImpl,org.apache.calcite.sql.validate.SqlValidator,java.lang.String,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.RelRoot)">ConvertResult</a></span>&#8203;(<a href="../../../prepare/CalcitePrepareImpl.html" title="class in org.apache.calcite.prepare">CalcitePrepareImpl</a>&nbsp;prepare,
<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
java.lang.String&nbsp;sql,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;sqlNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a>&nbsp;root)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../jdbc/CalcitePrepare.ParseResult.html#%3Cinit%3E(org.apache.calcite.prepare.CalcitePrepareImpl,org.apache.calcite.sql.validate.SqlValidator,java.lang.String,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">ParseResult</a></span>&#8203;(<a href="../../../prepare/CalcitePrepareImpl.html" title="class in org.apache.calcite.prepare">CalcitePrepareImpl</a>&nbsp;prepare,
<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
java.lang.String&nbsp;sql,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;sqlNode,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../jdbc/JavaTypeFactoryImpl.SyntheticRecordType.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,java.lang.String)">SyntheticRecordType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;relType,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.materialize">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../materialize/package-summary.html">org.apache.calcite.materialize</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../materialize/package-summary.html">org.apache.calcite.materialize</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MaterializationActor.Materialization.</span><code><span class="memberNameLink"><a href="../../../materialize/MaterializationActor.Materialization.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../materialize/package-summary.html">org.apache.calcite.materialize</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../materialize/MaterializationActor.Materialization.html#%3Cinit%3E(org.apache.calcite.materialize.MaterializationKey,org.apache.calcite.jdbc.CalciteSchema,org.apache.calcite.jdbc.CalciteSchema.TableEntry,java.lang.String,org.apache.calcite.rel.type.RelDataType,java.util.List)">Materialization</a></span>&#8203;(<a href="../../../materialize/MaterializationKey.html" title="class in org.apache.calcite.materialize">MaterializationKey</a>&nbsp;key,
<a href="../../../jdbc/CalciteSchema.html" title="class in org.apache.calcite.jdbc">CalciteSchema</a>&nbsp;rootSchema,
<a href="../../../jdbc/CalciteSchema.TableEntry.html" title="class in org.apache.calcite.jdbc">CalciteSchema.TableEntry</a>&nbsp;materializedTable,
java.lang.String&nbsp;sql,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;java.lang.String&gt;&nbsp;viewSchemaPath)</code></th>
<td class="colLast">
<div class="block">Creates a materialization.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.piglet">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a></h3>
<table class="useSummary">
<caption><span>Classes in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a> that implement <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../piglet/DynamicTupleRecordType.html" title="class in org.apache.calcite.piglet">DynamicTupleRecordType</a></span></code></th>
<td class="colLast">
<div class="block">Represents Pig Tuples with unknown fields.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTable.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTable.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.html#convertSchema(org.apache.pig.newplan.logical.relational.LogicalSchema)">convertSchema</a></span>&#8203;(org.apache.pig.newplan.logical.relational.LogicalSchema&nbsp;pigSchema)</code></th>
<td class="colLast">
<div class="block">Converts a Pig tuple schema to a SQL row type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.html#convertSchema(org.apache.pig.newplan.logical.relational.LogicalSchema,boolean)">convertSchema</a></span>&#8203;(org.apache.pig.newplan.logical.relational.LogicalSchema&nbsp;pigSchema,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Converts a Pig tuple schema to a SQL row type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.html#convertSchemaField(org.apache.pig.newplan.logical.relational.LogicalSchema.LogicalFieldSchema)">convertSchemaField</a></span>&#8203;(org.apache.pig.newplan.logical.relational.LogicalSchema.LogicalFieldSchema&nbsp;pigField)</code></th>
<td class="colLast">
<div class="block">Converts a Pig schema field to relational type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.html#convertSchemaField(org.apache.pig.newplan.logical.relational.LogicalSchema.LogicalFieldSchema,boolean)">convertSchemaField</a></span>&#8203;(org.apache.pig.newplan.logical.relational.LogicalSchema.LogicalFieldSchema&nbsp;pigField,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Converts a Pig schema field to relational type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#createMapType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">createMapType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#createMultisetType(org.apache.calcite.rel.type.RelDataType,long,boolean)">createMultisetType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
long&nbsp;maxCardinality,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigToSqlAggregateRule.</span><code><span class="memberNameLink"><a href="../../../piglet/PigToSqlAggregateRule.html#createRecordType(org.apache.calcite.tools.RelBuilder,java.util.List)">createRecordType</a></span>&#8203;(<a href="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a>&nbsp;relBuilder,
java.util.List&lt;java.lang.Integer&gt;&nbsp;fields)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#createSqlType(org.apache.calcite.sql.type.SqlTypeName,boolean)">createSqlType</a></span>&#8203;(<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#createStructType(java.util.List,java.util.List,boolean)">createStructType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelOpVisitor.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelOpVisitor.html#getGroupRowType(java.util.List,boolean)">getGroupRowType</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;groupFields,
boolean&nbsp;isCubeRollup)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelSqlUdfs.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelSqlUdfs.html#getRelDataType(org.apache.calcite.schema.ScalarFunction)">getRelDataType</a></span>&#8203;(<a href="../../../schema/ScalarFunction.html" title="interface in org.apache.calcite.schema">ScalarFunction</a>&nbsp;function)</code></th>
<td class="colLast">
<div class="block">Gets the return data type for a given function.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTable.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#toSql(org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#toType(org.apache.calcite.piglet.Ast.BagType)">toType</a></span>&#8203;(<a href="../../../piglet/Ast.BagType.html" title="class in org.apache.calcite.piglet">Ast.BagType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#toType(org.apache.calcite.piglet.Ast.MapType)">toType</a></span>&#8203;(<a href="../../../piglet/Ast.MapType.html" title="class in org.apache.calcite.piglet">Ast.MapType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#toType(org.apache.calcite.piglet.Ast.ScalarType)">toType</a></span>&#8203;(<a href="../../../piglet/Ast.ScalarType.html" title="class in org.apache.calcite.piglet">Ast.ScalarType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#toType(org.apache.calcite.piglet.Ast.Schema)">toType</a></span>&#8203;(<a href="../../../piglet/Ast.Schema.html" title="class in org.apache.calcite.piglet">Ast.Schema</a>&nbsp;schema)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#toType(org.apache.calcite.piglet.Ast.TupleType)">toType</a></span>&#8203;(<a href="../../../piglet/Ast.TupleType.html" title="class in org.apache.calcite.piglet">Ast.TupleType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#toType(org.apache.calcite.piglet.Ast.Type)">toType</a></span>&#8203;(<a href="../../../piglet/Ast.Type.html" title="class in org.apache.calcite.piglet">Ast.Type</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelSqlUdfs.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelSqlUdfs.html#getRelDataTypes(com.google.common.collect.ImmutableList)">getRelDataTypes</a></span>&#8203;(com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">
<div class="block">Helper method to return a list of RelDataType for a given list of relational operands</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#bag(java.util.List,org.apache.calcite.rel.type.RelDataType)">bag</a></span>&#8203;(java.util.List&lt;<a href="../../../piglet/Ast.Node.html" title="class in org.apache.calcite.piglet">Ast.Node</a>&gt;&nbsp;nodeList,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelBuilder.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelBuilder.html#compatibleType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">compatibleType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t2)</code></th>
<td class="colLast">
<div class="block">Checks if two relational data types are compatible.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) static <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelUdfConverter.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelUdfConverter.html#convertPigFunction(org.apache.calcite.piglet.PigRelBuilder,org.apache.pig.FuncSpec,com.google.common.collect.ImmutableList,org.apache.calcite.rel.type.RelDataType)">convertPigFunction</a></span>&#8203;(<a href="../../../piglet/PigRelBuilder.html" title="class in org.apache.calcite.piglet">PigRelBuilder</a>&nbsp;builder,
org.apache.pig.FuncSpec&nbsp;pigFunc,
com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;returnType)</code></th>
<td class="colLast">
<div class="block">Converts a Pig UDF, given its <code>FuncSpec</code> and a list of relational
operands (function arguments).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static <a href="../../../sql/validate/SqlUserDefinedFunction.html" title="class in org.apache.calcite.sql.validate">SqlUserDefinedFunction</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelSqlUdfs.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelSqlUdfs.html#createGeneralPigUdf(java.lang.String,java.lang.reflect.Method,org.apache.pig.FuncSpec,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createGeneralPigUdf</a></span>&#8203;(java.lang.String&nbsp;udfName,
java.lang.reflect.Method&nbsp;method,
org.apache.pig.FuncSpec&nbsp;funcSpec,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;returnType)</code></th>
<td class="colLast">
<div class="block">Creates a generic SqlUDF operator from a Pig UDF.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#createMapType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">createMapType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#createMultisetType(org.apache.calcite.rel.type.RelDataType,long,boolean)">createMultisetType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
long&nbsp;maxCardinality,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTable.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTable.html#createRelOptTable(org.apache.calcite.plan.RelOptSchema,org.apache.calcite.rel.type.RelDataType,java.util.List)">createRelOptTable</a></span>&#8203;(<a href="../../../plan/RelOptSchema.html" title="interface in org.apache.calcite.plan">RelOptSchema</a>&nbsp;schema,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;java.lang.String&gt;&nbsp;names)</code></th>
<td class="colLast">
<div class="block">Creates a <a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan"><code>RelOptTable</code></a> for a schema only table.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#item(org.apache.calcite.piglet.Ast.Node,org.apache.calcite.rel.type.RelDataType)">item</a></span>&#8203;(<a href="../../../piglet/Ast.Node.html" title="class in org.apache.calcite.piglet">Ast.Node</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelBuilder.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelBuilder.html#literal(java.lang.Object,org.apache.calcite.rel.type.RelDataType)">literal</a></span>&#8203;(java.lang.Object&nbsp;value,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelBuilder.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelBuilder.html#project(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType)">project</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputType)</code></th>
<td class="colLast">
<div class="block">Projects a specific row type out of a relation algebra operator.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelBuilder.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelBuilder.html#projects(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">projects</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputType)</code></th>
<td class="colLast">
<div class="block">Builds the projection expressions for a data type on top of an input data type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelBuilder.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelBuilder.html#scan(org.apache.calcite.rel.type.RelDataType,java.lang.String...)">scan</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String...&nbsp;tableNames)</code></th>
<td class="colLast">
<div class="block">Makes a table scan operator for a given row type and names</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelBuilder.</span><code><span class="memberNameLink"><a href="../../../piglet/PigRelBuilder.html#scan(org.apache.calcite.rel.type.RelDataType,java.util.List)">scan</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;java.lang.String&gt;&nbsp;tableNames)</code></th>
<td class="colLast">
<div class="block">Makes a table scan operator for a given row type and names</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#toSql(org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#tuple(java.util.List,org.apache.calcite.rel.type.RelDataType)">tuple</a></span>&#8203;(java.util.List&lt;<a href="../../../piglet/Ast.Node.html" title="class in org.apache.calcite.piglet">Ast.Node</a>&gt;&nbsp;nodeList,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Handler.</span><code><span class="memberNameLink"><a href="../../../piglet/Handler.html#tuples(org.apache.calcite.piglet.Ast.ValuesStmt,org.apache.calcite.rel.type.RelDataType)">tuples</a></span>&#8203;(<a href="../../../piglet/Ast.ValuesStmt.html" title="class in org.apache.calcite.piglet">Ast.ValuesStmt</a>&nbsp;valuesStmt,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigTypes.PigRelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../../../piglet/PigTypes.PigRelDataTypeFactory.html#createStructType(java.util.List,java.util.List,boolean)">createStructType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../piglet/PigTable.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType)">PigTable</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../../../piglet/package-summary.html">org.apache.calcite.piglet</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../piglet/PigUserDefinedFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.schema.Function)">PigUserDefinedFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../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">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../piglet/PigUserDefinedFunction.html#%3Cinit%3E(java.lang.String,org.apache.calcite.sql.type.SqlReturnTypeInference,org.apache.calcite.sql.type.SqlOperandTypeChecker,java.util.List,org.apache.calcite.schema.Function,org.apache.pig.FuncSpec)">PigUserDefinedFunction</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../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,
org.apache.pig.FuncSpec&nbsp;funcSpec)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../piglet/PigUserDefinedFunction.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.pig.FuncSpec)">PigUserDefinedFunction</a></span>&#8203;(<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../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,
org.apache.pig.FuncSpec&nbsp;funcSpec)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.plan">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../plan/package-summary.html">org.apache.calcite.plan</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../plan/package-summary.html">org.apache.calcite.plan</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptAbstractTable.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptAbstractTable.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexImplicationChecker.</span><code><span class="memberNameLink"><a href="../../../plan/RexImplicationChecker.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../plan/package-summary.html">org.apache.calcite.plan</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#createDmlRowType(org.apache.calcite.sql.SqlKind,org.apache.calcite.rel.type.RelDataTypeFactory)">createDmlRowType</a></span>&#8203;(<a href="../../../sql/SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Creates the row type descriptor for the result of a DML operation, which
is a single column named ROWCOUNT of type BIGINT for INSERT;
a single column named PLAN for EXPLAIN.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptAbstractTable.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptAbstractTable.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptNode.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptNode.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTable.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptTable.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Describes the type of rows returned by this table.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#permute(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.util.mapping.Mapping)">permute</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../util/mapping/Mapping.html" title="interface in org.apache.calcite.util.mapping">Mapping</a>&nbsp;mapping)</code></th>
<td class="colLast">
<div class="block">Permutes a record type according to a mapping.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../plan/package-summary.html">org.apache.calcite.plan</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#getFieldTypeList(org.apache.calcite.rel.type.RelDataType)">getFieldTypeList</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns a list of the types of the fields in a given struct type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../plan/package-summary.html">org.apache.calcite.plan</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.TypeDumper.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.TypeDumper.html#accept(org.apache.calcite.rel.type.RelDataType)">accept</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#areRowTypesEqual(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">areRowTypesEqual</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType2,
boolean&nbsp;compareNames)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#createCastRel(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,boolean)">createCastRel</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;castRowType,
boolean&nbsp;rename)</code></th>
<td class="colLast">
<div class="block">Creates a projection which casts a rel's output to a desired row type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#createCastRel(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,boolean,org.apache.calcite.rel.core.RelFactories.ProjectFactory)">createCastRel</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;castRowType,
boolean&nbsp;rename,
<a href="../../core/RelFactories.ProjectFactory.html" title="interface in org.apache.calcite.rel.core">RelFactories.ProjectFactory</a>&nbsp;projectFactory)</code></th>
<td class="colLast">
<div class="block">Creates a projection which casts a rel's output to a desired row type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#createRenameRel(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.RelNode)">createRenameRel</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputType,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#dumpType(org.apache.calcite.rel.type.RelDataType)">dumpType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#eq(java.lang.String,org.apache.calcite.rel.type.RelDataType,java.lang.String,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.util.Litmus)">eq</a></span>&#8203;(java.lang.String&nbsp;desc1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
java.lang.String&nbsp;desc2,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Returns whether two types are equal using '='.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#equal(java.lang.String,org.apache.calcite.rel.type.RelDataType,java.lang.String,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.util.Litmus)">equal</a></span>&#8203;(java.lang.String&nbsp;desc1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
java.lang.String&nbsp;desc2,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Returns whether two types are equal using
<a href="../../../plan/RelOptUtil.html#areRowTypesEqual(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)"><code>RelOptUtil.areRowTypesEqual(RelDataType, RelDataType, boolean)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTable.ViewExpander.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptTable.ViewExpander.html#expandView(org.apache.calcite.rel.type.RelDataType,java.lang.String,java.util.List,java.util.List)">expandView</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;queryString,
java.util.List&lt;java.lang.String&gt;&nbsp;schemaPath,
java.util.List&lt;java.lang.String&gt;&nbsp;viewPath)</code></th>
<td class="colLast">
<div class="block">Returns a relational expression that is to be substituted for an access
to a SQL view.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.Map&lt;java.lang.Integer,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#getColumnConstraints(org.apache.calcite.schema.ModifiableView,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeFactory)">getColumnConstraints</a></span>&#8203;(<a href="../../../schema/ModifiableView.html" title="interface in org.apache.calcite.schema">ModifiableView</a>&nbsp;modifiableViewTable,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Returns a mapping of the column ordinal in the underlying table to a column
constraint of the modifiable view.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#getFieldTypeList(org.apache.calcite.rel.type.RelDataType)">getFieldTypeList</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns a list of the types of the fields in a given struct type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../DataContext.html" title="interface in org.apache.calcite">DataContext</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">VisitorDataContext.</span><code><span class="memberNameLink"><a href="../../../plan/VisitorDataContext.html#of(org.apache.calcite.rel.type.RelDataType,java.util.List)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;<a href="../../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&gt;&nbsp;usageList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../DataContext.html" title="interface in org.apache.calcite">DataContext</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">VisitorDataContext.</span><code><span class="memberNameLink"><a href="../../../plan/VisitorDataContext.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rex)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../util/mapping/Mappings.TargetMapping.html" title="interface in org.apache.calcite.util.mapping">Mappings.TargetMapping</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#permutation(java.util.List,org.apache.calcite.rel.type.RelDataType)">permutation</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">
<div class="block">Returns a permutation describing where output fields come from.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../util/mapping/Mappings.TargetMapping.html" title="interface in org.apache.calcite.util.mapping">Mappings.TargetMapping</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#permutationIgnoreCast(java.util.List,org.apache.calcite.rel.type.RelDataType)">permutationIgnoreCast</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">
<div class="block">Returns a permutation describing where output fields come from.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#permute(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.util.mapping.Mapping)">permute</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../util/mapping/Mapping.html" title="interface in org.apache.calcite.util.mapping">Mapping</a>&nbsp;mapping)</code></th>
<td class="colLast">
<div class="block">Permutes a record type according to a mapping.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptUtil.</span><code><span class="memberNameLink"><a href="../../../plan/RelOptUtil.html#renameIfNecessary(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType)">renameIfNecessary</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;desiredRowType)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../plan/package-summary.html">org.apache.calcite.plan</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../plan/RelOptAbstractTable.html#%3Cinit%3E(org.apache.calcite.plan.RelOptSchema,java.lang.String,org.apache.calcite.rel.type.RelDataType)">RelOptAbstractTable</a></span>&#8203;(<a href="../../../plan/RelOptSchema.html" title="interface in org.apache.calcite.plan">RelOptSchema</a>&nbsp;schema,
java.lang.String&nbsp;name,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../plan/RexImplicationChecker.html#%3Cinit%3E(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexExecutorImpl,org.apache.calcite.rel.type.RelDataType)">RexImplicationChecker</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;builder,
<a href="../../../rex/RexExecutorImpl.html" title="class in org.apache.calcite.rex">RexExecutorImpl</a>&nbsp;executor,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.plan.hep">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../plan/hep/package-summary.html">org.apache.calcite.plan.hep</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../plan/hep/package-summary.html">org.apache.calcite.plan.hep</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.Map&lt;<a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;,&#8203;<a href="../../../plan/hep/HepRelVertex.html" title="class in org.apache.calcite.plan.hep">HepRelVertex</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">HepPlanner.</span><code><span class="memberNameLink"><a href="../../../plan/hep/HepPlanner.html#mapDigestToVertex">mapDigestToVertex</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../plan/hep/package-summary.html">org.apache.calcite.plan.hep</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">HepRelVertex.</span><code><span class="memberNameLink"><a href="../../../plan/hep/HepRelVertex.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../plan/hep/package-summary.html">org.apache.calcite.plan.hep</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">HepPlanner.</span><code><span class="memberNameLink"><a href="../../../plan/hep/HepPlanner.html#key(org.apache.calcite.rel.RelNode)">key</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.plan.volcano">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../plan/volcano/package-summary.html">org.apache.calcite.plan.volcano</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../plan/volcano/package-summary.html">org.apache.calcite.plan.volcano</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.Map&lt;<a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;,&#8203;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">VolcanoPlanner.</span><code><span class="memberNameLink"><a href="../../../plan/volcano/VolcanoPlanner.html#mapDigestToRel">mapDigestToRel</a></span></code></th>
<td class="colLast">
<div class="block">Canonical map from <code>digest</code> to the unique
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel"><code>relational expression</code></a> with that digest.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../plan/volcano/package-summary.html">org.apache.calcite.plan.volcano</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelSubset.</span><code><span class="memberNameLink"><a href="../../../plan/volcano/RelSubset.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../plan/volcano/package-summary.html">org.apache.calcite.plan.volcano</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">VolcanoPlanner.</span><code><span class="memberNameLink"><a href="../../../plan/volcano/VolcanoPlanner.html#key(org.apache.calcite.rel.RelNode)">key</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel)</code></th>
<td class="colLast">
<div class="block">Computes the key for <a href="../../../plan/volcano/VolcanoPlanner.html#mapDigestToRel"><code>VolcanoPlanner.mapDigestToRel</code></a>.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.prepare">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../prepare/package-summary.html">org.apache.calcite.prepare</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../prepare/package-summary.html">org.apache.calcite.prepare</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.html#parameterRowType">parameterRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.PreparedExplain.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedExplain.html#parameterRowType">parameterRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.PreparedResultImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedResultImpl.html#parameterRowType">parameterRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.PreparedExplain.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedExplain.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.PreparedResultImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedResultImpl.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../prepare/package-summary.html">org.apache.calcite.prepare</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteCatalogReader.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteCatalogReader.html#createTypeFromProjection(org.apache.calcite.rel.type.RelDataType,java.util.List)">createTypeFromProjection</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;java.lang.String&gt;&nbsp;columnNameList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteSqlValidator.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteSqlValidator.html#getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalSourceRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceRowType,
<a href="../../../sql/SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a>&nbsp;insert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteSqlValidator.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteSqlValidator.html#getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalTargetRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../../../sql/SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a>&nbsp;insert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteCatalogReader.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteCatalogReader.html#getNamedType(org.apache.calcite.sql.SqlIdentifier)">getNamedType</a></span>&#8203;(<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;typeName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.PreparedExplain.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedExplain.html#getParameterRowType()">getParameterRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.PreparedResult.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedResult.html#getParameterRowType()">getParameterRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns a record type whose fields are the parameters of this statement.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.PreparedResultImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedResultImpl.html#getParameterRowType()">getParameterRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.PreparedResultImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedResultImpl.html#getPhysicalRowType()">getPhysicalRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the physical row type of this prepared statement.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#makeStruct(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">makeStruct</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#realRowType(org.apache.calcite.plan.RelOptTable)">realRowType</a></span>&#8203;(<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;table)</code></th>
<td class="colLast">
<div class="block">Returns the row type of a table after any <a href="../../../schema/ColumnStrategy.html#VIRTUAL"><code>ColumnStrategy.VIRTUAL</code></a>
columns have been removed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteCatalogReader.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteCatalogReader.html#toSql(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.EmptyScalarTranslator.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.EmptyScalarTranslator.html#type(org.apache.calcite.linq4j.tree.Expression)">type</a></span>&#8203;(<a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a>&nbsp;expression)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../prepare/package-summary.html">org.apache.calcite.prepare</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteCatalogReader.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteCatalogReader.html#toSql(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">toSql</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PlannerImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/PlannerImpl.html#validateAndGetType(org.apache.calcite.sql.SqlNode)">validateAndGetType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;sqlNode)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../prepare/package-summary.html">org.apache.calcite.prepare</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private org.apache.calcite.avatica.ColumnMetaData.AvaticaType</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#avaticaType(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">avaticaType</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;fieldType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.AbstractPreparingTable.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.AbstractPreparingTable.html#columnHasDefaultValue(org.apache.calcite.rel.type.RelDataType,int,org.apache.calcite.sql2rel.InitializerContext)">columnHasDefaultValue</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;ordinal,
<a href="../../../sql2rel/InitializerContext.html" title="interface in org.apache.calcite.sql2rel">InitializerContext</a>&nbsp;initializerContext)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../prepare/RelOptTableImpl.html" title="class in org.apache.calcite.prepare">RelOptTableImpl</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#copy(org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;newRowType)</code></th>
<td class="colLast">
<div class="block">Creates a copy of this RelOptTable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../prepare/RelOptTableImpl.html" title="class in org.apache.calcite.prepare">RelOptTableImpl</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#create(org.apache.calcite.plan.RelOptSchema,org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.linq4j.tree.Expression)">create</a></span>&#8203;(<a href="../../../plan/RelOptSchema.html" title="interface in org.apache.calcite.plan">RelOptSchema</a>&nbsp;schema,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;java.lang.String&gt;&nbsp;names,
<a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a>&nbsp;expression)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../prepare/RelOptTableImpl.html" title="class in org.apache.calcite.prepare">RelOptTableImpl</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#create(org.apache.calcite.plan.RelOptSchema,org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.schema.Table,org.apache.calcite.linq4j.tree.Expression)">create</a></span>&#8203;(<a href="../../../plan/RelOptSchema.html" title="interface in org.apache.calcite.plan">RelOptSchema</a>&nbsp;schema,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;java.lang.String&gt;&nbsp;names,
<a href="../../../schema/Table.html" title="interface in org.apache.calcite.schema">Table</a>&nbsp;table,
<a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a>&nbsp;expression)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../prepare/RelOptTableImpl.html" title="class in org.apache.calcite.prepare">RelOptTableImpl</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#create(org.apache.calcite.plan.RelOptSchema,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.jdbc.CalciteSchema.TableEntry,java.lang.Double)">create</a></span>&#8203;(<a href="../../../plan/RelOptSchema.html" title="interface in org.apache.calcite.plan">RelOptSchema</a>&nbsp;schema,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../jdbc/CalciteSchema.TableEntry.html" title="class in org.apache.calcite.jdbc">CalciteSchema.TableEntry</a>&nbsp;tableEntry,
java.lang.Double&nbsp;rowCount)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../prepare/RelOptTableImpl.html" title="class in org.apache.calcite.prepare">RelOptTableImpl</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#create(org.apache.calcite.plan.RelOptSchema,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.schema.Table,com.google.common.collect.ImmutableList)">create</a></span>&#8203;(<a href="../../../plan/RelOptSchema.html" title="interface in org.apache.calcite.plan">RelOptSchema</a>&nbsp;schema,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../schema/Table.html" title="interface in org.apache.calcite.schema">Table</a>&nbsp;table,
com.google.common.collect.ImmutableList&lt;java.lang.String&gt;&nbsp;names)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../prepare/RelOptTableImpl.html" title="class in org.apache.calcite.prepare">RelOptTableImpl</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelOptTableImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#create(org.apache.calcite.plan.RelOptSchema,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.schema.Table,org.apache.calcite.schema.Path)">create</a></span>&#8203;(<a href="../../../plan/RelOptSchema.html" title="interface in org.apache.calcite.plan">RelOptSchema</a>&nbsp;schema,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../schema/Table.html" title="interface in org.apache.calcite.schema">Table</a>&nbsp;table,
<a href="../../../schema/Path.html" title="interface in org.apache.calcite.schema">Path</a>&nbsp;path)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../prepare/Prepare.PreparedResult.html" title="interface in org.apache.calcite.prepare">Prepare.PreparedResult</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.CalcitePreparingStmt.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.CalcitePreparingStmt.html#createPreparedExplanation(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.RelRoot,org.apache.calcite.sql.SqlExplainFormat,org.apache.calcite.sql.SqlExplainLevel)">createPreparedExplanation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;resultType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;parameterRowType,
<a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a>&nbsp;root,
<a href="../../../sql/SqlExplainFormat.html" title="enum in org.apache.calcite.sql">SqlExplainFormat</a>&nbsp;format,
<a href="../../../sql/SqlExplainLevel.html" title="enum in org.apache.calcite.sql">SqlExplainLevel</a>&nbsp;detailLevel)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected abstract <a href="../../../prepare/Prepare.PreparedResult.html" title="interface in org.apache.calcite.prepare">Prepare.PreparedResult</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Prepare.</span><code><span class="memberNameLink"><a href="../../../prepare/Prepare.html#createPreparedExplanation(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.RelRoot,org.apache.calcite.sql.SqlExplainFormat,org.apache.calcite.sql.SqlExplainLevel)">createPreparedExplanation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;resultType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;parameterRowType,
<a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a>&nbsp;root,
<a href="../../../sql/SqlExplainFormat.html" title="enum in org.apache.calcite.sql">SqlExplainFormat</a>&nbsp;format,
<a href="../../../sql/SqlExplainLevel.html" title="enum in org.apache.calcite.sql">SqlExplainLevel</a>&nbsp;detailLevel)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteCatalogReader.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteCatalogReader.html#createTypeFromProjection(org.apache.calcite.rel.type.RelDataType,java.util.List)">createTypeFromProjection</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;java.lang.String&gt;&nbsp;columnNameList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.CalcitePreparingStmt.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.CalcitePreparingStmt.html#expandView(org.apache.calcite.rel.type.RelDataType,java.lang.String,java.util.List,java.util.List)">expandView</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;queryString,
java.util.List&lt;java.lang.String&gt;&nbsp;schemaPath,
java.util.List&lt;java.lang.String&gt;&nbsp;viewPath)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PlannerImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/PlannerImpl.html#expandView(org.apache.calcite.rel.type.RelDataType,java.lang.String,java.util.List,java.util.List)">expandView</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;queryString,
java.util.List&lt;java.lang.String&gt;&nbsp;schemaPath,
java.util.List&lt;java.lang.String&gt;&nbsp;viewPath)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PlannerImpl.ViewExpanderImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/PlannerImpl.ViewExpanderImpl.html#expandView(org.apache.calcite.rel.type.RelDataType,java.lang.String,java.util.List,java.util.List)">expandView</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;queryString,
java.util.List&lt;java.lang.String&gt;&nbsp;schemaPath,
java.util.List&lt;java.lang.String&gt;&nbsp;viewPath)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteCatalogReader.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteCatalogReader.html#field(org.apache.calcite.rel.type.RelDataType,java.lang.String)">field</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;alias)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#getClassName(org.apache.calcite.rel.type.RelDataType)">getClassName</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;org.apache.calcite.avatica.ColumnMetaData&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#getColumnMetaDataList(org.apache.calcite.adapter.java.JavaTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,java.util.List)">getColumnMetaDataList</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;x,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;jdbcType,
java.util.List&lt;java.util.List&lt;java.lang.String&gt;&gt;&nbsp;originList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteSqlValidator.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteSqlValidator.html#getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalSourceRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceRowType,
<a href="../../../sql/SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a>&nbsp;insert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteSqlValidator.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteSqlValidator.html#getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalTargetRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../../../sql/SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a>&nbsp;insert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#getPrecision(org.apache.calcite.rel.type.RelDataType)">getPrecision</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#getScale(org.apache.calcite.rel.type.RelDataType)">getScale</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#getTypeName(org.apache.calcite.rel.type.RelDataType)">getTypeName</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns the type name in string form.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#getTypeOrdinal(org.apache.calcite.rel.type.RelDataType)">getTypeOrdinal</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#makeStruct(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">makeStruct</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private org.apache.calcite.avatica.ColumnMetaData</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.html#metaData(org.apache.calcite.adapter.java.JavaTypeFactory,int,java.lang.String,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,java.util.List)">metaData</a></span>&#8203;(<a href="../../../adapter/java/JavaTypeFactory.html" title="interface in org.apache.calcite.adapter.java">JavaTypeFactory</a>&nbsp;typeFactory,
int&nbsp;ordinal,
java.lang.String&nbsp;fieldName,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;fieldType,
java.util.List&lt;java.lang.String&gt;&nbsp;origins)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../prepare/Prepare.PreparedResult.html" title="interface in org.apache.calcite.prepare">Prepare.PreparedResult</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.CalcitePreparingStmt.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.CalcitePreparingStmt.html#prepare_(com.google.common.base.Supplier,org.apache.calcite.rel.type.RelDataType)">prepare_</a></span>&#8203;(com.google.common.base.Supplier&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;fn,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;resultType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../prepare/Prepare.PreparedResult.html" title="interface in org.apache.calcite.prepare">Prepare.PreparedResult</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcitePrepareImpl.CalcitePreparingStmt.</span><code><span class="memberNameLink"><a href="../../../prepare/CalcitePrepareImpl.CalcitePreparingStmt.html#prepareQueryable(org.apache.calcite.linq4j.Queryable,org.apache.calcite.rel.type.RelDataType)">prepareQueryable</a></span>&#8203;(<a href="../../../linq4j/Queryable.html" title="interface in org.apache.calcite.linq4j">Queryable</a>&nbsp;queryable,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;resultType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteCatalogReader.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteCatalogReader.html#toSql(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../prepare/package-summary.html">org.apache.calcite.prepare</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalciteCatalogReader.</span><code><span class="memberNameLink"><a href="../../../prepare/CalciteCatalogReader.html#toSql(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">toSql</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../prepare/package-summary.html">org.apache.calcite.prepare</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../prepare/CalcitePrepareImpl.CalcitePreparedExplain.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.RelRoot,org.apache.calcite.sql.SqlExplainFormat,org.apache.calcite.sql.SqlExplainLevel)">CalcitePreparedExplain</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;resultType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;parameterRowType,
<a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a>&nbsp;root,
<a href="../../../sql/SqlExplainFormat.html" title="enum in org.apache.calcite.sql">SqlExplainFormat</a>&nbsp;format,
<a href="../../../sql/SqlExplainLevel.html" title="enum in org.apache.calcite.sql">SqlExplainLevel</a>&nbsp;detailLevel)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedExplain.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.RelRoot,org.apache.calcite.sql.SqlExplainFormat,org.apache.calcite.sql.SqlExplainLevel)">PreparedExplain</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;parameterRowType,
<a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a>&nbsp;root,
<a href="../../../sql/SqlExplainFormat.html" title="enum in org.apache.calcite.sql">SqlExplainFormat</a>&nbsp;format,
<a href="../../../sql/SqlExplainLevel.html" title="enum in org.apache.calcite.sql">SqlExplainLevel</a>&nbsp;detailLevel)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../prepare/Prepare.PreparedResultImpl.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.core.TableModify.Operation,boolean)">PreparedResultImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;parameterRowType,
java.util.List&lt;java.util.List&lt;java.lang.String&gt;&gt;&nbsp;fieldOrigins,
java.util.List&lt;<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&gt;&nbsp;collations,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rootRel,
<a href="../../core/TableModify.Operation.html" title="enum in org.apache.calcite.rel.core">TableModify.Operation</a>&nbsp;tableModOp,
boolean&nbsp;isDml)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../prepare/RelOptTableImpl.html#%3Cinit%3E(org.apache.calcite.plan.RelOptSchema,org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.schema.Table,java.util.function.Function,java.lang.Double)">RelOptTableImpl</a></span>&#8203;(<a href="../../../plan/RelOptSchema.html" title="interface in org.apache.calcite.plan">RelOptSchema</a>&nbsp;schema,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;java.lang.String&gt;&nbsp;names,
<a href="../../../schema/Table.html" title="interface in org.apache.calcite.schema">Table</a>&nbsp;table,
java.util.function.Function&lt;java.lang.Class,&#8203;<a href="../../../linq4j/tree/Expression.html" title="class in org.apache.calcite.linq4j.tree">Expression</a>&gt;&nbsp;expressionFunction,
java.lang.Double&nbsp;rowCount)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../package-summary.html">org.apache.calcite.rel</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../package-summary.html">org.apache.calcite.rel</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractRelNode.</span><code><span class="memberNameLink"><a href="../../AbstractRelNode.html#rowType">rowType</a></span></code></th>
<td class="colLast">
<div class="block">Cached type of this relational expression.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelRoot.</span><code><span class="memberNameLink"><a href="../../RelRoot.html#validatedRowType">validatedRowType</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.rel</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractRelNode.</span><code><span class="memberNameLink"><a href="../../AbstractRelNode.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SingleRel.</span><code><span class="memberNameLink"><a href="../../SingleRel.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractRelNode.</span><code><span class="memberNameLink"><a href="../../AbstractRelNode.html#getExpectedInputRowType(int)">getExpectedInputRowType</a></span>&#8203;(int&nbsp;ordinalInParent)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelNode.</span><code><span class="memberNameLink"><a href="../../RelNode.html#getExpectedInputRowType(int)">getExpectedInputRowType</a></span>&#8203;(int&nbsp;ordinalInParent)</code></th>
<td class="colLast">
<div class="block">Returns the type of the rows expected for an input.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractRelNode.</span><code><span class="memberNameLink"><a href="../../AbstractRelNode.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelInput.</span><code><span class="memberNameLink"><a href="../../RelInput.html#getRowType(java.lang.String)">getRowType</a></span>&#8203;(java.lang.String&nbsp;tag)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelInput.</span><code><span class="memberNameLink"><a href="../../RelInput.html#getRowType(java.lang.String,java.lang.String)">getRowType</a></span>&#8203;(java.lang.String&nbsp;expressionsTag,
java.lang.String&nbsp;fieldsTag)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelNode.</span><code><span class="memberNameLink"><a href="../../RelNode.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the type of the rows returned by this relational expression.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../package-summary.html">org.apache.calcite.rel</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelCollationImpl.</span><code><span class="memberNameLink"><a href="../../RelCollationImpl.html#isValid(org.apache.calcite.rel.type.RelDataType,java.util.List,boolean)">isValid</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&gt;&nbsp;collationList,
boolean&nbsp;fail)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelCollations.</span><code><span class="memberNameLink"><a href="../../RelCollations.html#isValid(org.apache.calcite.rel.type.RelDataType,java.util.List,boolean)">isValid</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&gt;&nbsp;collationList,
boolean&nbsp;fail)</code></th>
<td class="colLast">
<div class="block">Checks that a collection of collations is valid.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelRoot.</span><code><span class="memberNameLink"><a href="../../RelRoot.html#of(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlKind)">of</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../sql/SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind)</code></th>
<td class="colLast">
<div class="block">Creates a simple RelRoot.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../package-summary.html">org.apache.calcite.rel</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../RelRoot.html#%3Cinit%3E(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlKind,java.util.List,org.apache.calcite.rel.RelCollation)">RelRoot</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;validatedRowType,
<a href="../../../sql/SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
java.util.List&lt;<a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;java.lang.Integer,&#8203;java.lang.String&gt;&gt;&nbsp;fields,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;collation)</code></th>
<td class="colLast">
<div class="block">Creates a RelRoot.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.core">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../core/package-summary.html">org.apache.calcite.rel.core</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../core/package-summary.html">org.apache.calcite.rel.core</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableModify.</span><code><span class="memberNameLink"><a href="../../core/TableModify.html#inputRowType">inputRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../core/package-summary.html">org.apache.calcite.rel.core</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Aggregate.AggCallBinding.</span><code><span class="memberNameLink"><a href="../../core/Aggregate.AggCallBinding.html#operands">operands</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../core/package-summary.html">org.apache.calcite.rel.core</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Join.</span><code><span class="memberNameLink"><a href="../../core/Join.html#createJoinType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List)">createJoinType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;systemFieldList)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Collect.</span><code><span class="memberNameLink"><a href="../../core/Collect.html#deriveCollectRowType(org.apache.calcite.rel.SingleRel,java.lang.String)">deriveCollectRowType</a></span>&#8203;(<a href="../../SingleRel.html" title="class in org.apache.calcite.rel">SingleRel</a>&nbsp;rel,
java.lang.String&nbsp;fieldName)</code></th>
<td class="colLast">
<div class="block">Derives the output type of a collect relational expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Join.</span><code><span class="memberNameLink"><a href="../../core/Join.html#deriveJoinRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.JoinRelType,org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,java.util.List)">deriveJoinRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType,
<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;systemFieldList)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Aggregate.</span><code><span class="memberNameLink"><a href="../../core/Aggregate.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Aggregate.</span><code><span class="memberNameLink"><a href="../../core/Aggregate.html#deriveRowType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,boolean,org.apache.calcite.util.ImmutableBitSet,java.util.List,java.util.List)">deriveRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
boolean&nbsp;indicator,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupSet,
java.util.List&lt;<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&gt;&nbsp;groupSets,
java.util.List&lt;<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&gt;&nbsp;aggCalls)</code></th>
<td class="colLast">
<div class="block">Computes the row type of an <code>Aggregate</code> before it exists.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Collect.</span><code><span class="memberNameLink"><a href="../../core/Collect.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Correlate.</span><code><span class="memberNameLink"><a href="../../core/Correlate.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Join.</span><code><span class="memberNameLink"><a href="../../core/Join.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RepeatUnion.</span><code><span class="memberNameLink"><a href="../../core/RepeatUnion.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SetOp.</span><code><span class="memberNameLink"><a href="../../core/SetOp.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableModify.</span><code><span class="memberNameLink"><a href="../../core/TableModify.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableScan.</span><code><span class="memberNameLink"><a href="../../core/TableScan.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Uncollect.</span><code><span class="memberNameLink"><a href="../../core/Uncollect.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Values.</span><code><span class="memberNameLink"><a href="../../core/Values.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Uncollect.</span><code><span class="memberNameLink"><a href="../../core/Uncollect.html#deriveUncollectRowType(org.apache.calcite.rel.RelNode,boolean)">deriveUncollectRowType</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
boolean&nbsp;withOrdinality)</code></th>
<td class="colLast">
<div class="block">Returns the row type returned by applying the 'UNNEST' operation to a
relational expression.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableModify.</span><code><span class="memberNameLink"><a href="../../core/TableModify.html#getExpectedInputRowType(int)">getExpectedInputRowType</a></span>&#8203;(int&nbsp;ordinalInParent)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Aggregate.AggCallBinding.</span><code><span class="memberNameLink"><a href="../../core/Aggregate.AggCallBinding.html#getOperandType(int)">getOperandType</a></span>&#8203;(int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#getType()">getType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the result type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../core/package-summary.html">org.apache.calcite.rel.core</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../rex/RexCall.html" title="class in org.apache.calcite.rex">RexCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Window.RexWinAggCall.</span><code><span class="memberNameLink"><a href="../../core/Window.RexWinAggCall.html#clone(org.apache.calcite.rel.type.RelDataType,java.util.List)">clone</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>abstract <a href="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Project.</span><code><span class="memberNameLink"><a href="../../core/Project.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Copies a project.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Project.</span><code><span class="memberNameLink"><a href="../../core/Project.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,int)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;flags)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>abstract <a href="../../core/TableFunctionScan.html" title="class in org.apache.calcite.rel.core">TableFunctionScan</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableFunctionScan.</span><code><span class="memberNameLink"><a href="../../core/TableFunctionScan.html#copy(org.apache.calcite.plan.RelTraitSet,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,org.apache.calcite.rel.type.RelDataType,java.util.Set)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">
<div class="block">Copies this relational expression, substituting traits and
inputs.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,boolean,boolean,java.util.List,int,org.apache.calcite.rel.RelCollation,int,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
boolean&nbsp;approximate,
boolean&nbsp;ignoreNulls,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;collation,
int&nbsp;groupCount,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Creates an AggregateCall, inferring its type if <code>type</code> is null.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,boolean,boolean,java.util.List,int,org.apache.calcite.rel.RelCollation,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
boolean&nbsp;approximate,
boolean&nbsp;ignoreNulls,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;collation,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Creates an AggregateCall.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,boolean,java.util.List,int,int,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
boolean&nbsp;approximate,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
int&nbsp;groupCount,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,boolean,java.util.List,int,org.apache.calcite.rel.RelCollation,int,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
boolean&nbsp;approximate,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;collation,
int&nbsp;groupCount,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,boolean,java.util.List,int,org.apache.calcite.rel.RelCollation,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
boolean&nbsp;approximate,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;collation,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,boolean,java.util.List,int,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
boolean&nbsp;approximate,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,java.util.List,int,int,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
int&nbsp;groupCount,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,java.util.List,int,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;groupCount,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateCall.</span><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#create(org.apache.calcite.sql.SqlAggFunction,boolean,java.util.List,int,org.apache.calcite.rel.type.RelDataType,java.lang.String)">create</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Join.</span><code><span class="memberNameLink"><a href="../../core/Join.html#createJoinType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List)">createJoinType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;systemFieldList)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelFactories.MatchFactory.</span><code><span class="memberNameLink"><a href="../../core/RelFactories.MatchFactory.html#createMatch(org.apache.calcite.rel.RelNode,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">createMatch</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates a <a href="../../core/Match.html" title="class in org.apache.calcite.rel.core"><code>Match</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelFactories.MatchFactoryImpl.</span><code><span class="memberNameLink"><a href="../../core/RelFactories.MatchFactoryImpl.html#createMatch(org.apache.calcite.rel.RelNode,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">createMatch</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelFactories.ValuesFactory.</span><code><span class="memberNameLink"><a href="../../core/RelFactories.ValuesFactory.html#createValues(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,java.util.List)">createValues</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples)</code></th>
<td class="colLast">
<div class="block">Creates a Values.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelFactories.ValuesFactoryImpl.</span><code><span class="memberNameLink"><a href="../../core/RelFactories.ValuesFactoryImpl.html#createValues(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,java.util.List)">createValues</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Join.</span><code><span class="memberNameLink"><a href="../../core/Join.html#deriveJoinRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.JoinRelType,org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,java.util.List)">deriveJoinRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType,
<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;systemFieldList)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Aggregate.</span><code><span class="memberNameLink"><a href="../../core/Aggregate.html#deriveRowType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,boolean,org.apache.calcite.util.ImmutableBitSet,java.util.List,java.util.List)">deriveRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
boolean&nbsp;indicator,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupSet,
java.util.List&lt;<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&gt;&nbsp;groupSets,
java.util.List&lt;<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&gt;&nbsp;aggCalls)</code></th>
<td class="colLast">
<div class="block">Computes the row type of an <code>Aggregate</code> before it exists.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../core/package-summary.html">org.apache.calcite.rel.core</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../core/AggregateCall.html#%3Cinit%3E(org.apache.calcite.sql.SqlAggFunction,boolean,boolean,boolean,java.util.List,int,org.apache.calcite.rel.RelCollation,org.apache.calcite.rel.type.RelDataType,java.lang.String)">AggregateCall</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
boolean&nbsp;approximate,
boolean&nbsp;ignoreNulls,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
int&nbsp;filterArg,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;collation,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Creates an AggregateCall.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../core/AggregateCall.html#%3Cinit%3E(org.apache.calcite.sql.SqlAggFunction,boolean,java.util.List,org.apache.calcite.rel.type.RelDataType,java.lang.String)">AggregateCall</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
boolean&nbsp;distinct,
java.util.List&lt;java.lang.Integer&gt;&nbsp;argList,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;name)</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="../../core/Match.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">Match</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates a Match.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../core/Project.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">Project</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traits,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a Project.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../core/Project.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,int)">Project</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;flags)</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="../../core/Match.RexMRAggCall.html#%3Cinit%3E(org.apache.calcite.sql.SqlAggFunction,org.apache.calcite.rel.type.RelDataType,java.util.List,int)">RexMRAggCall</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFun,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands,
int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../core/Window.RexWinAggCall.html#%3Cinit%3E(org.apache.calcite.sql.SqlAggFunction,org.apache.calcite.rel.type.RelDataType,java.util.List,int,boolean)">RexWinAggCall</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFun,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands,
int&nbsp;ordinal,
boolean&nbsp;distinct)</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="../../core/Window.RexWinAggCall.html#%3Cinit%3E(org.apache.calcite.sql.SqlAggFunction,org.apache.calcite.rel.type.RelDataType,java.util.List,int,boolean,boolean)">RexWinAggCall</a></span>&#8203;(<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFun,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands,
int&nbsp;ordinal,
boolean&nbsp;distinct,
boolean&nbsp;ignoreNulls)</code></th>
<td class="colLast">
<div class="block">Creates a RexWinAggCall.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../core/TableFunctionScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,org.apache.calcite.rel.type.RelDataType,java.util.Set)">TableFunctionScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">
<div class="block">Creates a <code>TableFunctionScan</code>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../core/Values.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList,org.apache.calcite.plan.RelTraitSet)">Values</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traits)</code></th>
<td class="colLast">
<div class="block">Creates a new Values.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../core/Window.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,java.util.List)">Window</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&nbsp;constants,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../core/Window.Group.html" title="class in org.apache.calcite.rel.core">Window.Group</a>&gt;&nbsp;groups)</code></th>
<td class="colLast">
<div class="block">Creates a window relational expression.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../../core/package-summary.html">org.apache.calcite.rel.core</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../core/Aggregate.AggCallBinding.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.SqlAggFunction,java.util.List,int,boolean)">AggCallBinding</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;operands,
int&nbsp;groupCount,
boolean&nbsp;filter)</code></th>
<td class="colLast">
<div class="block">Creates an AggCallBinding</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.externalize">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../externalize/package-summary.html">org.apache.calcite.rel.externalize</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../externalize/package-summary.html">org.apache.calcite.rel.externalize</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelJson.</span><code><span class="memberNameLink"><a href="../../externalize/RelJson.html#toType(org.apache.calcite.rel.type.RelDataTypeFactory,java.lang.Object)">toType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.lang.Object&nbsp;o)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../externalize/package-summary.html">org.apache.calcite.rel.externalize</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.lang.Object</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelJson.</span><code><span class="memberNameLink"><a href="../../externalize/RelJson.html#toJson(org.apache.calcite.rel.type.RelDataType)">toJson</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;node)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.logical">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../logical/package-summary.html">org.apache.calcite.rel.logical</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../logical/package-summary.html">org.apache.calcite.rel.logical</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../logical/LogicalProject.html" title="class in org.apache.calcite.rel.logical">LogicalProject</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalProject.</span><code><span class="memberNameLink"><a href="../../logical/LogicalProject.html#copy(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../logical/LogicalTableFunctionScan.html" title="class in org.apache.calcite.rel.logical">LogicalTableFunctionScan</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalTableFunctionScan.</span><code><span class="memberNameLink"><a href="../../logical/LogicalTableFunctionScan.html#copy(org.apache.calcite.plan.RelTraitSet,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,org.apache.calcite.rel.type.RelDataType,java.util.Set)">copy</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../logical/LogicalMatch.html" title="class in org.apache.calcite.rel.logical">LogicalMatch</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalMatch.</span><code><span class="memberNameLink"><a href="../../logical/LogicalMatch.html#create(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">create</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalMatch.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../logical/LogicalMatch.html" title="class in org.apache.calcite.rel.logical">LogicalMatch</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalMatch.</span><code><span class="memberNameLink"><a href="../../logical/LogicalMatch.html#create(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">create</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalMatch.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../logical/LogicalProject.html" title="class in org.apache.calcite.rel.logical">LogicalProject</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalProject.</span><code><span class="memberNameLink"><a href="../../logical/LogicalProject.html#create(org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalProject, specifying row type rather than field names.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../logical/LogicalTableFunctionScan.html" title="class in org.apache.calcite.rel.logical">LogicalTableFunctionScan</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalTableFunctionScan.</span><code><span class="memberNameLink"><a href="../../logical/LogicalTableFunctionScan.html#create(org.apache.calcite.plan.RelOptCluster,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,org.apache.calcite.rel.type.RelDataType,java.util.Set)">create</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalTableFunctionScan.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../logical/LogicalValues.html" title="class in org.apache.calcite.rel.logical">LogicalValues</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalValues.</span><code><span class="memberNameLink"><a href="../../logical/LogicalValues.html#create(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList)">create</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalValues.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../logical/LogicalWindow.html" title="class in org.apache.calcite.rel.logical">LogicalWindow</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalWindow.</span><code><span class="memberNameLink"><a href="../../logical/LogicalWindow.html#create(org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,java.util.List)">create</a></span>&#8203;(<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&nbsp;constants,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../core/Window.Group.html" title="class in org.apache.calcite.rel.core">Window.Group</a>&gt;&nbsp;groups)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalWindow.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../logical/LogicalValues.html" title="class in org.apache.calcite.rel.logical">LogicalValues</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">LogicalValues.</span><code><span class="memberNameLink"><a href="../../logical/LogicalValues.html#createEmpty(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType)">createEmpty</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalValues that outputs no rows of a given row type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../logical/package-summary.html">org.apache.calcite.rel.logical</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../logical/LogicalMatch.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">LogicalMatch</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalMatch.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../logical/LogicalProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType)">LogicalProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalProject.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../logical/LogicalProject.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,int)">LogicalProject</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;flags)</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="../../logical/LogicalTableFunctionScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,org.apache.calcite.rel.type.RelDataType,java.util.Set)">LogicalTableFunctionScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</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="../../logical/LogicalTableFunctionScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,org.apache.calcite.rel.type.RelDataType,java.util.Set)">LogicalTableFunctionScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">
<div class="block">Creates a <code>LogicalTableFunctionScan</code>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../logical/LogicalValues.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList)">LogicalValues</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalValues.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../logical/LogicalValues.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList)">LogicalValues</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples)</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="../../logical/LogicalWindow.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.plan.RelTraitSet,org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.rel.type.RelDataType,java.util.List)">LogicalWindow</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../../../plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a>&nbsp;traitSet,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&nbsp;constants,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../core/Window.Group.html" title="class in org.apache.calcite.rel.core">Window.Group</a>&gt;&nbsp;groups)</code></th>
<td class="colLast">
<div class="block">Creates a LogicalWindow.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.metadata">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../metadata/package-summary.html">org.apache.calcite.rel.metadata</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../metadata/package-summary.html">org.apache.calcite.rel.metadata</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>java.lang.Double</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelMdSize.</span><code><span class="memberNameLink"><a href="../../metadata/RelMdSize.html#averageTypeValueSize(org.apache.calcite.rel.type.RelDataType)">averageTypeValueSize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Estimates the average size (in bytes) of a value of a type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelMdCollation.</span><code><span class="memberNameLink"><a href="../../metadata/RelMdCollation.html#match(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">match</a></span>&#8203;(<a href="../../metadata/RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Helper method to determine a
<a href="../../core/Match.html" title="class in org.apache.calcite.rel.core"><code>Match</code></a>'s collation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelMdSize.</span><code><span class="memberNameLink"><a href="../../metadata/RelMdSize.html#typeValueSize(org.apache.calcite.rel.type.RelDataType,java.lang.Comparable)">typeValueSize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.Comparable&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Estimates the average size (in bytes) of a value of a type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelMdCollation.</span><code><span class="memberNameLink"><a href="../../metadata/RelMdCollation.html#values(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList)">values</a></span>&#8203;(<a href="../../metadata/RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples)</code></th>
<td class="colLast">
<div class="block">Helper method to determine a
<a href="../../core/Values.html" title="class in org.apache.calcite.rel.core"><code>Values</code></a>'s collation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../RelDistribution.html" title="interface in org.apache.calcite.rel">RelDistribution</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelMdDistribution.</span><code><span class="memberNameLink"><a href="../../metadata/RelMdDistribution.html#values(org.apache.calcite.rel.type.RelDataType,com.google.common.collect.ImmutableList)">values</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
com.google.common.collect.ImmutableList&lt;com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tuples)</code></th>
<td class="colLast">
<div class="block">Helper method to determine a
<a href="../../core/Values.html" title="class in org.apache.calcite.rel.core"><code>Values</code></a>'s distribution.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.mutable">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../mutable/package-summary.html">org.apache.calcite.rel.mutable</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../mutable/package-summary.html">org.apache.calcite.rel.mutable</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableRel.</span><code><span class="memberNameLink"><a href="../../mutable/MutableRel.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../mutable/package-summary.html">org.apache.calcite.rel.mutable</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableRels.</span><code><span class="memberNameLink"><a href="../../mutable/MutableRels.html#createCastRel(org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.type.RelDataType,boolean)">createCastRel</a></span>&#8203;(<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;rel,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;castRowType,
boolean&nbsp;rename)</code></th>
<td class="colLast">
<div class="block">Equivalence to <a href="../../../plan/RelOptUtil.html#createCastRel(org.apache.calcite.rel.RelNode,org.apache.calcite.rel.type.RelDataType,boolean)"><code>RelOptUtil.createCastRel(org.apache.calcite.rel.RelNode, org.apache.calcite.rel.type.RelDataType, boolean)</code></a>
for <a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable"><code>MutableRel</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableCollect.html" title="class in org.apache.calcite.rel.mutable">MutableCollect</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableCollect.</span><code><span class="memberNameLink"><a href="../../mutable/MutableCollect.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,java.lang.String)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
java.lang.String&nbsp;fieldName)</code></th>
<td class="colLast">
<div class="block">Creates a MutableCollect.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableCorrelate.html" title="class in org.apache.calcite.rel.mutable">MutableCorrelate</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableCorrelate.</span><code><span class="memberNameLink"><a href="../../mutable/MutableCorrelate.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.core.CorrelationId,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.core.JoinRelType)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;left,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;right,
<a href="../../core/CorrelationId.html" title="class in org.apache.calcite.rel.core">CorrelationId</a>&nbsp;correlationId,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;requiredColumns,
<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType)</code></th>
<td class="colLast">
<div class="block">Creates a MutableCorrelate.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableIntersect.html" title="class in org.apache.calcite.rel.mutable">MutableIntersect</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableIntersect.</span><code><span class="memberNameLink"><a href="../../mutable/MutableIntersect.html#of(org.apache.calcite.rel.type.RelDataType,java.util.List,boolean)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
boolean&nbsp;all)</code></th>
<td class="colLast">
<div class="block">Creates a MutableIntersect.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableJoin.html" title="class in org.apache.calcite.rel.mutable">MutableJoin</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableJoin.</span><code><span class="memberNameLink"><a href="../../mutable/MutableJoin.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.core.JoinRelType,java.util.Set)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;left,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;right,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition,
<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
java.util.Set&lt;<a href="../../core/CorrelationId.html" title="class in org.apache.calcite.rel.core">CorrelationId</a>&gt;&nbsp;variablesStopped)</code></th>
<td class="colLast">
<div class="block">Creates a MutableJoin.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableMatch.html" title="class in org.apache.calcite.rel.mutable">MutableMatch</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableMatch.</span><code><span class="memberNameLink"><a href="../../mutable/MutableMatch.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">
<div class="block">Creates a MutableMatch.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableMinus.html" title="class in org.apache.calcite.rel.mutable">MutableMinus</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableMinus.</span><code><span class="memberNameLink"><a href="../../mutable/MutableMinus.html#of(org.apache.calcite.rel.type.RelDataType,java.util.List,boolean)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
boolean&nbsp;all)</code></th>
<td class="colLast">
<div class="block">Creates a MutableMinus.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableProject.html" title="class in org.apache.calcite.rel.mutable">MutableProject</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableProject.</span><code><span class="memberNameLink"><a href="../../mutable/MutableProject.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,java.util.List)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects)</code></th>
<td class="colLast">
<div class="block">Creates a MutableProject.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableTableFunctionScan.html" title="class in org.apache.calcite.rel.mutable">MutableTableFunctionScan</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableTableFunctionScan.</span><code><span class="memberNameLink"><a href="../../mutable/MutableTableFunctionScan.html#of(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,java.util.Set)">of</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">
<div class="block">Creates a MutableTableFunctionScan.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableTableModify.html" title="class in org.apache.calcite.rel.mutable">MutableTableModify</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableTableModify.</span><code><span class="memberNameLink"><a href="../../mutable/MutableTableModify.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.plan.RelOptTable,org.apache.calcite.prepare.Prepare.CatalogReader,org.apache.calcite.rel.core.TableModify.Operation,java.util.List,java.util.List,boolean)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;table,
<a href="../../../prepare/Prepare.CatalogReader.html" title="interface in org.apache.calcite.prepare">Prepare.CatalogReader</a>&nbsp;catalogReader,
<a href="../../core/TableModify.Operation.html" title="enum in org.apache.calcite.rel.core">TableModify.Operation</a>&nbsp;operation,
java.util.List&lt;java.lang.String&gt;&nbsp;updateColumnList,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;sourceExpressionList,
boolean&nbsp;flattened)</code></th>
<td class="colLast">
<div class="block">Creates a MutableTableModify.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableUncollect.html" title="class in org.apache.calcite.rel.mutable">MutableUncollect</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableUncollect.</span><code><span class="memberNameLink"><a href="../../mutable/MutableUncollect.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,boolean)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
boolean&nbsp;withOrdinality)</code></th>
<td class="colLast">
<div class="block">Creates a MutableUncollect.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableUnion.html" title="class in org.apache.calcite.rel.mutable">MutableUnion</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableUnion.</span><code><span class="memberNameLink"><a href="../../mutable/MutableUnion.html#of(org.apache.calcite.rel.type.RelDataType,java.util.List,boolean)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
boolean&nbsp;all)</code></th>
<td class="colLast">
<div class="block">Creates a MutableUnion.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../mutable/MutableWindow.html" title="class in org.apache.calcite.rel.mutable">MutableWindow</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MutableWindow.</span><code><span class="memberNameLink"><a href="../../mutable/MutableWindow.html#of(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,java.util.List,java.util.List)">of</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
java.util.List&lt;<a href="../../core/Window.Group.html" title="class in org.apache.calcite.rel.core">Window.Group</a>&gt;&nbsp;groups,
java.util.List&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&nbsp;constants)</code></th>
<td class="colLast">
<div class="block">Creates a MutableWindow.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../mutable/package-summary.html">org.apache.calcite.rel.mutable</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../mutable/Holder.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel)">Holder</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableAggregate.html#%3Cinit%3E(org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.util.ImmutableBitSet,java.util.List,java.util.List)">MutableAggregate</a></span>&#8203;(<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupSet,
java.util.List&lt;<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&gt;&nbsp;groupSets,
java.util.List&lt;<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&gt;&nbsp;aggCalls)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableBiRel.html#%3Cinit%3E(org.apache.calcite.rel.mutable.MutableRelType,org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel)">MutableBiRel</a></span>&#8203;(<a href="../../mutable/MutableRelType.html" title="enum in org.apache.calcite.rel.mutable">MutableRelType</a>&nbsp;type,
<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;left,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;right)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableCollect.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,java.lang.String)">MutableCollect</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
java.lang.String&nbsp;fieldName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableCorrelate.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.core.CorrelationId,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.core.JoinRelType)">MutableCorrelate</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;left,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;right,
<a href="../../core/CorrelationId.html" title="class in org.apache.calcite.rel.core">CorrelationId</a>&nbsp;correlationId,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;requiredColumns,
<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableIntersect.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,java.util.List,boolean)">MutableIntersect</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
boolean&nbsp;all)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableJoin.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.core.JoinRelType,java.util.Set)">MutableJoin</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;left,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;right,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition,
<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
java.util.Set&lt;<a href="../../core/CorrelationId.html" title="class in org.apache.calcite.rel.core">CorrelationId</a>&gt;&nbsp;variablesSet)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableMatch.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.rex.RexNode,boolean,boolean,java.util.Map,java.util.Map,org.apache.calcite.rex.RexNode,java.util.Map,boolean,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode)">MutableMatch</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pattern,
boolean&nbsp;strictStart,
boolean&nbsp;strictEnd,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;patternDefinitions,
java.util.Map&lt;java.lang.String,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;measures,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;after,
java.util.Map&lt;java.lang.String,&#8203;? extends java.util.SortedSet&lt;java.lang.String&gt;&gt;&nbsp;subsets,
boolean&nbsp;allRows,
<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;partitionKeys,
<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;orderKeys,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;interval)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableMinus.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,java.util.List,boolean)">MutableMinus</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
boolean&nbsp;all)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableMultiRel.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRelType,java.util.List)">MutableMultiRel</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRelType.html" title="enum in org.apache.calcite.rel.mutable">MutableRelType</a>&nbsp;type,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableProject.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,java.util.List)">MutableProject</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projects)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableRel.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRelType)">MutableRel</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRelType.html" title="enum in org.apache.calcite.rel.mutable">MutableRelType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableSetOp.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRelType,java.util.List,boolean)">MutableSetOp</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRelType.html" title="enum in org.apache.calcite.rel.mutable">MutableRelType</a>&nbsp;type,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
boolean&nbsp;all)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableSingleRel.html#%3Cinit%3E(org.apache.calcite.rel.mutable.MutableRelType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel)">MutableSingleRel</a></span>&#8203;(<a href="../../mutable/MutableRelType.html" title="enum in org.apache.calcite.rel.mutable">MutableRelType</a>&nbsp;type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableTableFunctionScan.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.rex.RexNode,java.lang.reflect.Type,java.util.Set)">MutableTableFunctionScan</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;rexCall,
java.lang.reflect.Type&nbsp;elementType,
java.util.Set&lt;<a href="../../metadata/RelColumnMapping.html" title="class in org.apache.calcite.rel.metadata">RelColumnMapping</a>&gt;&nbsp;columnMappings)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableTableModify.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,org.apache.calcite.plan.RelOptTable,org.apache.calcite.prepare.Prepare.CatalogReader,org.apache.calcite.rel.core.TableModify.Operation,java.util.List,java.util.List,boolean)">MutableTableModify</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;table,
<a href="../../../prepare/Prepare.CatalogReader.html" title="interface in org.apache.calcite.prepare">Prepare.CatalogReader</a>&nbsp;catalogReader,
<a href="../../core/TableModify.Operation.html" title="enum in org.apache.calcite.rel.core">TableModify.Operation</a>&nbsp;operation,
java.util.List&lt;java.lang.String&gt;&nbsp;updateColumnList,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;sourceExpressionList,
boolean&nbsp;flattened)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableUncollect.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,boolean)">MutableUncollect</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
boolean&nbsp;withOrdinality)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableUnion.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,org.apache.calcite.rel.type.RelDataType,java.util.List,boolean)">MutableUnion</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&gt;&nbsp;inputs,
boolean&nbsp;all)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../mutable/MutableWindow.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.mutable.MutableRel,java.util.List,java.util.List)">MutableWindow</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../mutable/MutableRel.html" title="class in org.apache.calcite.rel.mutable">MutableRel</a>&nbsp;input,
java.util.List&lt;<a href="../../core/Window.Group.html" title="class in org.apache.calcite.rel.core">Window.Group</a>&gt;&nbsp;groups,
java.util.List&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&nbsp;constants)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.rel2sql">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../rel2sql/package-summary.html">org.apache.calcite.rel.rel2sql</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../rel2sql/package-summary.html">org.apache.calcite.rel.rel2sql</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.Result.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.Result.html#neededType">neededType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../rel2sql/package-summary.html">org.apache.calcite.rel.rel2sql</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.AliasContext.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.AliasContext.html#aliases">aliases</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.Builder.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.Builder.html#aliases">aliases</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.Result.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.Result.html#aliases">aliases</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../rel2sql/package-summary.html">org.apache.calcite.rel.rel2sql</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelToSqlConverter.</span><code><span class="memberNameLink"><a href="../../rel2sql/RelToSqlConverter.html#addSelect(java.util.List,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">addSelect</a></span>&#8203;(java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;selectList,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.html#addSelect(java.util.List,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">addSelect</a></span>&#8203;(java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;selectList,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelToSqlConverter.</span><code><span class="memberNameLink"><a href="../../rel2sql/RelToSqlConverter.html#createAsFullOperands(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlNode,java.lang.String)">createAsFullOperands</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;leftOperand,
java.lang.String&nbsp;alias)</code></th>
<td class="colLast">
<div class="block">Creates operands for a full AS operator.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.html#isStar(java.util.List,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">isStar</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exps,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;projectRowType)</code></th>
<td class="colLast">
<div class="block">Returns whether a list of expressions projects all fields, in order,
from the input, with the same names.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../rel2sql/SqlImplementor.Result.html" title="class in org.apache.calcite.rel.rel2sql">SqlImplementor.Result</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.Result.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.Result.html#resetAlias(java.lang.String,org.apache.calcite.rel.type.RelDataType)">resetAlias</a></span>&#8203;(java.lang.String&nbsp;alias,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Sets the alias of the join or correlate just created.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../rel2sql/package-summary.html">org.apache.calcite.rel.rel2sql</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../rel2sql/SqlImplementor.Context.html" title="class in org.apache.calcite.rel.rel2sql">SqlImplementor.Context</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.html#aliasContext(java.util.Map,boolean)">aliasContext</a></span>&#8203;(java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases,
boolean&nbsp;qualified)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.html#collectAliases(com.google.common.collect.ImmutableMap.Builder,org.apache.calcite.sql.SqlNode,java.util.Iterator)">collectAliases</a></span>&#8203;(com.google.common.collect.ImmutableMap.Builder&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;builder,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
java.util.Iterator&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.html#collectAliases(com.google.common.collect.ImmutableMap.Builder,org.apache.calcite.sql.SqlNode,java.util.Iterator)">collectAliases</a></span>&#8203;(com.google.common.collect.ImmutableMap.Builder&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;builder,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
java.util.Iterator&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.html#computeFieldCount(java.util.Map)">computeFieldCount</a></span>&#8203;(java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../rel2sql/SqlImplementor.Result.html" title="class in org.apache.calcite.rel.rel2sql">SqlImplementor.Result</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlImplementor.</span><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.html#result(org.apache.calcite.sql.SqlNode,java.util.Collection,org.apache.calcite.rel.RelNode,java.util.Map)">result</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
java.util.Collection&lt;<a href="../../rel2sql/SqlImplementor.Clause.html" title="enum in org.apache.calcite.rel.rel2sql">SqlImplementor.Clause</a>&gt;&nbsp;clauses,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases)</code></th>
<td class="colLast">
<div class="block">Creates a result based on a single relational expression.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../rel2sql/package-summary.html">org.apache.calcite.rel.rel2sql</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../rel2sql/SqlImplementor.Result.html#%3Cinit%3E(org.apache.calcite.sql.SqlNode,java.util.Collection,java.lang.String,org.apache.calcite.rel.type.RelDataType,java.util.Map)">Result</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
java.util.Collection&lt;<a href="../../rel2sql/SqlImplementor.Clause.html" title="enum in org.apache.calcite.rel.rel2sql">SqlImplementor.Clause</a>&gt;&nbsp;clauses,
java.lang.String&nbsp;neededAlias,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;neededType,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../../rel2sql/package-summary.html">org.apache.calcite.rel.rel2sql</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../rel2sql/SqlImplementor.AliasContext.html#%3Cinit%3E(org.apache.calcite.sql.SqlDialect,java.util.Map,boolean)">AliasContext</a></span>&#8203;(<a href="../../../sql/SqlDialect.html" title="class in org.apache.calcite.sql">SqlDialect</a>&nbsp;dialect,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases,
boolean&nbsp;qualified)</code></th>
<td class="colLast">
<div class="block">Creates an AliasContext; use <a href="../../rel2sql/SqlImplementor.html#aliasContext(java.util.Map,boolean)"><code>SqlImplementor.aliasContext(Map, boolean)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.Builder.html#%3Cinit%3E(org.apache.calcite.rel.RelNode,java.util.List,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.rel2sql.SqlImplementor.Context,java.util.Map)">Builder</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
java.util.List&lt;<a href="../../rel2sql/SqlImplementor.Clause.html" title="enum in org.apache.calcite.rel.rel2sql">SqlImplementor.Clause</a>&gt;&nbsp;clauses,
<a href="../../../sql/SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a>&nbsp;select,
<a href="../../rel2sql/SqlImplementor.Context.html" title="class in org.apache.calcite.rel.rel2sql">SqlImplementor.Context</a>&nbsp;context,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.MatchRecognizeContext.html#%3Cinit%3E(org.apache.calcite.sql.SqlDialect,java.util.Map)">MatchRecognizeContext</a></span>&#8203;(<a href="../../../sql/SqlDialect.html" title="class in org.apache.calcite.sql">SqlDialect</a>&nbsp;dialect,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../rel2sql/SqlImplementor.Result.html#%3Cinit%3E(org.apache.calcite.sql.SqlNode,java.util.Collection,java.lang.String,org.apache.calcite.rel.type.RelDataType,java.util.Map)">Result</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
java.util.Collection&lt;<a href="../../rel2sql/SqlImplementor.Clause.html" title="enum in org.apache.calcite.rel.rel2sql">SqlImplementor.Clause</a>&gt;&nbsp;clauses,
java.lang.String&nbsp;neededAlias,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;neededType,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;aliases)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.rules">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../rules/package-summary.html">org.apache.calcite.rel.rules</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../rules/package-summary.html">org.apache.calcite.rel.rules</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.RexExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.RexExpander.html#int8">int8</a></span></code></th>
<td class="colLast">
<div class="block">Type for the internal representation of decimals.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.RexExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.RexExpander.html#real8">real8</a></span></code></th>
<td class="colLast">
<div class="block">Type for doubles.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MultiJoin.</span><code><span class="memberNameLink"><a href="../../rules/MultiJoin.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.BinaryArithmeticExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.BinaryArithmeticExpander.html#typeA">typeA</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.BinaryArithmeticExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.BinaryArithmeticExpander.html#typeB">typeB</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../rules/package-summary.html">org.apache.calcite.rel.rules</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MultiJoin.</span><code><span class="memberNameLink"><a href="../../rules/MultiJoin.html#deriveRowType()">deriveRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.CastArgAsDoubleExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.CastArgAsDoubleExpander.html#getArgType(org.apache.calcite.rex.RexCall,int)">getArgType</a></span>&#8203;(<a href="../../../rex/RexCall.html" title="class in org.apache.calcite.rex">RexCall</a>&nbsp;call,
int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>abstract <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.CastArgAsTypeExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.CastArgAsTypeExpander.html#getArgType(org.apache.calcite.rex.RexCall,int)">getArgType</a></span>&#8203;(<a href="../../../rex/RexCall.html" title="class in org.apache.calcite.rex">RexCall</a>&nbsp;call,
int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateReduceFunctionsRule.</span><code><span class="memberNameLink"><a href="../../rules/AggregateReduceFunctionsRule.html#getFieldType(org.apache.calcite.rel.RelNode,int)">getFieldType</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;relNode,
int&nbsp;i)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../rules/package-summary.html">org.apache.calcite.rel.rules</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateReduceFunctionsRule.</span><code><span class="memberNameLink"><a href="../../rules/AggregateReduceFunctionsRule.html#createAggregateCallWithBinding(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.SqlAggFunction,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.Aggregate,org.apache.calcite.rel.core.AggregateCall,int,int)">createAggregateCallWithBinding</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;aggFunction,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;operandType,
<a href="../../core/Aggregate.html" title="class in org.apache.calcite.rel.core">Aggregate</a>&nbsp;oldAggRel,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;oldCall,
int&nbsp;argOrdinal,
int&nbsp;filter)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../rex/RexProgram.html" title="class in org.apache.calcite.rex">RexProgram</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CalcRelSplitter.</span><code><span class="memberNameLink"><a href="../../rules/CalcRelSplitter.html#createProgramForLevel(int,int,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode%5B%5D,int%5B%5D,int%5B%5D,int%5B%5D,int,org.apache.calcite.rel.type.RelDataType)">createProgramForLevel</a></span>&#8203;(int&nbsp;level,
int&nbsp;levelCount,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>[]&nbsp;allExprs,
int[]&nbsp;exprLevels,
int[]&nbsp;inputExprOrdinals,
int[]&nbsp;projectExprOrdinals,
int&nbsp;conditionExprOrdinal,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType)</code></th>
<td class="colLast">
<div class="block">Creates a program containing the expressions for a given level.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.RexExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.RexExpander.html#encodeValue(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType)">encodeValue</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;value,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;decimalType)</code></th>
<td class="colLast">
<div class="block">Casts a decimal's integer representation to a decimal node.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.RexExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.RexExpander.html#encodeValue(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean)">encodeValue</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;value,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;decimalType,
boolean&nbsp;checkOverflow)</code></th>
<td class="colLast">
<div class="block">Casts a decimal's integer representation to a decimal node.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.RexExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.RexExpander.html#ensureType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">ensureType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node)</code></th>
<td class="colLast">
<div class="block">Ensures expression is interpreted as a specified type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReduceDecimalsRule.RexExpander.</span><code><span class="memberNameLink"><a href="../../rules/ReduceDecimalsRule.RexExpander.html#ensureType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean)">ensureType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node,
boolean&nbsp;matchNullability)</code></th>
<td class="colLast">
<div class="block">Ensures expression is interpreted as a specified type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateReduceFunctionsRule.</span><code><span class="memberNameLink"><a href="../../rules/AggregateReduceFunctionsRule.html#getSumAggregatedRexNodeWithBinding(org.apache.calcite.rel.core.Aggregate,org.apache.calcite.rel.core.AggregateCall,java.util.List,java.util.Map,org.apache.calcite.rel.type.RelDataType,int,int)">getSumAggregatedRexNodeWithBinding</a></span>&#8203;(<a href="../../core/Aggregate.html" title="class in org.apache.calcite.rel.core">Aggregate</a>&nbsp;oldAggRel,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;oldCall,
java.util.List&lt;<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&gt;&nbsp;newCalls,
java.util.Map&lt;<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;aggCallMapping,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;operandType,
int&nbsp;argOrdinal,
int&nbsp;filter)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ProjectRemoveRule.</span><code><span class="memberNameLink"><a href="../../rules/ProjectRemoveRule.html#isIdentity(java.util.List,org.apache.calcite.rel.type.RelDataType)">isIdentity</a></span>&#8203;(java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exps,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;childRowType)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateReduceFunctionsRule.</span><code><span class="memberNameLink"><a href="../../rules/AggregateReduceFunctionsRule.html#newCalcRel(org.apache.calcite.tools.RelBuilder,org.apache.calcite.rel.type.RelDataType,java.util.List)">newCalcRel</a></span>&#8203;(<a href="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a>&nbsp;relBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs)</code></th>
<td class="colLast">
<div class="block">Add a calc with the expressions to compute the original agg calls from the
decomposed ones.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../rules/package-summary.html">org.apache.calcite.rel.rules</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateReduceFunctionsRule.</span><code><span class="memberNameLink"><a href="../../rules/AggregateReduceFunctionsRule.html#getRegrCountRexNode(org.apache.calcite.rel.core.Aggregate,org.apache.calcite.rel.core.AggregateCall,java.util.List,java.util.Map,org.apache.calcite.util.ImmutableIntList,com.google.common.collect.ImmutableList,int)">getRegrCountRexNode</a></span>&#8203;(<a href="../../core/Aggregate.html" title="class in org.apache.calcite.rel.core">Aggregate</a>&nbsp;oldAggRel,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;oldCall,
java.util.List&lt;<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&gt;&nbsp;newCalls,
java.util.Map&lt;<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>,&#8203;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;aggCallMapping,
<a href="../../../util/ImmutableIntList.html" title="class in org.apache.calcite.util">ImmutableIntList</a>&nbsp;argOrdinals,
com.google.common.collect.ImmutableList&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;operandTypes,
int&nbsp;filterArg)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../rules/package-summary.html">org.apache.calcite.rel.rules</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../rules/MultiJoin.html#%3Cinit%3E(org.apache.calcite.plan.RelOptCluster,java.util.List,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean,java.util.List,java.util.List,java.util.List,com.google.common.collect.ImmutableMap,org.apache.calcite.rex.RexNode)">MultiJoin</a></span>&#8203;(<a href="../../../plan/RelOptCluster.html" title="class in org.apache.calcite.plan">RelOptCluster</a>&nbsp;cluster,
java.util.List&lt;<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&gt;&nbsp;inputs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;joinFilter,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
boolean&nbsp;isFullOuterJoin,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;outerJoinConditions,
java.util.List&lt;<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&gt;&nbsp;joinTypes,
java.util.List&lt;<a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&gt;&nbsp;projFields,
com.google.common.collect.ImmutableMap&lt;java.lang.Integer,&#8203;<a href="../../../util/ImmutableIntList.html" title="class in org.apache.calcite.util">ImmutableIntList</a>&gt;&nbsp;joinFieldRefCountsMap,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;postJoinFilter)</code></th>
<td class="colLast">
<div class="block">Constructs a MultiJoin.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../rules/JoinCommuteRule.VariableReplacer.html#%3Cinit%3E(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">VariableReplacer</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rel.type">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../package-summary.html">org.apache.calcite.rel.type</a></h3>
<table class="useSummary">
<caption><span>Classes in <a href="../package-summary.html">org.apache.calcite.rel.type</a> that implement <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../DynamicRecordType.html" title="class in org.apache.calcite.rel.type">DynamicRecordType</a></span></code></th>
<td class="colLast">
<div class="block">Specific type of RelRecordType that corresponds to a dynamic table,
where columns are created as they are requested.</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="../DynamicRecordTypeImpl.html" title="class in org.apache.calcite.rel.type">DynamicRecordTypeImpl</a></span></code></th>
<td class="colLast">
<div class="block">Implementation of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a> for a dynamic table.</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="../RelCrossType.html" title="class in org.apache.calcite.rel.type">RelCrossType</a></span></code></th>
<td class="colLast">
<div class="block">Type of the cartesian product of two or more sets of records.</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="../RelDataTypeFactoryImpl.JavaType.html" title="class in org.apache.calcite.rel.type">RelDataTypeFactoryImpl.JavaType</a></span></code></th>
<td class="colLast">
<div class="block">Type which is based upon a Java class.</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="../RelDataTypeImpl.html" title="class in org.apache.calcite.rel.type">RelDataTypeImpl</a></span></code></th>
<td class="colLast">
<div class="block">RelDataTypeImpl is an abstract base for implementations of
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>.</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="../RelRecordType.html" title="class in org.apache.calcite.rel.type">RelRecordType</a></span></code></th>
<td class="colLast">
<div class="block">RelRecordType represents a structured type having named fields.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../package-summary.html">org.apache.calcite.rel.type</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFieldImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFieldImpl.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../package-summary.html">org.apache.calcite.rel.type</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 com.google.common.collect.Interner&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#DATATYPE_CACHE">DATATYPE_CACHE</a></span></code></th>
<td class="colLast">
<div class="block">Global cache for RelDataType.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static com.google.common.cache.LoadingCache&lt;<a href="../RelDataTypeFactoryImpl.Key.html" title="class in org.apache.calcite.rel.type">RelDataTypeFactoryImpl.Key</a>,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#KEY2TYPE_CACHE">KEY2TYPE_CACHE</a></span></code></th>
<td class="colLast">
<div class="block">Global cache for Key to RelDataType.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>com.google.common.collect.ImmutableList&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelCrossType.</span><code><span class="memberNameLink"><a href="../RelCrossType.html#types">types</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.Builder.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.Builder.html#types">types</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.Key.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.Key.html#types">types</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.rel.type</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.Builder.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.Builder.html#build()">build</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates a struct type with the current contents of this builder.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.Builder.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.Builder.html#buildDynamic()">buildDynamic</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates a dynamic struct type with the current contents of this
builder.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#canonize(org.apache.calcite.rel.type.RelDataType)">canonize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Registers a type, or returns the existing type if it is already
registered.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#canonize(org.apache.calcite.rel.type.StructKind,java.util.List,java.util.List)">canonize</a></span>&#8203;(<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind,
java.util.List&lt;java.lang.String&gt;&nbsp;names,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#canonize(org.apache.calcite.rel.type.StructKind,java.util.List,java.util.List,boolean)">canonize</a></span>&#8203;(<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind,
java.util.List&lt;java.lang.String&gt;&nbsp;names,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Looks up a type using a temporary key, and if not present, creates
a permanent key and type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#copyRecordType(org.apache.calcite.rel.type.RelRecordType,boolean,boolean)">copyRecordType</a></span>&#8203;(<a href="../RelRecordType.html" title="class in org.apache.calcite.rel.type">RelRecordType</a>&nbsp;type,
boolean&nbsp;ignoreNullable,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#copySimpleType(org.apache.calcite.rel.type.RelDataType,boolean)">copySimpleType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#copyType(org.apache.calcite.rel.type.RelDataType)">copyType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Duplicates a type, making a deep copy.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#copyType(org.apache.calcite.rel.type.RelDataType)">copyType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createArrayType(org.apache.calcite.rel.type.RelDataType,long)">createArrayType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
long&nbsp;maxCardinality)</code></th>
<td class="colLast">
<div class="block">Creates an array type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createDecimalProduct(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createDecimalProduct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use
<a href="../RelDataTypeSystem.html#deriveDecimalMultiplyType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)"><code>RelDataTypeSystem.deriveDecimalMultiplyType(RelDataTypeFactory, RelDataType, RelDataType)</code></a></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createDecimalProduct(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createDecimalProduct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createDecimalQuotient(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createDecimalQuotient</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use
<a href="../RelDataTypeSystem.html#deriveDecimalDivideType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)"><code>RelDataTypeSystem.deriveDecimalDivideType(RelDataTypeFactory, RelDataType, RelDataType)</code></a></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createDecimalQuotient(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createDecimalQuotient</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createJavaType(java.lang.Class)">createJavaType</a></span>&#8203;(java.lang.Class&nbsp;clazz)</code></th>
<td class="colLast">
<div class="block">Creates a type that corresponds to a Java class.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createJavaType(java.lang.Class)">createJavaType</a></span>&#8203;(java.lang.Class&nbsp;clazz)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createJoinType(org.apache.calcite.rel.type.RelDataType...)">createJoinType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>...&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Creates a cartesian product type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createJoinType(org.apache.calcite.rel.type.RelDataType...)">createJoinType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>...&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createMapType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createMapType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType)</code></th>
<td class="colLast">
<div class="block">Creates a map type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createMultisetType(org.apache.calcite.rel.type.RelDataType,long)">createMultisetType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
long&nbsp;maxCardinality)</code></th>
<td class="colLast">
<div class="block">Creates a multiset type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createSqlIntervalType(org.apache.calcite.sql.SqlIntervalQualifier)">createSqlIntervalType</a></span>&#8203;(<a href="../../../sql/SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a>&nbsp;intervalQualifier)</code></th>
<td class="colLast">
<div class="block">Creates a SQL interval type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createSqlType(org.apache.calcite.sql.type.SqlTypeName)">createSqlType</a></span>&#8203;(<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName)</code></th>
<td class="colLast">
<div class="block">Creates a SQL type with no precision or scale.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createSqlType(org.apache.calcite.sql.type.SqlTypeName,int)">createSqlType</a></span>&#8203;(<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName,
int&nbsp;precision)</code></th>
<td class="colLast">
<div class="block">Creates a SQL type with length (precision) but no scale.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createSqlType(org.apache.calcite.sql.type.SqlTypeName,int,int)">createSqlType</a></span>&#8203;(<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName,
int&nbsp;precision,
int&nbsp;scale)</code></th>
<td class="colLast">
<div class="block">Creates a SQL type with precision and scale.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createStructType(java.util.List)">createStructType</a></span>&#8203;(java.util.List&lt;? extends java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fieldList)</code></th>
<td class="colLast">
<div class="block">Creates a type that represents a structured collection of fieldList,
obtaining the field information from a list of (name, type) pairs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createStructType(java.util.List,java.util.List)">createStructType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList)</code></th>
<td class="colLast">
<div class="block">Creates a type that represents a structured collection of fields.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createStructType(org.apache.calcite.rel.type.RelDataTypeFactory.FieldInfo)">createStructType</a></span>&#8203;(<a href="../RelDataTypeFactory.FieldInfo.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory.FieldInfo</a>&nbsp;fieldInfo)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createStructType(org.apache.calcite.rel.type.StructKind,java.util.List,java.util.List)">createStructType</a></span>&#8203;(<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList)</code></th>
<td class="colLast">
<div class="block">Creates a type that represents a structured collection of fields, given
lists of the names and types of the fields.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(java.util.List)">createStructType</a></span>&#8203;(java.util.List&lt;? extends java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fieldList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(java.util.List,boolean)">createStructType</a></span>&#8203;(java.util.List&lt;? extends java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fieldList,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(java.util.List,java.util.List)">createStructType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(org.apache.calcite.rel.type.RelDataTypeFactory.FieldInfo)">createStructType</a></span>&#8203;(<a href="../RelDataTypeFactory.FieldInfo.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory.FieldInfo</a>&nbsp;fieldInfo)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(org.apache.calcite.rel.type.StructKind,java.util.List,java.util.List)">createStructType</a></span>&#8203;(<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(org.apache.calcite.rel.type.StructKind,java.util.List,java.util.List,boolean)">createStructType</a></span>&#8203;(<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createTypeWithCharsetAndCollation(org.apache.calcite.rel.type.RelDataType,java.nio.charset.Charset,org.apache.calcite.sql.SqlCollation)">createTypeWithCharsetAndCollation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.nio.charset.Charset&nbsp;charset,
<a href="../../../sql/SqlCollation.html" title="class in org.apache.calcite.sql">SqlCollation</a>&nbsp;collation)</code></th>
<td class="colLast">
<div class="block">Creates a type that is the same as another type but with possibly
different charset or collation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createTypeWithNullability(org.apache.calcite.rel.type.RelDataType,boolean)">createTypeWithNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Creates a type that is the same as another type but with possibly
different nullability.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createTypeWithNullability(org.apache.calcite.rel.type.RelDataType,boolean)">createTypeWithNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createUnknownType()">createUnknownType</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates a SQL type that represents the "unknown" type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#decimalOf(org.apache.calcite.rel.type.RelDataType)">decimalOf</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Create a decimal type equivalent to the numeric <code>type</code>,
this is related to specific system implementation,
you can override this logic if it is required.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#decimalOf(org.apache.calcite.rel.type.RelDataType)">decimalOf</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#decimalOf2(org.apache.calcite.rel.type.RelDataType)">decimalOf2</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Create decimal type equivalent with the given <code>type</code> while sans nullability.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingTypeSystem.</span><code><span class="memberNameLink"><a href="../DelegatingTypeSystem.html#deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveAvgAggType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveAvgAggType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">
<div class="block">Returns the return type of a call to the <code>AVG</code>, <code>STDDEV</code> or
<code>VAR</code> aggregate functions, inferred from its argument type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystemImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystemImpl.html#deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveAvgAggType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingTypeSystem.</span><code><span class="memberNameLink"><a href="../DelegatingTypeSystem.html#deriveCovarType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveCovarType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg0Type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg1Type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveCovarType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveCovarType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg0Type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg1Type)</code></th>
<td class="colLast">
<div class="block">Returns the return type of a call to the <code>COVAR</code> aggregate function,
inferred from its argument types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystemImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystemImpl.html#deriveCovarType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveCovarType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg0Type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg1Type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>default <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveDecimalDivideType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveDecimalDivideType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a decimal division.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>default <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveDecimalModType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveDecimalModType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a decimal modulus operation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>default <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveDecimalMultiplyType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveDecimalMultiplyType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a decimal multiplication.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>default <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveDecimalPlusType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveDecimalPlusType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a decimal addition.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingTypeSystem.</span><code><span class="memberNameLink"><a href="../DelegatingTypeSystem.html#deriveFractionalRankType(org.apache.calcite.rel.type.RelDataTypeFactory)">deriveFractionalRankType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveFractionalRankType(org.apache.calcite.rel.type.RelDataTypeFactory)">deriveFractionalRankType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Returns the return type of the <code>CUME_DIST</code> and <code>PERCENT_RANK</code>
aggregate functions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystemImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystemImpl.html#deriveFractionalRankType(org.apache.calcite.rel.type.RelDataTypeFactory)">deriveFractionalRankType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingTypeSystem.</span><code><span class="memberNameLink"><a href="../DelegatingTypeSystem.html#deriveRankType(org.apache.calcite.rel.type.RelDataTypeFactory)">deriveRankType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveRankType(org.apache.calcite.rel.type.RelDataTypeFactory)">deriveRankType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Returns the return type of the <code>NTILE</code>, <code>RANK</code>,
<code>DENSE_RANK</code>, and <code>ROW_NUMBER</code> aggregate functions.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystemImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystemImpl.html#deriveRankType(org.apache.calcite.rel.type.RelDataTypeFactory)">deriveRankType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingTypeSystem.</span><code><span class="memberNameLink"><a href="../DelegatingTypeSystem.html#deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveSumType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveSumType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">
<div class="block">Returns the return type of a call to the <code>SUM</code> aggregate function,
inferred from its argument type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystemImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystemImpl.html#deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveSumType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataType.</span><code><span class="memberNameLink"><a href="../RelDataType.html#getComponentType()">getComponentType</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the component type if this type is a collection, otherwise null.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.JavaType.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.JavaType.html#getComponentType()">getComponentType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeImpl.html#getComponentType()">getComponentType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.Builder.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.Builder.html#getFieldType(int)">getFieldType</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Returns the type of a given field.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.FieldInfo.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.FieldInfo.html#getFieldType(int)">getFieldType</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Returns the type of a given field.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataType.</span><code><span class="memberNameLink"><a href="../RelDataType.html#getKeyType()">getKeyType</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the key type if this type is a map, otherwise null.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeImpl.html#getKeyType()">getKeyType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeField.</span><code><span class="memberNameLink"><a href="../RelDataTypeField.html#getType()">getType</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the type of this field.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFieldImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFieldImpl.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFieldImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFieldImpl.html#getValue()">getValue</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataType.</span><code><span class="memberNameLink"><a href="../RelDataType.html#getValueType()">getValueType</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the value type if this type is a map, otherwise null.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeImpl.html#getValueType()">getValueType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#keyToType(org.apache.calcite.rel.type.RelDataTypeFactoryImpl.Key)">keyToType</a></span>&#8203;(<a href="../RelDataTypeFactoryImpl.Key.html" title="class in org.apache.calcite.rel.type">RelDataTypeFactoryImpl.Key</a>&nbsp;key)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#leastRestrictive(java.util.List)">leastRestrictive</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Returns the most general of a set of types (that is, one type to which
they can all be cast), or null if conversion is not possible.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#leastRestrictive(java.util.List)">leastRestrictive</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#leastRestrictiveStructuredType(java.util.List)">leastRestrictiveStructuredType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFieldImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFieldImpl.html#setValue(org.apache.calcite.rel.type.RelDataType)">setValue</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;value)</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.rel.type</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataTypeFactory.Builder.html" title="class in org.apache.calcite.rel.type">RelDataTypeFactory.Builder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.Builder.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.Builder.html#add(java.lang.String,org.apache.calcite.rel.type.RelDataType)">add</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Adds a field with given name and type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataTypeFactory.FieldInfoBuilder.html" title="class in org.apache.calcite.rel.type">RelDataTypeFactory.FieldInfoBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.FieldInfoBuilder.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.FieldInfoBuilder.html#add(java.lang.String,org.apache.calcite.rel.type.RelDataType)">add</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#addFields(org.apache.calcite.rel.type.RelDataType,java.util.List)">addFields</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;fieldList)</code></th>
<td class="colLast">
<div class="block">Adds all fields in <code>type</code> to <code>fieldList</code>,
renumbering the fields (if necessary) to ensure that their index
matches their position in the list.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#canonize(org.apache.calcite.rel.type.RelDataType)">canonize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Registers a type, or returns the existing type if it is already
registered.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypePrecedenceList.</span><code><span class="memberNameLink"><a href="../RelDataTypePrecedenceList.html#compareTypePrecedence(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">compareTypePrecedence</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Compares the precedence of two types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypePrecedenceList.</span><code><span class="memberNameLink"><a href="../RelDataTypePrecedenceList.html#containsType(org.apache.calcite.rel.type.RelDataType)">containsType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Determines whether a type appears in this precedence list.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#copySimpleType(org.apache.calcite.rel.type.RelDataType,boolean)">copySimpleType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#copyType(org.apache.calcite.rel.type.RelDataType)">copyType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Duplicates a type, making a deep copy.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#copyType(org.apache.calcite.rel.type.RelDataType)">copyType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createArrayType(org.apache.calcite.rel.type.RelDataType,long)">createArrayType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
long&nbsp;maxCardinality)</code></th>
<td class="colLast">
<div class="block">Creates an array type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createDecimalProduct(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createDecimalProduct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use
<a href="../RelDataTypeSystem.html#deriveDecimalMultiplyType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)"><code>RelDataTypeSystem.deriveDecimalMultiplyType(RelDataTypeFactory, RelDataType, RelDataType)</code></a></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createDecimalProduct(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createDecimalProduct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createDecimalQuotient(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createDecimalQuotient</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use
<a href="../RelDataTypeSystem.html#deriveDecimalDivideType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)"><code>RelDataTypeSystem.deriveDecimalDivideType(RelDataTypeFactory, RelDataType, RelDataType)</code></a></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createDecimalQuotient(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createDecimalQuotient</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createJoinType(org.apache.calcite.rel.type.RelDataType...)">createJoinType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>...&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Creates a cartesian product type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createJoinType(org.apache.calcite.rel.type.RelDataType...)">createJoinType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>...&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createMapType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createMapType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType)</code></th>
<td class="colLast">
<div class="block">Creates a map type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createMultisetType(org.apache.calcite.rel.type.RelDataType,long)">createMultisetType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
long&nbsp;maxCardinality)</code></th>
<td class="colLast">
<div class="block">Creates a multiset type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createTypeWithCharsetAndCollation(org.apache.calcite.rel.type.RelDataType,java.nio.charset.Charset,org.apache.calcite.sql.SqlCollation)">createTypeWithCharsetAndCollation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.nio.charset.Charset&nbsp;charset,
<a href="../../../sql/SqlCollation.html" title="class in org.apache.calcite.sql">SqlCollation</a>&nbsp;collation)</code></th>
<td class="colLast">
<div class="block">Creates a type that is the same as another type but with possibly
different charset or collation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createTypeWithNullability(org.apache.calcite.rel.type.RelDataType,boolean)">createTypeWithNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Creates a type that is the same as another type but with possibly
different nullability.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createTypeWithNullability(org.apache.calcite.rel.type.RelDataType,boolean)">createTypeWithNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#decimalOf(org.apache.calcite.rel.type.RelDataType)">decimalOf</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Create a decimal type equivalent to the numeric <code>type</code>,
this is related to specific system implementation,
you can override this logic if it is required.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#decimalOf(org.apache.calcite.rel.type.RelDataType)">decimalOf</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#decimalOf2(org.apache.calcite.rel.type.RelDataType)">decimalOf2</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Create decimal type equivalent with the given <code>type</code> while sans nullability.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingTypeSystem.</span><code><span class="memberNameLink"><a href="../DelegatingTypeSystem.html#deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveAvgAggType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveAvgAggType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">
<div class="block">Returns the return type of a call to the <code>AVG</code>, <code>STDDEV</code> or
<code>VAR</code> aggregate functions, inferred from its argument type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystemImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystemImpl.html#deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveAvgAggType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingTypeSystem.</span><code><span class="memberNameLink"><a href="../DelegatingTypeSystem.html#deriveCovarType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveCovarType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg0Type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg1Type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveCovarType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveCovarType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg0Type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg1Type)</code></th>
<td class="colLast">
<div class="block">Returns the return type of a call to the <code>COVAR</code> aggregate function,
inferred from its argument types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystemImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystemImpl.html#deriveCovarType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveCovarType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg0Type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;arg1Type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>default <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveDecimalDivideType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveDecimalDivideType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a decimal division.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>default <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveDecimalModType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveDecimalModType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a decimal modulus operation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>default <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveDecimalMultiplyType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveDecimalMultiplyType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a decimal multiplication.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>default <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveDecimalPlusType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveDecimalPlusType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a decimal addition.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingTypeSystem.</span><code><span class="memberNameLink"><a href="../DelegatingTypeSystem.html#deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveSumType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveSumType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">
<div class="block">Returns the return type of a call to the <code>SUM</code> aggregate function,
inferred from its argument type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystemImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystemImpl.html#deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType)">deriveSumType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;argumentType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeImpl.html#extra(org.apache.calcite.rel.type.RelDataType)">extra</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Returns the "extra" field in a row type whose presence signals that
fields will come into existence just by asking for them.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeImpl.html#getFieldRecurse(java.util.List,org.apache.calcite.rel.type.RelDataType,int,java.lang.String,boolean)">getFieldRecurse</a></span>&#8203;(java.util.List&lt;<a href="../RelDataTypeImpl.Slot.html" title="class in org.apache.calcite.rel.type">RelDataTypeImpl.Slot</a>&gt;&nbsp;slots,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
int&nbsp;depth,
java.lang.String&nbsp;fieldName,
boolean&nbsp;caseSensitive)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#isJavaType(org.apache.calcite.rel.type.RelDataType)">isJavaType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelProtoDataType.html" title="interface in org.apache.calcite.rel.type">RelProtoDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeImpl.html#proto(org.apache.calcite.rel.type.RelDataType)">proto</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;protoType)</code></th>
<td class="colLast">
<div class="block">Returns an implementation of
<a href="../RelProtoDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelProtoDataType</code></a>
that copies a given type using the given type factory.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFieldImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFieldImpl.html#setValue(org.apache.calcite.rel.type.RelDataType)">setValue</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;value)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>default boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeSystem.</span><code><span class="memberNameLink"><a href="../RelDataTypeSystem.html#shouldUseDoubleMultiplication(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">shouldUseDoubleMultiplication</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Returns whether a decimal multiplication should be implemented by casting
arguments to double values.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#useDoubleMultiplication(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">useDoubleMultiplication</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use
<a href="../RelDataTypeSystem.html#shouldUseDoubleMultiplication(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)"><code>RelDataTypeSystem.shouldUseDoubleMultiplication(RelDataTypeFactory, RelDataType, RelDataType)</code></a></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#useDoubleMultiplication(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">useDoubleMultiplication</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../package-summary.html">org.apache.calcite.rel.type</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataTypeFactory.Builder.html" title="class in org.apache.calcite.rel.type">RelDataTypeFactory.Builder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.Builder.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.Builder.html#addAll(java.lang.Iterable)">addAll</a></span>&#8203;(java.lang.Iterable&lt;? extends java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fields)</code></th>
<td class="colLast">
<div class="block">Adds all fields in a collection.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataTypeFactory.FieldInfoBuilder.html" title="class in org.apache.calcite.rel.type">RelDataTypeFactory.FieldInfoBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.FieldInfoBuilder.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.FieldInfoBuilder.html#addAll(java.lang.Iterable)">addAll</a></span>&#8203;(java.lang.Iterable&lt;? extends java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fields)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createStructType(java.util.List)">createStructType</a></span>&#8203;(java.util.List&lt;? extends java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fieldList)</code></th>
<td class="colLast">
<div class="block">Creates a type that represents a structured collection of fieldList,
obtaining the field information from a list of (name, type) pairs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createStructType(java.util.List,java.util.List)">createStructType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList)</code></th>
<td class="colLast">
<div class="block">Creates a type that represents a structured collection of fields.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#createStructType(org.apache.calcite.rel.type.StructKind,java.util.List,java.util.List)">createStructType</a></span>&#8203;(<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList)</code></th>
<td class="colLast">
<div class="block">Creates a type that represents a structured collection of fields, given
lists of the names and types of the fields.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(java.util.List)">createStructType</a></span>&#8203;(java.util.List&lt;? extends java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fieldList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(java.util.List,boolean)">createStructType</a></span>&#8203;(java.util.List&lt;? extends java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fieldList,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(java.util.List,java.util.List)">createStructType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(org.apache.calcite.rel.type.StructKind,java.util.List,java.util.List)">createStructType</a></span>&#8203;(<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#createStructType(org.apache.calcite.rel.type.StructKind,java.util.List,java.util.List,boolean)">createStructType</a></span>&#8203;(<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#getFieldList(java.util.List)">getFieldList</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Returns a list of the fields in a list of types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#getTypeList(com.google.common.collect.ImmutableList,java.util.List)">getTypeList</a></span>&#8203;(com.google.common.collect.ImmutableList&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;inTypes,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;flatTypes)</code></th>
<td class="colLast">
<div class="block">Returns a list of all atomic types in a list.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#getTypeList(com.google.common.collect.ImmutableList,java.util.List)">getTypeList</a></span>&#8203;(com.google.common.collect.ImmutableList&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;inTypes,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;flatTypes)</code></th>
<td class="colLast">
<div class="block">Returns a list of all atomic types in a list.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactory.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactory.html#leastRestrictive(java.util.List)">leastRestrictive</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Returns the most general of a set of types (that is, one type to which
they can all be cast), or null if conversion is not possible.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#leastRestrictive(java.util.List)">leastRestrictive</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDataTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../RelDataTypeFactoryImpl.html#leastRestrictiveStructuredType(java.util.List)">leastRestrictiveStructuredType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</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.rel.type</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataTypeFieldImpl.html#%3Cinit%3E(java.lang.String,int,org.apache.calcite.rel.type.RelDataType)">RelDataTypeFieldImpl</a></span>&#8203;(java.lang.String&nbsp;name,
int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates a RelDataTypeFieldImpl.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../package-summary.html">org.apache.calcite.rel.type</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelCrossType.html#%3Cinit%3E(java.util.List,java.util.List)">RelCrossType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;fields)</code></th>
<td class="colLast">
<div class="block">Creates a cartesian product type.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.rex">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#inputRowType">inputRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgramBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#inputRowType">inputRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.ForwardRefFinder.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.ForwardRefFinder.html#inputRowType">inputRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#outputRowType">outputRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexExecutorImpl.DataContextInputGetter.</span><code><span class="memberNameLink"><a href="../../../rex/RexExecutorImpl.DataContextInputGetter.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCall.</span><code><span class="memberNameLink"><a href="../../../rex/RexCall.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCallBinding.RexCastCallBinding.</span><code><span class="memberNameLink"><a href="../../../rex/RexCallBinding.RexCastCallBinding.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexLiteral.</span><code><span class="memberNameLink"><a href="../../../rex/RexLiteral.html#type">type</a></span></code></th>
<td class="colLast">
<div class="block">The real type of this literal, as reported by <a href="../../../rex/RexLiteral.html#getType()"><code>RexLiteral.getType()</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexRangeRef.</span><code><span class="memberNameLink"><a href="../../../rex/RexRangeRef.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexVariable.</span><code><span class="memberNameLink"><a href="../../../rex/RexVariable.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexChecker.</span><code><span class="memberNameLink"><a href="../../../rex/RexChecker.html#inputTypeList">inputTypeList</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.Checker.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.Checker.html#internalExprTypeList">internalExprTypeList</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.FixNullabilityShuttle.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.FixNullabilityShuttle.html#typeList">typeList</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgramBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#computeOutputRowType()">computeOutputRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCopier.</span><code><span class="memberNameLink"><a href="../../../rex/RexCopier.html#copy(org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#createStructType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,java.util.List)">createStructType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs,
java.util.List&lt;java.lang.String&gt;&nbsp;names)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#createStructType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,java.util.List,org.apache.calcite.sql.validate.SqlValidatorUtil.Suggester)">createStructType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs,
java.util.List&lt;java.lang.String&gt;&nbsp;names,
<a href="../../../sql/validate/SqlValidatorUtil.Suggester.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorUtil.Suggester</a>&nbsp;suggester)</code></th>
<td class="colLast">
<div class="block">Creates a record type with specified field names.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#createStructType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">createStructType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs)</code></th>
<td class="colLast">
<div class="block">Creates a record type with anonymous field names.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#deriveReturnType(org.apache.calcite.sql.SqlOperator,java.util.List)">deriveReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;op,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs)</code></th>
<td class="colLast">
<div class="block">Derives the return type of a call to an operator.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#getInputRowType()">getInputRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the type of the input row to the program.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgramBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#getInputRowType()">getInputRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the rowtype of the input to the program</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCallBinding.</span><code><span class="memberNameLink"><a href="../../../rex/RexCallBinding.html#getOperandType(int)">getOperandType</a></span>&#8203;(int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCallBinding.RexCastCallBinding.</span><code><span class="memberNameLink"><a href="../../../rex/RexCallBinding.RexCastCallBinding.html#getOperandType(int)">getOperandType</a></span>&#8203;(int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#getOutputRowType()">getOutputRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the type of the output row from this program.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCall.</span><code><span class="memberNameLink"><a href="../../../rex/RexCall.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexFieldAccess.</span><code><span class="memberNameLink"><a href="../../../rex/RexFieldAccess.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexLiteral.</span><code><span class="memberNameLink"><a href="../../../rex/RexLiteral.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>abstract <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexNode.</span><code><span class="memberNameLink"><a href="../../../rex/RexNode.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexRangeRef.</span><code><span class="memberNameLink"><a href="../../../rex/RexRangeRef.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexVariable.</span><code><span class="memberNameLink"><a href="../../../rex/RexVariable.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#guessType(java.lang.Object)">guessType</a></span>&#8203;(java.lang.Object&nbsp;value)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#matchNullability(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">matchNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Ensures that a type's nullability matches a value's nullability.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexSubQuery.</span><code><span class="memberNameLink"><a href="../../../rex/RexSubQuery.html#type(org.apache.calcite.rel.RelNode,com.google.common.collect.ImmutableList)">type</a></span>&#8203;(<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#types(java.util.List)">types</a></span>&#8203;(java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes)</code></th>
<td class="colLast">
<div class="block">Transforms a list of expressions into a list of their types.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgramBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#add(java.util.List,java.util.List,org.apache.calcite.rex.RexLocalRef,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexShuttle,boolean)">add</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprList,
java.util.List&lt;<a href="../../../rex/RexLocalRef.html" title="class in org.apache.calcite.rex">RexLocalRef</a>&gt;&nbsp;projectRefList,
<a href="../../../rex/RexLocalRef.html" title="class in org.apache.calcite.rex">RexLocalRef</a>&nbsp;conditionRef,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType,
<a href="../../../rex/RexShuttle.html" title="class in org.apache.calcite.rex">RexShuttle</a>&nbsp;shuttle,
boolean&nbsp;updateRefs)</code></th>
<td class="colLast">
<div class="block">Adds a set of expressions, projections and filters, applying a shuttle
first.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#canAssignFrom(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">canAssignFrom</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Returns whether a value of <code>type2</code> can be assigned to a variable
of <code>type1</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#canRemoveCastFromLiteral(org.apache.calcite.rel.type.RelDataType,java.lang.Comparable,org.apache.calcite.sql.type.SqlTypeName)">canRemoveCastFromLiteral</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;toType,
java.lang.Comparable&nbsp;value,
<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;fromTypeName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.lang.Object</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#clean(java.lang.Object,org.apache.calcite.rel.type.RelDataType)">clean</a></span>&#8203;(java.lang.Object&nbsp;o,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Converts the type of a value to comply with
<a href="../../../rex/RexLiteral.html#valueMatchesType(java.lang.Comparable,org.apache.calcite.sql.type.SqlTypeName,boolean)"><code>RexLiteral.valueMatchesType(java.lang.Comparable, org.apache.calcite.sql.type.SqlTypeName, boolean)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexCall.html" title="class in org.apache.calcite.rex">RexCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCall.</span><code><span class="memberNameLink"><a href="../../../rex/RexCall.html#clone(org.apache.calcite.rel.type.RelDataType,java.util.List)">clone</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">
<div class="block">Creates a new call to the same operator with different operands.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexCall.html" title="class in org.apache.calcite.rex">RexCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexOver.</span><code><span class="memberNameLink"><a href="../../../rex/RexOver.html#clone(org.apache.calcite.rel.type.RelDataType,java.util.List)">clone</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexSubQuery.html" title="class in org.apache.calcite.rex">RexSubQuery</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexSubQuery.</span><code><span class="memberNameLink"><a href="../../../rex/RexSubQuery.html#clone(org.apache.calcite.rel.type.RelDataType,java.util.List)">clone</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#compatibleTypes(java.util.List,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.util.Litmus)">compatibleTypes</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Returns whether the type of an array of expressions is compatible with a
struct type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexExecutorImpl.</span><code><span class="memberNameLink"><a href="../../../rex/RexExecutorImpl.html#compile(org.apache.calcite.rex.RexBuilder,java.util.List,org.apache.calcite.adapter.enumerable.RexToLixTranslator.InputGetter,org.apache.calcite.rel.type.RelDataType)">compile</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;constExps,
<a href="../../../adapter/enumerable/RexToLixTranslator.InputGetter.html" title="interface in org.apache.calcite.adapter.enumerable">RexToLixTranslator.InputGetter</a>&nbsp;getter,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#containIdentity(java.util.List,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.util.Litmus)">containIdentity</a></span>&#8203;(java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Returns whether the leading edge of a given array of expressions is
wholly <a href="../../../rex/RexInputRef.html" title="class in org.apache.calcite.rex"><code>RexInputRef</code></a> objects with types corresponding to the
underlying datatype.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#containNoForwardRefs(java.util.List,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.util.Litmus)">containNoForwardRefs</a></span>&#8203;(java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Returns whether an array of expressions contains no forward references.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCopier.</span><code><span class="memberNameLink"><a href="../../../rex/RexCopier.html#copy(org.apache.calcite.rel.type.RelDataType)">copy</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../rex/RexProgram.html" title="class in org.apache.calcite.rex">RexProgram</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#create(org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.rex.RexNode,java.util.List,org.apache.calcite.rex.RexBuilder)">create</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projectExprs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;conditionExpr,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNames,
<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder)</code></th>
<td class="colLast">
<div class="block">Creates a program which calculates projections and filters rows based
upon a condition.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../rex/RexProgram.html" title="class in org.apache.calcite.rex">RexProgram</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#create(org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexBuilder)">create</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projectExprs,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;conditionExpr,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType,
<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder)</code></th>
<td class="colLast">
<div class="block">Creates a program which calculates projections and filters rows based
upon a condition.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../rex/RexProgramBuilder.html" title="class in org.apache.calcite.rex">RexProgramBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgramBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#create(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean)">create</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprList,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projectList,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType,
boolean&nbsp;normalize)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../rex/RexProgramBuilder.html" title="class in org.apache.calcite.rex">RexProgramBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgramBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#create(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean,boolean)">create</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprList,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projectList,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType,
boolean&nbsp;normalize,
boolean&nbsp;simplify_)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../rex/RexProgramBuilder.html" title="class in org.apache.calcite.rex">RexProgramBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgramBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#create(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean,org.apache.calcite.rex.RexSimplify)">create</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprList,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projectList,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType,
boolean&nbsp;normalize,
<a href="../../../rex/RexSimplify.html" title="class in org.apache.calcite.rex">RexSimplify</a>&nbsp;simplify)</code></th>
<td class="colLast">
<div class="block">Creates a program builder with the same contents as a program.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../rex/RexProgramBuilder.html" title="class in org.apache.calcite.rex">RexProgramBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgramBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#create(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List,org.apache.calcite.rex.RexLocalRef,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexShuttle,boolean)">create</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprList,
java.util.List&lt;<a href="../../../rex/RexLocalRef.html" title="class in org.apache.calcite.rex">RexLocalRef</a>&gt;&nbsp;projectRefList,
<a href="../../../rex/RexLocalRef.html" title="class in org.apache.calcite.rex">RexLocalRef</a>&nbsp;conditionRef,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType,
<a href="../../../rex/RexShuttle.html" title="class in org.apache.calcite.rex">RexShuttle</a>&nbsp;shuttle,
boolean&nbsp;updateRefs)</code></th>
<td class="colLast">
<div class="block">Creates a program builder with the same contents as a program, applying a
shuttle first.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../rex/RexProgram.html" title="class in org.apache.calcite.rex">RexProgram</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#createIdentity(org.apache.calcite.rel.type.RelDataType)">createIdentity</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates the identity program.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../rex/RexProgram.html" title="class in org.apache.calcite.rex">RexProgram</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexProgram.</span><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#createIdentity(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createIdentity</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType)</code></th>
<td class="colLast">
<div class="block">Creates a program that projects its input fields but with possibly
different names for the output fields.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#encodeIntervalOrDecimal(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean)">encodeIntervalOrDecimal</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;value,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;checkOverflow)</code></th>
<td class="colLast">
<div class="block">Casts a decimal's integer representation to a decimal node.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#ensureType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean)">ensureType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node,
boolean&nbsp;matchNullability)</code></th>
<td class="colLast">
<div class="block">Ensures expression is interpreted as a specified type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexCall.</span><code><span class="memberNameLink"><a href="../../../rex/RexCall.html#equalSansNullability(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">equalSansNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;a,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;b)</code></th>
<td class="colLast">
<div class="block">This is a poorman's
<a href="../../../sql/type/SqlTypeUtil.html#equalSansNullability(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)"><code>SqlTypeUtil.equalSansNullability(RelDataTypeFactory, RelDataType, RelDataType)</code></a></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#fixUp(org.apache.calcite.rex.RexBuilder,java.util.List,org.apache.calcite.rel.type.RelDataType)">fixUp</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;nodes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexLiteral.</span><code><span class="memberNameLink"><a href="../../../rex/RexLiteral.html#fromJdbcString(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.type.SqlTypeName,java.lang.String)">fromJdbcString</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName,
java.lang.String&nbsp;literal)</code></th>
<td class="colLast">
<div class="block">Converts a Jdbc string into a RexLiteral.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#generateCastExpressions(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,java.util.List)">generateCastExpressions</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;lhsRowType,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;rhsExps)</code></th>
<td class="colLast">
<div class="block">Generates a cast for a row type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#generateCastExpressions(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">generateCastExpressions</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;lhsRowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rhsRowType)</code></th>
<td class="colLast">
<div class="block">Generates a cast from one row type to another</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexExecutable.html" title="class in org.apache.calcite.rex">RexExecutable</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexExecutorImpl.</span><code><span class="memberNameLink"><a href="../../../rex/RexExecutorImpl.html#getExecutable(org.apache.calcite.rex.RexBuilder,java.util.List,org.apache.calcite.rel.type.RelDataType)">getExecutable</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exps,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates an <a href="../../../rex/RexExecutable.html" title="class in org.apache.calcite.rex"><code>RexExecutable</code></a> that allows to apply the
generated code during query processing (filter, projection).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#identityProjects(org.apache.calcite.rel.type.RelDataType)">identityProjects</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a list of <a href="../../../rex/RexInputRef.html" title="class in org.apache.calcite.rex"><code>RexInputRef</code></a> expressions,
projecting the fields of a given record type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#isIdentity(java.util.List,org.apache.calcite.rel.type.RelDataType)">isIdentity</a></span>&#8203;(java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exps,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">
<div class="block">Returns whether a list of expressions projects the incoming fields.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeAbstractCast(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">makeAbstractCast</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;exp)</code></th>
<td class="colLast">
<div class="block">Creates a call to the CAST operator.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeApproxLiteral(java.math.BigDecimal,org.apache.calcite.rel.type.RelDataType)">makeApproxLiteral</a></span>&#8203;(java.math.BigDecimal&nbsp;bd,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates an approximate numeric literal (double or float).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeCall(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlOperator,java.util.List)">makeCall</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;returnType,
<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;op,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs)</code></th>
<td class="colLast">
<div class="block">Creates a call with a list of arguments and a predetermined type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeCast(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">makeCast</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;exp)</code></th>
<td class="colLast">
<div class="block">Creates a call to the CAST operator.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeCast(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,boolean)">makeCast</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;exp,
boolean&nbsp;matchNullability)</code></th>
<td class="colLast">
<div class="block">Creates a call to the CAST operator, expanding if possible, and optionally
also preserving nullability.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeCastBooleanToExact(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">makeCastBooleanToExact</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;toType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;exp)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeCastExactToBoolean(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">makeCastExactToBoolean</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;toType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;exp)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeCastIntervalToExact(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">makeCastIntervalToExact</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;toType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;exp)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeCorrel(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.CorrelationId)">makeCorrel</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../core/CorrelationId.html" title="class in org.apache.calcite.rel.core">CorrelationId</a>&nbsp;id)</code></th>
<td class="colLast">
<div class="block">Creates an expression referencing a correlation variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexDynamicParam.html" title="class in org.apache.calcite.rex">RexDynamicParam</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeDynamicParam(org.apache.calcite.rel.type.RelDataType,int)">makeDynamicParam</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Creates a reference to a dynamic parameter</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeExactLiteral(java.math.BigDecimal,org.apache.calcite.rel.type.RelDataType)">makeExactLiteral</a></span>&#8203;(java.math.BigDecimal&nbsp;bd,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates a numeric literal.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeInputRef(org.apache.calcite.rel.type.RelDataType,int)">makeInputRef</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
int&nbsp;i)</code></th>
<td class="colLast">
<div class="block">Creates a reference to a given field of the input record.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeLiteral(java.lang.Comparable,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.type.SqlTypeName)">makeLiteral</a></span>&#8203;(java.lang.Comparable&nbsp;o,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName)</code></th>
<td class="colLast">
<div class="block">Internal method to create a call to a literal.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeLiteral(java.lang.Object,org.apache.calcite.rel.type.RelDataType,boolean)">makeLiteral</a></span>&#8203;(java.lang.Object&nbsp;value,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;allowCast)</code></th>
<td class="colLast">
<div class="block">Creates a literal of a given type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeNewInvocation(org.apache.calcite.rel.type.RelDataType,java.util.List)">makeNewInvocation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs)</code></th>
<td class="colLast">
<div class="block">Creates an invocation of the NEW operator.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeNullLiteral(org.apache.calcite.rel.type.RelDataType)">makeNullLiteral</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates a literal whose value is NULL, with a particular type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeOver(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlAggFunction,java.util.List,java.util.List,com.google.common.collect.ImmutableList,org.apache.calcite.rex.RexWindowBound,org.apache.calcite.rex.RexWindowBound,boolean,boolean,boolean,boolean)">makeOver</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;operator,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;partitionKeys,
com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexFieldCollation.html" title="class in org.apache.calcite.rex">RexFieldCollation</a>&gt;&nbsp;orderKeys,
<a href="../../../rex/RexWindowBound.html" title="class in org.apache.calcite.rex">RexWindowBound</a>&nbsp;lowerBound,
<a href="../../../rex/RexWindowBound.html" title="class in org.apache.calcite.rex">RexWindowBound</a>&nbsp;upperBound,
boolean&nbsp;physical,
boolean&nbsp;allowPartial,
boolean&nbsp;nullWhenCountZero,
boolean&nbsp;distinct)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeOver(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlAggFunction,java.util.List,java.util.List,com.google.common.collect.ImmutableList,org.apache.calcite.rex.RexWindowBound,org.apache.calcite.rex.RexWindowBound,boolean,boolean,boolean,boolean,boolean)">makeOver</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;operator,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;partitionKeys,
com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexFieldCollation.html" title="class in org.apache.calcite.rex">RexFieldCollation</a>&gt;&nbsp;orderKeys,
<a href="../../../rex/RexWindowBound.html" title="class in org.apache.calcite.rex">RexWindowBound</a>&nbsp;lowerBound,
<a href="../../../rex/RexWindowBound.html" title="class in org.apache.calcite.rex">RexWindowBound</a>&nbsp;upperBound,
boolean&nbsp;physical,
boolean&nbsp;allowPartial,
boolean&nbsp;nullWhenCountZero,
boolean&nbsp;distinct,
boolean&nbsp;ignoreNulls)</code></th>
<td class="colLast">
<div class="block">Creates a call to a windowed agg.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexPatternFieldRef.html" title="class in org.apache.calcite.rex">RexPatternFieldRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makePatternFieldRef(java.lang.String,org.apache.calcite.rel.type.RelDataType,int)">makePatternFieldRef</a></span>&#8203;(java.lang.String&nbsp;alpha,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
int&nbsp;i)</code></th>
<td class="colLast">
<div class="block">Creates a reference to a given field of the pattern.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexRangeRef.html" title="class in org.apache.calcite.rex">RexRangeRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeRangeReference(org.apache.calcite.rel.type.RelDataType,int,boolean)">makeRangeReference</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
int&nbsp;offset,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Creates a reference to all the fields in the row.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeReinterpretCast(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">makeReinterpretCast</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;exp,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;checkOverflow)</code></th>
<td class="colLast">
<div class="block">Makes a reinterpret cast.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#makeZeroLiteral(org.apache.calcite.rel.type.RelDataType)">makeZeroLiteral</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates a literal of the default value for the given type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#matchNullability(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">matchNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Ensures that a type's nullability matches a value's nullability.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexInputRef.</span><code><span class="memberNameLink"><a href="../../../rex/RexInputRef.html#of(int,org.apache.calcite.rel.type.RelDataType)">of</a></span>&#8203;(int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a reference to a given field in a row type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../rex/RexPatternFieldRef.html" title="class in org.apache.calcite.rex">RexPatternFieldRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexPatternFieldRef.</span><code><span class="memberNameLink"><a href="../../../rex/RexPatternFieldRef.html#of(java.lang.String,int,org.apache.calcite.rel.type.RelDataType)">of</a></span>&#8203;(java.lang.String&nbsp;alpha,
int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../rex/RexTableInputRef.html" title="class in org.apache.calcite.rex">RexTableInputRef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexTableInputRef.</span><code><span class="memberNameLink"><a href="../../../rex/RexTableInputRef.html#of(org.apache.calcite.rex.RexTableInputRef.RelTableRef,int,org.apache.calcite.rel.type.RelDataType)">of</a></span>&#8203;(<a href="../../../rex/RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&nbsp;tableRef,
int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexSimplify.</span><code><span class="memberNameLink"><a href="../../../rex/RexSimplify.html#sameTypeOrNarrowsNullability(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">sameTypeOrNarrowsNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;oldType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;newType)</code></th>
<td class="colLast">
<div class="block">Return if the new type is the same and at most narrows the nullability.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../../../rex/RexDigestIncludeType.html" title="enum in org.apache.calcite.rex">RexDigestIncludeType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexLiteral.</span><code><span class="memberNameLink"><a href="../../../rex/RexLiteral.html#shouldIncludeType(java.lang.Comparable,org.apache.calcite.rel.type.RelDataType)">shouldIncludeType</a></span>&#8203;(java.lang.Comparable&nbsp;value,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Computes if data type can be omitted from the digset.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexSimplify.</span><code><span class="memberNameLink"><a href="../../../rex/RexSimplify.html#simplifyBooleanCase(org.apache.calcite.rex.RexBuilder,java.util.List,org.apache.calcite.rex.RexUnknownAs,org.apache.calcite.rel.type.RelDataType)">simplifyBooleanCase</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
java.util.List&lt;<a href="../../../rex/RexSimplify.CaseBranch.html" title="class in org.apache.calcite.rex">RexSimplify.CaseBranch</a>&gt;&nbsp;inputBranches,
<a href="../../../rex/RexUnknownAs.html" title="enum in org.apache.calcite.rex">RexUnknownAs</a>&nbsp;unknownAs,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;branchType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexSimplify.</span><code><span class="memberNameLink"><a href="../../../rex/RexSimplify.html#simplifyBooleanCaseGeneric(org.apache.calcite.rex.RexBuilder,java.util.List,org.apache.calcite.rel.type.RelDataType)">simplifyBooleanCaseGeneric</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
java.util.List&lt;<a href="../../../rex/RexSimplify.CaseBranch.html" title="class in org.apache.calcite.rex">RexSimplify.CaseBranch</a>&gt;&nbsp;branches,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputType)</code></th>
<td class="colLast">
<div class="block">Generic boolean case simplification.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexLiteral.</span><code><span class="memberNameLink"><a href="../../../rex/RexLiteral.html#toJavaString(java.lang.Comparable,org.apache.calcite.sql.type.SqlTypeName,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexDigestIncludeType)">toJavaString</a></span>&#8203;(java.lang.Comparable&nbsp;value,
<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexDigestIncludeType.html" title="enum in org.apache.calcite.rex">RexDigestIncludeType</a>&nbsp;includeType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.lang.Comparable</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexBuilder.</span><code><span class="memberNameLink"><a href="../../../rex/RexBuilder.html#zeroValue(org.apache.calcite.rel.type.RelDataType)">zeroValue</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 java.util.List&lt;<a href="../RelDataTypeFamily.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFamily</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RexUtil.</span><code><span class="memberNameLink"><a href="../../../rex/RexUtil.html#families(java.util.List)">families</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../rex/RexProgram.Checker.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.rel.RelNode.Context,org.apache.calcite.util.Litmus)">Checker</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;internalExprTypeList,
<a href="../../RelNode.Context.html" title="interface in org.apache.calcite.rel">RelNode.Context</a>&nbsp;context,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Creates a Checker.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexExecutorImpl.DataContextInputGetter.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeFactory)">DataContextInputGetter</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexUtil.ForwardRefFinder.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType)">ForwardRefFinder</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexCall.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlOperator,java.util.List)">RexCall</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;op,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexCallBinding.RexCastCallBinding.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.SqlOperator,java.util.List,org.apache.calcite.rel.type.RelDataType,java.util.List)">RexCastCallBinding</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;sqlOperator,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&gt;&nbsp;inputCollations)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexChecker.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.RelNode.Context,org.apache.calcite.util.Litmus)">RexChecker</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../RelNode.Context.html" title="interface in org.apache.calcite.rel">RelNode.Context</a>&nbsp;context,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Creates a RexChecker with a given input row type.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexCorrelVariable.html#%3Cinit%3E(org.apache.calcite.rel.core.CorrelationId,org.apache.calcite.rel.type.RelDataType)">RexCorrelVariable</a></span>&#8203;(<a href="../../core/CorrelationId.html" title="class in org.apache.calcite.rel.core">CorrelationId</a>&nbsp;id,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexDynamicParam.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,int)">RexDynamicParam</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Creates a dynamic parameter.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexInputRef.html#%3Cinit%3E(int,org.apache.calcite.rel.type.RelDataType)">RexInputRef</a></span>&#8203;(int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates an input variable.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexLiteral.html#%3Cinit%3E(java.lang.Comparable,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.type.SqlTypeName)">RexLiteral</a></span>&#8203;(java.lang.Comparable&nbsp;value,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName)</code></th>
<td class="colLast">
<div class="block">Creates a <code>RexLiteral</code>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexLocalRef.html#%3Cinit%3E(int,org.apache.calcite.rel.type.RelDataType)">RexLocalRef</a></span>&#8203;(int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates a local variable.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexOver.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlAggFunction,java.util.List,org.apache.calcite.rex.RexWindow,boolean,boolean)">RexOver</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlAggFunction.html" title="class in org.apache.calcite.sql">SqlAggFunction</a>&nbsp;op,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands,
<a href="../../../rex/RexWindow.html" title="class in org.apache.calcite.rex">RexWindow</a>&nbsp;window,
boolean&nbsp;distinct,
boolean&nbsp;ignoreNulls)</code></th>
<td class="colLast">
<div class="block">Creates a RexOver.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexPatternFieldRef.html#%3Cinit%3E(java.lang.String,int,org.apache.calcite.rel.type.RelDataType)">RexPatternFieldRef</a></span>&#8203;(java.lang.String&nbsp;alpha,
int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexProgram.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List,org.apache.calcite.rex.RexLocalRef,org.apache.calcite.rel.type.RelDataType)">RexProgram</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprs,
java.util.List&lt;<a href="../../../rex/RexLocalRef.html" title="class in org.apache.calcite.rex">RexLocalRef</a>&gt;&nbsp;projects,
<a href="../../../rex/RexLocalRef.html" title="class in org.apache.calcite.rex">RexLocalRef</a>&nbsp;condition,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType)</code></th>
<td class="colLast">
<div class="block">Creates a program.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexBuilder)">RexProgramBuilder</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder)</code></th>
<td class="colLast">
<div class="block">Creates a program-builder that will not simplify.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexSimplify)">RexProgramBuilder</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../../../rex/RexSimplify.html" title="class in org.apache.calcite.rex">RexSimplify</a>&nbsp;simplify)</code></th>
<td class="colLast">
<div class="block">Creates a program-builder.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexProgramBuilder.html#%3Cinit%3E(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,java.util.List,java.lang.Iterable,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType,boolean,org.apache.calcite.rex.RexSimplify)">RexProgramBuilder</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;exprList,
java.lang.Iterable&lt;? extends <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projectList,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outputRowType,
boolean&nbsp;normalize,
<a href="../../../rex/RexSimplify.html" title="class in org.apache.calcite.rex">RexSimplify</a>&nbsp;simplify)</code></th>
<td class="colLast">
<div class="block">Creates a program builder with the same contents as a program.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexRangeRef.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,int)">RexRangeRef</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rangeType,
int&nbsp;offset)</code></th>
<td class="colLast">
<div class="block">Creates a range reference.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexSlot.html#%3Cinit%3E(java.lang.String,int,org.apache.calcite.rel.type.RelDataType)">RexSlot</a></span>&#8203;(java.lang.String&nbsp;name,
int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates a slot.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexSubQuery.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlOperator,com.google.common.collect.ImmutableList,org.apache.calcite.rel.RelNode)">RexSubQuery</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;op,
com.google.common.collect.ImmutableList&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;operands,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexTableInputRef.html#%3Cinit%3E(org.apache.calcite.rex.RexTableInputRef.RelTableRef,int,org.apache.calcite.rel.type.RelDataType)">RexTableInputRef</a></span>&#8203;(<a href="../../../rex/RexTableInputRef.RelTableRef.html" title="class in org.apache.calcite.rex">RexTableInputRef.RelTableRef</a>&nbsp;tableRef,
int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexVariable.html#%3Cinit%3E(java.lang.String,org.apache.calcite.rel.type.RelDataType)">RexVariable</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../../../rex/package-summary.html">org.apache.calcite.rex</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../rex/RexProgram.Checker.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.rel.RelNode.Context,org.apache.calcite.util.Litmus)">Checker</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;internalExprTypeList,
<a href="../../RelNode.Context.html" title="interface in org.apache.calcite.rel">RelNode.Context</a>&nbsp;context,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Creates a Checker.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexUtil.FixNullabilityShuttle.html#%3Cinit%3E(org.apache.calcite.rex.RexBuilder,java.util.List)">FixNullabilityShuttle</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../rex/RexChecker.html#%3Cinit%3E(java.util.List,org.apache.calcite.rel.RelNode.Context,org.apache.calcite.util.Litmus)">RexChecker</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;inputTypeList,
<a href="../../RelNode.Context.html" title="interface in org.apache.calcite.rel">RelNode.Context</a>&nbsp;context,
<a href="../../../util/Litmus.html" title="interface in org.apache.calcite.util">Litmus</a>&nbsp;litmus)</code></th>
<td class="colLast">
<div class="block">Creates a RexChecker with a given set of input fields.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.schema">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../schema/package-summary.html">org.apache.calcite.schema</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../schema/package-summary.html">org.apache.calcite.schema</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateFunction.</span><code><span class="memberNameLink"><a href="../../../schema/AggregateFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Returns the return type of this function, constructed using the given
type factory.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ScalarFunction.</span><code><span class="memberNameLink"><a href="../../../schema/ScalarFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Returns the return type of this function, constructed using the given
type factory.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Table.</span><code><span class="memberNameLink"><a href="../../../schema/Table.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Returns this table's row type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableFunction.</span><code><span class="memberNameLink"><a href="../../../schema/TableFunction.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.Object&gt;&nbsp;arguments)</code></th>
<td class="colLast">
<div class="block">Returns the record type of the table yielded by this function when
applied to given arguments.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FunctionParameter.</span><code><span class="memberNameLink"><a href="../../../schema/FunctionParameter.html#getType(org.apache.calcite.rel.type.RelDataTypeFactory)">getType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Returns the type of this parameter.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Member.</span><code><span class="memberNameLink"><a href="../../../schema/Member.html#getType()">getType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the type of this function's result.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../schema/package-summary.html">org.apache.calcite.schema</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Schemas.</span><code><span class="memberNameLink"><a href="../../../schema/Schemas.html#canConvert(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">canConvert</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;fromType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;toType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../schema/TableFactory.html" title="type parameter in TableFactory">T</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableFactory.</span><code><span class="memberNameLink"><a href="../../../schema/TableFactory.html#create(org.apache.calcite.schema.SchemaPlus,java.lang.String,java.util.Map,org.apache.calcite.rel.type.RelDataType)">create</a></span>&#8203;(<a href="../../../schema/SchemaPlus.html" title="interface in org.apache.calcite.schema">SchemaPlus</a>&nbsp;schema,
java.lang.String&nbsp;name,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;operand,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a Table.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ModifiableView.</span><code><span class="memberNameLink"><a href="../../../schema/ModifiableView.html#getConstraint(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType)">getConstraint</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;tableRowType)</code></th>
<td class="colLast">
<div class="block">Returns a constraint that each candidate row must satisfy.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>,&#8203;java.util.List&lt;java.lang.String&gt;&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CustomColumnResolvingTable.</span><code><span class="memberNameLink"><a href="../../../schema/CustomColumnResolvingTable.html#resolveColumn(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">resolveColumn</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.String&gt;&nbsp;names)</code></th>
<td class="colLast">
<div class="block">Resolve a column based on the name components.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../schema/package-summary.html">org.apache.calcite.schema</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Schemas.</span><code><span class="memberNameLink"><a href="../../../schema/Schemas.html#matches(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.schema.Function,java.util.List)">matches</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../schema/Function.html" title="interface in org.apache.calcite.schema">Function</a>&nbsp;member,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argumentTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../jdbc/CalciteSchema.FunctionEntry.html" title="class in org.apache.calcite.jdbc">CalciteSchema.FunctionEntry</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Schemas.</span><code><span class="memberNameLink"><a href="../../../schema/Schemas.html#resolve(org.apache.calcite.rel.type.RelDataTypeFactory,java.lang.String,java.util.Collection,java.util.List)">resolve</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.lang.String&nbsp;name,
java.util.Collection&lt;<a href="../../../jdbc/CalciteSchema.FunctionEntry.html" title="class in org.apache.calcite.jdbc">CalciteSchema.FunctionEntry</a>&gt;&nbsp;functionEntries,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argumentTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.schema.impl">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../schema/impl/package-summary.html">org.apache.calcite.schema.impl</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../schema/impl/package-summary.html">org.apache.calcite.schema.impl</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ListTransientTable.</span><code><span class="memberNameLink"><a href="../../../schema/impl/ListTransientTable.html#protoRowType">protoRowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../schema/impl/package-summary.html">org.apache.calcite.schema.impl</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregateFunctionImpl.</span><code><span class="memberNameLink"><a href="../../../schema/impl/AggregateFunctionImpl.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ScalarFunctionImpl.</span><code><span class="memberNameLink"><a href="../../../schema/impl/ScalarFunctionImpl.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ScalarFunctionImpl.</span><code><span class="memberNameLink"><a href="../../../schema/impl/ScalarFunctionImpl.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.SqlOperatorBinding)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ListTransientTable.</span><code><span class="memberNameLink"><a href="../../../schema/impl/ListTransientTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StarTable.</span><code><span class="memberNameLink"><a href="../../../schema/impl/StarTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableFunctionImpl.</span><code><span class="memberNameLink"><a href="../../../schema/impl/TableFunctionImpl.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.Object&gt;&nbsp;arguments)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ViewTable.</span><code><span class="memberNameLink"><a href="../../../schema/impl/ViewTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../schema/impl/package-summary.html">org.apache.calcite.schema.impl</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ViewTable.</span><code><span class="memberNameLink"><a href="../../../schema/impl/ViewTable.html#expandView(org.apache.calcite.plan.RelOptTable.ToRelContext,org.apache.calcite.rel.type.RelDataType,java.lang.String)">expandView</a></span>&#8203;(<a href="../../../plan/RelOptTable.ToRelContext.html" title="interface in org.apache.calcite.plan">RelOptTable.ToRelContext</a>&nbsp;context,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;queryString)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ModifiableViewTable.</span><code><span class="memberNameLink"><a href="../../../schema/impl/ModifiableViewTable.html#getConstraint(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType)">getConstraint</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;tableRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ModifiableViewTable.ModifiableViewTableInitializerExpressionFactory.</span><code><span class="memberNameLink"><a href="../../../schema/impl/ModifiableViewTable.ModifiableViewTableInitializerExpressionFactory.html#newAttributeInitializer(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlFunction,int,java.util.List,org.apache.calcite.sql2rel.InitializerContext)">newAttributeInitializer</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;constructor,
int&nbsp;iAttribute,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;constructorArgs,
<a href="../../../sql2rel/InitializerContext.html" title="interface in org.apache.calcite.sql2rel">InitializerContext</a>&nbsp;context)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../schema/impl/package-summary.html">org.apache.calcite.schema.impl</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../schema/impl/ListTransientTable.html#%3Cinit%3E(java.lang.String,org.apache.calcite.rel.type.RelDataType)">ListTransientTable</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql/package-summary.html">org.apache.calcite.sql</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/package-summary.html">org.apache.calcite.sql</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlFunction.html#paramTypes">paramTypes</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ExplicitOperatorBinding.</span><code><span class="memberNameLink"><a href="../../../sql/ExplicitOperatorBinding.html#types">types</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/package-summary.html">org.apache.calcite.sql</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlBinaryOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlBinaryOperator.html#adjustType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">adjustType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperator.html#adjustType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">adjustType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Validates and determines coercibility and resulting collation name of
binary operator if needed.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlPostfixOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlPostfixOperator.html#adjustType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">adjustType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlPrefixOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlPrefixOperator.html#adjustType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">adjustType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUtil.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUtil.html#bestMatch(java.util.List,int,org.apache.calcite.rel.type.RelDataTypePrecedenceList)">bestMatch</a></span>&#8203;(java.util.List&lt;<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&gt;&nbsp;sqlFunctions,
int&nbsp;i,
<a href="../RelDataTypePrecedenceList.html" title="interface in org.apache.calcite.rel.type">RelDataTypePrecedenceList</a>&nbsp;precList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCollectionTypeNameSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlCollectionTypeNameSpec.html#createCollectionType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeFactory)">createCollectionType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Create collection data type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUtil.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUtil.html#createNlsStringType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.util.NlsString)">createNlsStringType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../util/NlsString.html" title="class in org.apache.calcite.util">NlsString</a>&nbsp;str)</code></th>
<td class="colLast">
<div class="block">Creates the type of an <a href="../../../util/NlsString.html" title="class in org.apache.calcite.util"><code>NlsString</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAbstractDateTimeLiteral.</span><code><span class="memberNameLink"><a href="../../../sql/SqlAbstractDateTimeLiteral.html#createSqlType(org.apache.calcite.rel.type.RelDataTypeFactory)">createSqlType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDateLiteral.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDateLiteral.html#createSqlType(org.apache.calcite.rel.type.RelDataTypeFactory)">createSqlType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlLiteral.</span><code><span class="memberNameLink"><a href="../../../sql/SqlLiteral.html#createSqlType(org.apache.calcite.rel.type.RelDataTypeFactory)">createSqlType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlNumericLiteral.</span><code><span class="memberNameLink"><a href="../../../sql/SqlNumericLiteral.html#createSqlType(org.apache.calcite.rel.type.RelDataTypeFactory)">createSqlType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAsOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlAsOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlBasicTypeNameSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlBasicTypeNameSpec.html#deriveType(org.apache.calcite.sql.validate.SqlValidator)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlBinaryOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlBinaryOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCollectionTypeNameSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlCollectionTypeNameSpec.html#deriveType(org.apache.calcite.sql.validate.SqlValidator)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDataTypeSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDataTypeSpec.html#deriveType(org.apache.calcite.sql.validate.SqlValidator)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator)</code></th>
<td class="colLast">
<div class="block">Converts this type specification to a <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDataTypeSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDataTypeSpec.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,boolean)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Converts this type specification to a <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlFilterOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlFilterOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlFunction.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlFunction.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,boolean)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
boolean&nbsp;convertRowArgToColumnList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlInternalOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlInternalOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJdbcFunctionCall.</span><code><span class="memberNameLink"><a href="../../../sql/SqlJdbcFunctionCall.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call)</code></th>
<td class="colLast">
<div class="block">Derives the type of a call to this operator.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOverOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOverOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlRowTypeNameSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlRowTypeNameSpec.html#deriveType(org.apache.calcite.sql.validate.SqlValidator)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;sqlValidator)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>abstract <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeNameSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlTypeNameSpec.html#deriveType(org.apache.calcite.sql.validate.SqlValidator)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator)</code></th>
<td class="colLast">
<div class="block">Derive type from this SqlTypeNameSpec.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedTypeNameSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUserDefinedTypeNameSpec.html#deriveType(org.apache.calcite.sql.validate.SqlValidator)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlWithinGroupOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlWithinGroupOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDataTypeSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDataTypeSpec.html#fixUpNullability(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,boolean)">fixUpNullability</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Fix up the nullability of the <code>type</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCallBinding.</span><code><span class="memberNameLink"><a href="../../../sql/SqlCallBinding.html#getCursorOperand(int)">getCursorOperand</a></span>&#8203;(int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperatorBinding.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperatorBinding.html#getCursorOperand(int)">getCursorOperand</a></span>&#8203;(int&nbsp;ordinal)</code></th>
<td class="colLast">
<div class="block">Returns the rowtype of the <code>ordinal</code>th operand, which is a
cursor.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ExplicitOperatorBinding.</span><code><span class="memberNameLink"><a href="../../../sql/ExplicitOperatorBinding.html#getOperandType(int)">getOperandType</a></span>&#8203;(int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCallBinding.</span><code><span class="memberNameLink"><a href="../../../sql/SqlCallBinding.html#getOperandType(int)">getOperandType</a></span>&#8203;(int&nbsp;ordinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>abstract <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperatorBinding.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperatorBinding.html#getOperandType(int)">getOperandType</a></span>&#8203;(int&nbsp;ordinal)</code></th>
<td class="colLast">
<div class="block">Gets the type of a bound operand.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJdbcFunctionCall.</span><code><span class="memberNameLink"><a href="../../../sql/SqlJdbcFunctionCall.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperator.html#inferReturnType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">inferReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;operandTypes)</code></th>
<td class="colLast">
<div class="block">Infers the type of a call to this operator with a given set of operand
types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">
<div class="block">Infers the return type of an invocation of this operator; only called
after the number and types of operands have already been validated.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUnnestOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUnnestOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUnresolvedFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUnresolvedFunction.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">
<div class="block">Infers the return type of an invocation of this operator; only called
after the number and types of operands have already been validated.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperator.html#validateOperands(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">validateOperands</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call)</code></th>
<td class="colLast">
<div class="block">Validates the operands of a call, inferring the return type in the
process.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/package-summary.html">org.apache.calcite.sql</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperatorBinding.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperatorBinding.html#collectOperandTypes()">collectOperandTypes</a></span>()</code></th>
<td class="colLast">
<div class="block">Collects the types of the bound operands into a list.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperator.html#constructArgTypeList(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,java.util.List,boolean)">constructArgTypeList</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;args,
boolean&nbsp;convertRowArgToColumnList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlFunction.html#getParamTypes()">getParamTypes</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/package-summary.html">org.apache.calcite.sql</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlBinaryOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlBinaryOperator.html#adjustType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">adjustType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperator.html#adjustType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">adjustType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Validates and determines coercibility and resulting collation name of
binary operator if needed.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlPostfixOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlPostfixOperator.html#adjustType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">adjustType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlPrefixOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlPrefixOperator.html#adjustType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">adjustType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCollectionTypeNameSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlCollectionTypeNameSpec.html#createCollectionType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeFactory)">createCollectionType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Create collection data type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDataTypeSpec.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDataTypeSpec.html#fixUpNullability(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,boolean)">fixUpNullability</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">
<div class="block">Fix up the nullability of the <code>type</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDialect.html#getCastSpec(org.apache.calcite.rel.type.RelDataType)">getCastSpec</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.AbstractSumSplitter.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.AbstractSumSplitter.html#singleton(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall)">singleton</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.CountSplitter.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.CountSplitter.html#singleton(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall)">singleton</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall)</code></th>
<td class="colLast">
<div class="block">Generates an expression for the value of the aggregate function when
applied to a single row.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.SelfSplitter.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.SelfSplitter.html#singleton(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall)">singleton</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.html#singleton(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall)">singleton</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall)</code></th>
<td class="colLast">
<div class="block">Generates an expression for the value of the aggregate function when
applied to a single row.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.Sum0Splitter.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.Sum0Splitter.html#singleton(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall)">singleton</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDialect.html#supportsDataType(org.apache.calcite.rel.type.RelDataType)">supportsDataType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns whether this dialect supports a given type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDialect.html#supportsFunction(org.apache.calcite.sql.SqlOperator,org.apache.calcite.rel.type.RelDataType,java.util.List)">supportsFunction</a></span>&#8203;(<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;operator,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes)</code></th>
<td class="colLast">
<div class="block">Returns whether this dialect supports a given function or operator.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.AbstractSumSplitter.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.AbstractSumSplitter.html#topSplit(org.apache.calcite.rex.RexBuilder,org.apache.calcite.sql.SqlSplittableAggFunction.Registry,int,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall,int,int)">topSplit</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../../../sql/SqlSplittableAggFunction.Registry.html" title="interface in org.apache.calcite.sql">SqlSplittableAggFunction.Registry</a>&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;extra,
int&nbsp;offset,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall,
int&nbsp;leftSubTotal,
int&nbsp;rightSubTotal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.CountSplitter.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.CountSplitter.html#topSplit(org.apache.calcite.rex.RexBuilder,org.apache.calcite.sql.SqlSplittableAggFunction.Registry,int,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall,int,int)">topSplit</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../../../sql/SqlSplittableAggFunction.Registry.html" title="interface in org.apache.calcite.sql">SqlSplittableAggFunction.Registry</a>&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;extra,
int&nbsp;offset,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall,
int&nbsp;leftSubTotal,
int&nbsp;rightSubTotal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.SelfSplitter.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.SelfSplitter.html#topSplit(org.apache.calcite.rex.RexBuilder,org.apache.calcite.sql.SqlSplittableAggFunction.Registry,int,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall,int,int)">topSplit</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../../../sql/SqlSplittableAggFunction.Registry.html" title="interface in org.apache.calcite.sql">SqlSplittableAggFunction.Registry</a>&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;extra,
int&nbsp;offset,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall,
int&nbsp;leftSubTotal,
int&nbsp;rightSubTotal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSplittableAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/SqlSplittableAggFunction.html#topSplit(org.apache.calcite.rex.RexBuilder,org.apache.calcite.sql.SqlSplittableAggFunction.Registry,int,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.AggregateCall,int,int)">topSplit</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../../../sql/SqlSplittableAggFunction.Registry.html" title="interface in org.apache.calcite.sql">SqlSplittableAggFunction.Registry</a>&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;extra,
int&nbsp;offset,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inputRowType,
<a href="../../core/AggregateCall.html" title="class in org.apache.calcite.rel.core">AggregateCall</a>&nbsp;aggregateCall,
int&nbsp;leftSubTotal,
int&nbsp;rightSubTotal)</code></th>
<td class="colLast">
<div class="block">Generates an aggregate call to merge sub-totals.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../sql/package-summary.html">org.apache.calcite.sql</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static java.util.Iterator&lt;<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUtil.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUtil.html#filterRoutinesByParameterCount(java.util.Iterator,java.util.List)">filterRoutinesByParameterCount</a></span>&#8203;(java.util.Iterator&lt;<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&gt;&nbsp;routines,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.util.Iterator&lt;<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUtil.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUtil.html#filterRoutinesByParameterType(org.apache.calcite.sql.SqlSyntax,java.util.Iterator,java.util.List,java.util.List,boolean)">filterRoutinesByParameterType</a></span>&#8203;(<a href="../../../sql/SqlSyntax.html" title="enum in org.apache.calcite.sql">SqlSyntax</a>&nbsp;syntax,
java.util.Iterator&lt;<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&gt;&nbsp;routines,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
java.util.List&lt;java.lang.String&gt;&nbsp;argNames,
boolean&nbsp;coerce)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static java.util.Iterator&lt;<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUtil.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUtil.html#filterRoutinesByTypePrecedence(org.apache.calcite.sql.SqlSyntax,java.util.Iterator,java.util.List)">filterRoutinesByTypePrecedence</a></span>&#8203;(<a href="../../../sql/SqlSyntax.html" title="enum in org.apache.calcite.sql">SqlSyntax</a>&nbsp;sqlSyntax,
java.util.Iterator&lt;<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&gt;&nbsp;routines,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperator.</span><code><span class="memberNameLink"><a href="../../../sql/SqlOperator.html#inferReturnType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">inferReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;operandTypes)</code></th>
<td class="colLast">
<div class="block">Infers the type of a call to this operator with a given set of operand
types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUtil.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUtil.html#lookupRoutine(org.apache.calcite.sql.SqlOperatorTable,org.apache.calcite.sql.SqlIdentifier,java.util.List,java.util.List,org.apache.calcite.sql.SqlFunctionCategory,org.apache.calcite.sql.SqlSyntax,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.validate.SqlNameMatcher,boolean)">lookupRoutine</a></span>&#8203;(<a href="../../../sql/SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a>&nbsp;opTab,
<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;funcName,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
java.util.List&lt;java.lang.String&gt;&nbsp;argNames,
<a href="../../../sql/SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;category,
<a href="../../../sql/SqlSyntax.html" title="enum in org.apache.calcite.sql">SqlSyntax</a>&nbsp;syntax,
<a href="../../../sql/SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;sqlKind,
<a href="../../../sql/validate/SqlNameMatcher.html" title="interface in org.apache.calcite.sql.validate">SqlNameMatcher</a>&nbsp;nameMatcher,
boolean&nbsp;coerce)</code></th>
<td class="colLast">
<div class="block">Looks up a (possibly overloaded) routine based on name and argument
types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.Iterator&lt;<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUtil.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUtil.html#lookupSubjectRoutines(org.apache.calcite.sql.SqlOperatorTable,org.apache.calcite.sql.SqlIdentifier,java.util.List,java.util.List,org.apache.calcite.sql.SqlSyntax,org.apache.calcite.sql.SqlKind,org.apache.calcite.sql.SqlFunctionCategory,org.apache.calcite.sql.validate.SqlNameMatcher,boolean)">lookupSubjectRoutines</a></span>&#8203;(<a href="../../../sql/SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a>&nbsp;opTab,
<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;funcName,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
java.util.List&lt;java.lang.String&gt;&nbsp;argNames,
<a href="../../../sql/SqlSyntax.html" title="enum in org.apache.calcite.sql">SqlSyntax</a>&nbsp;sqlSyntax,
<a href="../../../sql/SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;sqlKind,
<a href="../../../sql/SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;category,
<a href="../../../sql/validate/SqlNameMatcher.html" title="interface in org.apache.calcite.sql.validate">SqlNameMatcher</a>&nbsp;nameMatcher,
boolean&nbsp;coerce)</code></th>
<td class="colLast">
<div class="block">Looks up all subject routines matching the given name and argument types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUtil.</span><code><span class="memberNameLink"><a href="../../../sql/SqlUtil.html#matchRoutinesByParameterCount(org.apache.calcite.sql.SqlOperatorTable,org.apache.calcite.sql.SqlIdentifier,java.util.List,org.apache.calcite.sql.SqlFunctionCategory,org.apache.calcite.sql.validate.SqlNameMatcher)">matchRoutinesByParameterCount</a></span>&#8203;(<a href="../../../sql/SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a>&nbsp;opTab,
<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;funcName,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
<a href="../../../sql/SqlFunctionCategory.html" title="enum in org.apache.calcite.sql">SqlFunctionCategory</a>&nbsp;category,
<a href="../../../sql/validate/SqlNameMatcher.html" title="interface in org.apache.calcite.sql.validate">SqlNameMatcher</a>&nbsp;nameMatcher)</code></th>
<td class="colLast">
<div class="block">Determines whether there is a routine matching the given name and number
of arguments.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/SqlDialect.html#supportsFunction(org.apache.calcite.sql.SqlOperator,org.apache.calcite.rel.type.RelDataType,java.util.List)">supportsFunction</a></span>&#8203;(<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;operator,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes)</code></th>
<td class="colLast">
<div class="block">Returns whether this dialect supports a given function or operator.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../../../sql/package-summary.html">org.apache.calcite.sql</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/ExplicitOperatorBinding.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.SqlOperator,java.util.List)">ExplicitOperatorBinding</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;operator,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/ExplicitOperatorBinding.html#%3Cinit%3E(org.apache.calcite.sql.SqlOperatorBinding,java.util.List)">ExplicitOperatorBinding</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;delegate,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/ExplicitOperatorBinding.html#%3Cinit%3E(org.apache.calcite.sql.SqlOperatorBinding,org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.SqlOperator,java.util.List)">ExplicitOperatorBinding</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;delegate,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;operator,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/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="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../../../sql/SqlKind.html" title="enum in org.apache.calcite.sql">SqlKind</a>&nbsp;kind,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../../sql/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="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/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="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../../sql/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="../../../sql/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="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;sqlIdentifier,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
<a href="../../../sql/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.advise">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql/advise/package-summary.html">org.apache.calcite.sql.advise</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/advise/package-summary.html">org.apache.calcite.sql.advise</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAdvisorValidator.</span><code><span class="memberNameLink"><a href="../../../sql/advise/SqlAdvisorValidator.html#emptyStructType">emptyStructType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/advise/package-summary.html">org.apache.calcite.sql.advise</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAdvisorValidator.</span><code><span class="memberNameLink"><a href="../../../sql/advise/SqlAdvisorValidator.html#deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;operand)</code></th>
<td class="colLast">
<div class="block">Calls the parent class method and mask Farrago exception thrown.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAdvisorGetHintsFunction.</span><code><span class="memberNameLink"><a href="../../../sql/advise/SqlAdvisorGetHintsFunction.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.Object&gt;&nbsp;arguments)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAdvisorGetHintsFunction2.</span><code><span class="memberNameLink"><a href="../../../sql/advise/SqlAdvisorGetHintsFunction2.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.Object&gt;&nbsp;arguments)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/advise/package-summary.html">org.apache.calcite.sql.advise</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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">SqlAdvisorValidator.</span><code><span class="memberNameLink"><a href="../../../sql/advise/SqlAdvisorValidator.html#validateFrom(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)">validateFrom</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope)</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">SqlAdvisorValidator.</span><code><span class="memberNameLink"><a href="../../../sql/advise/SqlAdvisorValidator.html#validateNamespace(org.apache.calcite.sql.validate.SqlValidatorNamespace,org.apache.calcite.rel.type.RelDataType)">validateNamespace</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a>&nbsp;namespace,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql.ddl">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql/ddl/package-summary.html">org.apache.calcite.sql.ddl</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/ddl/package-summary.html">org.apache.calcite.sql.ddl</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCreateTable.ColumnDef.</span><code><span class="memberNameLink"><a href="../../../sql/ddl/SqlCreateTable.ColumnDef.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/ddl/package-summary.html">org.apache.calcite.sql.ddl</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCreateTable.MutableArrayTable.</span><code><span class="memberNameLink"><a href="../../../sql/ddl/SqlCreateTable.MutableArrayTable.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/ddl/package-summary.html">org.apache.calcite.sql.ddl</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) static <a href="../../../sql/ddl/SqlCreateTable.ColumnDef.html" title="class in org.apache.calcite.sql.ddl">SqlCreateTable.ColumnDef</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCreateTable.ColumnDef.</span><code><span class="memberNameLink"><a href="../../../sql/ddl/SqlCreateTable.ColumnDef.html#of(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.schema.ColumnStrategy)">of</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;expr,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../schema/ColumnStrategy.html" title="enum in org.apache.calcite.schema">ColumnStrategy</a>&nbsp;strategy)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../sql/ddl/package-summary.html">org.apache.calcite.sql.ddl</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/ddl/SqlCreateTable.ColumnDef.html#%3Cinit%3E(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.schema.ColumnStrategy)">ColumnDef</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;expr,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../schema/ColumnStrategy.html" title="enum in org.apache.calcite.schema">ColumnStrategy</a>&nbsp;strategy)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql.dialect">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql/dialect/package-summary.html">org.apache.calcite.sql.dialect</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/dialect/package-summary.html">org.apache.calcite.sql.dialect</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MysqlSqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/dialect/MysqlSqlDialect.html#getCastSpec(org.apache.calcite.rel.type.RelDataType)">getCastSpec</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OracleSqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/dialect/OracleSqlDialect.html#getCastSpec(org.apache.calcite.rel.type.RelDataType)">getCastSpec</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PostgresqlSqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/dialect/PostgresqlSqlDialect.html#getCastSpec(org.apache.calcite.rel.type.RelDataType)">getCastSpec</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OracleSqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/dialect/OracleSqlDialect.html#supportsDataType(org.apache.calcite.rel.type.RelDataType)">supportsDataType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JethroDataSqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/dialect/JethroDataSqlDialect.html#supportsFunction(org.apache.calcite.sql.SqlOperator,org.apache.calcite.rel.type.RelDataType,java.util.List)">supportsFunction</a></span>&#8203;(<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;operator,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../sql/dialect/package-summary.html">org.apache.calcite.sql.dialect</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>(package private) boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JethroDataSqlDialect.JethroSupportedFunction.</span><code><span class="memberNameLink"><a href="../../../sql/dialect/JethroDataSqlDialect.JethroSupportedFunction.html#argumentsMatch(java.util.List)">argumentsMatch</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JethroDataSqlDialect.</span><code><span class="memberNameLink"><a href="../../../sql/dialect/JethroDataSqlDialect.html#supportsFunction(org.apache.calcite.sql.SqlOperator,org.apache.calcite.rel.type.RelDataType,java.util.List)">supportsFunction</a></span>&#8203;(<a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a>&nbsp;operator,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes)</code></th>
<td class="colLast">&nbsp;</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlHistogramAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlHistogramAggFunction.html#type">type</a></span></code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSingleValueAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSingleValueAggFunction.html#type">type</a></span></code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSumAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSumAggFunction.html#type">type</a></span></code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMinMaxAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMinMaxAggFunction.html#argTypes">argTypes</a></span></code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTimestampAddFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlTimestampAddFunction.html#deduceType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.avatica.util.TimeUnit,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deduceType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
org.apache.calcite.avatica.util.TimeUnit&nbsp;timeUnit,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;operandType1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;operandType2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCaseOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCaseOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCountAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCountAggFunction.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCursorConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCursorConstructor.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDotOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlDotOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlInOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlInOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJsonArrayAggAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlJsonArrayAggAggFunction.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJsonObjectAggAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlJsonObjectAggAggFunction.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMultisetQueryConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMultisetQueryConstructor.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSequenceValueOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSequenceValueOperator.html#deriveType(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMultisetQueryConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMultisetQueryConstructor.html#getComponentType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getComponentType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMultisetValueConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMultisetValueConstructor.html#getComponentType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getComponentType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCountAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCountAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlFirstLastValueAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlFirstLastValueAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlHistogramAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlHistogramAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMinMaxAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMinMaxAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSingleValueAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSingleValueAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSumAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSumAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSumEmptyIsZeroAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSumEmptyIsZeroAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlHistogramAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlHistogramAggFunction.html#getType()">getType</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSingleValueAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSingleValueAggFunction.html#getType()">getType</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSumAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSumAggFunction.html#getType()">getType</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlAbstractTimeFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlAbstractTimeFunction.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlArrayValueConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlArrayValueConstructor.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlBetweenOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlBetweenOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCaseOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCaseOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCastFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCastFunction.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCastOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCastOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDatetimePlusOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlDatetimePlusOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDotOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlDotOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlItemOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlItemOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlLiteralChainOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlLiteralChainOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMapValueConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMapValueConstructor.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMultisetQueryConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMultisetQueryConstructor.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMultisetValueConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMultisetValueConstructor.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlRowOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlRowOperator.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCaseOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCaseOperator.html#inferTypeFromOperands(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">inferTypeFromOperands</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCaseOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCaseOperator.html#inferTypeFromValidator(org.apache.calcite.sql.SqlCallBinding)">inferTypeFromValidator</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;callBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlBetweenOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlBetweenOperator.html#collectOperandTypes(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">collectOperandTypes</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/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>private <a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMapValueConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMapValueConstructor.html#getComponentTypes(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getComponentTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMapValueConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMapValueConstructor.html#getComponentTypes(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getComponentTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCountAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCountAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlFirstLastValueAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlFirstLastValueAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlHistogramAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlHistogramAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMinMaxAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMinMaxAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSingleValueAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSingleValueAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSumAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSumAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlSumEmptyIsZeroAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSumEmptyIsZeroAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlJsonValueFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlJsonValueFunction.html#canCastFrom(org.apache.calcite.sql.SqlCallBinding,boolean,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">canCastFrom</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;callBinding,
boolean&nbsp;throwOnFailure,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;outType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTimestampAddFunction.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlTimestampAddFunction.html#deduceType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.avatica.util.TimeUnit,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deduceType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
org.apache.calcite.avatica.util.TimeUnit&nbsp;timeUnit,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;operandType1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;operandType2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../sql/type/SqlSingleOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlSingleOperandTypeChecker</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlDotOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlDotOperator.html#getChecker(org.apache.calcite.rel.type.RelDataType)">getChecker</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;operandType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMultisetQueryConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMultisetQueryConstructor.html#getComponentType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getComponentType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMultisetValueConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMultisetValueConstructor.html#getComponentType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getComponentType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlMapValueConstructor.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlMapValueConstructor.html#getComponentTypes(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getComponentTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlCaseOperator.</span><code><span class="memberNameLink"><a href="../../../sql/fun/SqlCaseOperator.html#inferTypeFromOperands(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">inferTypeFromOperands</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/fun/SqlAvgAggFunction.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.fun.SqlAvgAggFunction.Subtype)">SqlAvgAggFunction</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/fun/SqlAvgAggFunction.Subtype.html" title="enum in org.apache.calcite.sql.fun">SqlAvgAggFunction.Subtype</a>&nbsp;subtype)</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="../../../sql/fun/SqlCovarAggFunction.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.fun.SqlCovarAggFunction.Subtype)">SqlCovarAggFunction</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/fun/SqlCovarAggFunction.Subtype.html" title="enum in org.apache.calcite.sql.fun">SqlCovarAggFunction.Subtype</a>&nbsp;subtype)</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="../../../sql/fun/SqlHistogramAggFunction.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType)">SqlHistogramAggFunction</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSingleValueAggFunction.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType)">SqlSingleValueAggFunction</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/fun/SqlSumAggFunction.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType)">SqlSumAggFunction</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../../../sql/fun/package-summary.html">org.apache.calcite.sql.fun</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/fun/SqlMinMaxAggFunction.html#%3Cinit%3E(java.util.List,boolean,int)">SqlMinMaxAggFunction</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
boolean&nbsp;isMin,
int&nbsp;minMaxKind)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a></h3>
<table class="useSummary">
<caption><span>Classes in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> that implement <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/type/AbstractSqlType.html" title="class in org.apache.calcite.sql.type">AbstractSqlType</a></span></code></th>
<td class="colLast">
<div class="block">Abstract base class for SQL implementations of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>.</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="../../../sql/type/ArraySqlType.html" title="class in org.apache.calcite.sql.type">ArraySqlType</a></span></code></th>
<td class="colLast">
<div class="block">SQL array type.</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="../../../sql/type/BasicSqlType.html" title="class in org.apache.calcite.sql.type">BasicSqlType</a></span></code></th>
<td class="colLast">
<div class="block">BasicSqlType represents a standard atomic SQL type (excluding interval
types).</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="../../../sql/type/IntervalSqlType.html" title="class in org.apache.calcite.sql.type">IntervalSqlType</a></span></code></th>
<td class="colLast">
<div class="block">IntervalSqlType represents a standard SQL datetime interval type.</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="../../../sql/type/MapSqlType.html" title="class in org.apache.calcite.sql.type">MapSqlType</a></span></code></th>
<td class="colLast">
<div class="block">SQL map type.</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="../../../sql/type/MultisetSqlType.html" title="class in org.apache.calcite.sql.type">MultisetSqlType</a></span></code></th>
<td class="colLast">
<div class="block">MultisetSqlType represents a standard SQL2003 multiset type.</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="../../../sql/type/ObjectSqlType.html" title="class in org.apache.calcite.sql.type">ObjectSqlType</a></span></code></th>
<td class="colLast">
<div class="block">ObjectSqlType represents an SQL structured user-defined 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="../../../sql/type/SqlTypeFactoryImpl.UnknownSqlType.html" title="class in org.apache.calcite.sql.type">SqlTypeFactoryImpl.UnknownSqlType</a></span></code></th>
<td class="colLast">
<div class="block">The unknown type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ArraySqlType.</span><code><span class="memberNameLink"><a href="../../../sql/type/ArraySqlType.html#elementType">elementType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MultisetSqlType.</span><code><span class="memberNameLink"><a href="../../../sql/type/MultisetSqlType.html#elementType">elementType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MapSqlType.</span><code><span class="memberNameLink"><a href="../../../sql/type/MapSqlType.html#keyType">keyType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MapSqlType.</span><code><span class="memberNameLink"><a href="../../../sql/type/MapSqlType.html#valueType">valueType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AssignableOperandTypeChecker.</span><code><span class="memberNameLink"><a href="../../../sql/type/AssignableOperandTypeChecker.html#paramTypes">paramTypes</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private com.google.common.collect.ImmutableList&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ExplicitOperandTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/ExplicitOperandTypeInference.html#paramTypes">paramTypes</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#addCharsetAndCollation(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeFactory)">addCharsetAndCollation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Adds collation and charset to a character type, returns other types
unchanged.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#canonize(org.apache.calcite.rel.type.RelDataType)">canonize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyArrayType(org.apache.calcite.rel.type.RelDataType,boolean)">copyArrayType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyIntervalType(org.apache.calcite.rel.type.RelDataType,boolean)">copyIntervalType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyMapType(org.apache.calcite.rel.type.RelDataType,boolean)">copyMapType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyMultisetType(org.apache.calcite.rel.type.RelDataType,boolean)">copyMultisetType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyObjectType(org.apache.calcite.rel.type.RelDataType,boolean)">copyObjectType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createArrayType(org.apache.calcite.rel.type.RelDataType,long)">createArrayType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
long&nbsp;maxCardinality)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#createArrayType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,boolean)">createArrayType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createDoublePrecisionType()">createDoublePrecisionType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#createEmptyStructType(org.apache.calcite.rel.type.RelDataTypeFactory)">createEmptyStructType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Records a struct type with no fields.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createMapType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createMapType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#createMapType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">createMapType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createMultisetType(org.apache.calcite.rel.type.RelDataType,long)">createMultisetType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
long&nbsp;maxCardinality)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#createMultisetType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,boolean)">createMultisetType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createSqlIntervalType(org.apache.calcite.sql.SqlIntervalQualifier)">createSqlIntervalType</a></span>&#8203;(<a href="../../../sql/SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a>&nbsp;intervalQualifier)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createSqlType(org.apache.calcite.sql.type.SqlTypeName)">createSqlType</a></span>&#8203;(<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createSqlType(org.apache.calcite.sql.type.SqlTypeName,int)">createSqlType</a></span>&#8203;(<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName,
int&nbsp;precision)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createSqlType(org.apache.calcite.sql.type.SqlTypeName,int,int)">createSqlType</a></span>&#8203;(<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName,
int&nbsp;precision,
int&nbsp;scale)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createTypeWithCharsetAndCollation(org.apache.calcite.rel.type.RelDataType,java.nio.charset.Charset,org.apache.calcite.sql.SqlCollation)">createTypeWithCharsetAndCollation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.nio.charset.Charset&nbsp;charset,
<a href="../../../sql/SqlCollation.html" title="class in org.apache.calcite.sql">SqlCollation</a>&nbsp;collation)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createTypeWithNullability(org.apache.calcite.rel.type.RelDataType,boolean)">createTypeWithNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createUnknownType()">createUnknownType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#flattenRecordType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,int%5B%5D)">flattenRecordType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;recordType,
int[]&nbsp;flatteningMap)</code></th>
<td class="colLast">
<div class="block">Flattens a record type by recursively expanding any fields which are
themselves record types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ArraySqlType.</span><code><span class="memberNameLink"><a href="../../../sql/type/ArraySqlType.html#getComponentType()">getComponentType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MultisetSqlType.</span><code><span class="memberNameLink"><a href="../../../sql/type/MultisetSqlType.html#getComponentType()">getComponentType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFamily.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFamily.html#getDefaultConcreteType(org.apache.calcite.rel.type.RelDataTypeFactory)">getDefaultConcreteType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;factory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MapSqlType.</span><code><span class="memberNameLink"><a href="../../../sql/type/MapSqlType.html#getKeyType()">getKeyType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#getMaxPrecisionScaleDecimal(org.apache.calcite.rel.type.RelDataTypeFactory)">getMaxPrecisionScaleDecimal</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;factory)</code></th>
<td class="colLast">
<div class="block">Get decimal with max precision/scale for the current type system.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MapSqlType.</span><code><span class="memberNameLink"><a href="../../../sql/type/MapSqlType.html#getValueType()">getValueType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CursorReturnTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/CursorReturnTypeInference.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ExplicitReturnTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/ExplicitReturnTypeInference.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MatchReturnTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/MatchReturnTypeInference.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OrdinalReturnTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/OrdinalReturnTypeInference.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlReturnTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlReturnTypeInference.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">
<div class="block">Infers the return type of a call to an <a href="../../../sql/SqlOperator.html" title="class in org.apache.calcite.sql"><code>SqlOperator</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlReturnTypeInferenceChain.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlReturnTypeInferenceChain.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeTransformCascade.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeTransformCascade.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableFunctionReturnTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/TableFunctionReturnTypeInference.html#inferReturnType(org.apache.calcite.sql.SqlOperatorBinding)">inferReturnType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#leastRestrictive(java.util.List)">leastRestrictive</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#leastRestrictiveByCast(java.util.List)">leastRestrictiveByCast</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#leastRestrictiveForComparison(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">leastRestrictiveForComparison</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Returns the least restrictive type T, such that a value of type T can be
compared with values of type <code>type0</code> and <code>type1</code> using
<code>=</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#leastRestrictiveSqlType(java.util.List)">leastRestrictiveSqlType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#makeNullableIfOperandsAre(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,org.apache.calcite.rel.type.RelDataType)">makeNullableIfOperandsAre</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Recreates a given RelDataType with nullability iff any of the param
argTypes are nullable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#makeNullableIfOperandsAre(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">makeNullableIfOperandsAre</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Recreates a given RelDataType with nullability iff any of the operands
of a call are nullable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#promoteToRowType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,java.lang.String)">promoteToRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;fieldName)</code></th>
<td class="colLast">
<div class="block">Promotes a type to a row type (does nothing if it already is one).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeTransform.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeTransform.html#transformType(org.apache.calcite.sql.SqlOperatorBinding,org.apache.calcite.rel.type.RelDataType)">transformType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;typeToTransform)</code></th>
<td class="colLast">
<div class="block">Transforms a type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#deriveAndCollectTypes(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,java.util.List)">deriveAndCollectTypes</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">
<div class="block">Iterates over all operands, derives their types, and collects them into
a list.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#projectTypes(org.apache.calcite.rel.type.RelDataType,java.util.List)">projectTypes</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;? extends java.lang.Number&gt;&nbsp;requiredFields)</code></th>
<td class="colLast">
<div class="block">Selects data types of the specified fields from an input row type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#addCharsetAndCollation(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeFactory)">addCharsetAndCollation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">
<div class="block">Adds collation and charset to a character type, returns other types
unchanged.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#areCharacterSetsMismatched(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">areCharacterSetsMismatched</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t2)</code></th>
<td class="colLast">
<div class="block">Determines whether two types both have different character sets.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#canAssignFrom(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">canAssignFrom</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;toType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;fromType)</code></th>
<td class="colLast">
<div class="block">Tests whether a value can be assigned to a site.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#canCastFrom(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">canCastFrom</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;toType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;fromType,
boolean&nbsp;coerce)</code></th>
<td class="colLast">
<div class="block">Compares two types and returns true if fromType can be cast to toType.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#canonize(org.apache.calcite.rel.type.RelDataType)">canonize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ComparableOperandTypeChecker.</span><code><span class="memberNameLink"><a href="../../../sql/type/ComparableOperandTypeChecker.html#checkType(org.apache.calcite.sql.SqlCallBinding,boolean,org.apache.calcite.rel.type.RelDataType)">checkType</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;callBinding,
boolean&nbsp;throwOnFailure,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeExplicitPrecedenceList.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeExplicitPrecedenceList.html#compareTypePrecedence(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">compareTypePrecedence</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFamily.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFamily.html#contains(org.apache.calcite.rel.type.RelDataType)">contains</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#containsNullable(org.apache.calcite.rel.type.RelDataType)">containsNullable</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Determines whether a type or any of its fields (if a structured type) are
nullable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeExplicitPrecedenceList.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeExplicitPrecedenceList.html#containsType(org.apache.calcite.rel.type.RelDataType)">containsType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../sql/SqlDataTypeSpec.html" title="class in org.apache.calcite.sql">SqlDataTypeSpec</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#convertTypeToSpec(org.apache.calcite.rel.type.RelDataType)">convertTypeToSpec</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Converts an instance of RelDataType to an instance of SqlDataTypeSpec.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../sql/SqlDataTypeSpec.html" title="class in org.apache.calcite.sql">SqlDataTypeSpec</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#convertTypeToSpec(org.apache.calcite.rel.type.RelDataType,java.lang.String,int)">convertTypeToSpec</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;charSetName,
int&nbsp;maxPrecision)</code></th>
<td class="colLast">
<div class="block">Converts an instance of RelDataType to an instance of SqlDataTypeSpec.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyArrayType(org.apache.calcite.rel.type.RelDataType,boolean)">copyArrayType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyIntervalType(org.apache.calcite.rel.type.RelDataType,boolean)">copyIntervalType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyMapType(org.apache.calcite.rel.type.RelDataType,boolean)">copyMapType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyMultisetType(org.apache.calcite.rel.type.RelDataType,boolean)">copyMultisetType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#copyObjectType(org.apache.calcite.rel.type.RelDataType,boolean)">copyObjectType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createArrayType(org.apache.calcite.rel.type.RelDataType,long)">createArrayType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
long&nbsp;maxCardinality)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#createArrayType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,boolean)">createArrayType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createMapType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">createMapType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#createMapType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">createMapType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createMultisetType(org.apache.calcite.rel.type.RelDataType,long)">createMultisetType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
long&nbsp;maxCardinality)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#createMultisetType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,boolean)">createMultisetType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createTypeWithCharsetAndCollation(org.apache.calcite.rel.type.RelDataType,java.nio.charset.Charset,org.apache.calcite.sql.SqlCollation)">createTypeWithCharsetAndCollation</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.nio.charset.Charset&nbsp;charset,
<a href="../../../sql/SqlCollation.html" title="class in org.apache.calcite.sql">SqlCollation</a>&nbsp;collation)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#createTypeWithNullability(org.apache.calcite.rel.type.RelDataType,boolean)">createTypeWithNullability</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
boolean&nbsp;nullable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#equalAsStructSansNullability(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlNameMatcher)">equalAsStructSansNullability</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;factory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2,
<a href="../../../sql/validate/SqlNameMatcher.html" title="interface in org.apache.calcite.sql.validate">SqlNameMatcher</a>&nbsp;nameMatcher)</code></th>
<td class="colLast">
<div class="block">Returns whether two struct types are equal, ignoring nullability.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#equalSansNullability(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">equalSansNullability</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;factory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Returns whether two types are equal, ignoring nullability.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../sql/type/ExplicitReturnTypeInference.html" title="class in org.apache.calcite.sql.type">ExplicitReturnTypeInference</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ReturnTypes.</span><code><span class="memberNameLink"><a href="../../../sql/type/ReturnTypes.html#explicit(org.apache.calcite.rel.type.RelDataType)">explicit</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Creates an inference rule which returns a copy of a given data type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static <a href="../RelDataTypeFamily.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFamily</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#family(org.apache.calcite.rel.type.RelDataType)">family</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#findField(org.apache.calcite.rel.type.RelDataType,java.lang.String)">findField</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;fieldName)</code></th>
<td class="colLast">
<div class="block">Returns the ordinal of a given field in a record type, or -1 if the field
is not found.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#flattenFields(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,java.util.List,int%5B%5D)">flattenFields</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;list,
int[]&nbsp;flatteningMap)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#flattenRecordType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,int%5B%5D)">flattenRecordType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;recordType,
int[]&nbsp;flatteningMap)</code></th>
<td class="colLast">
<div class="block">Flattens a record type by recursively expanding any fields which are
themselves record types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) static <a href="../RelDataTypePrecedenceList.html" title="interface in org.apache.calcite.rel.type">RelDataTypePrecedenceList</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeExplicitPrecedenceList.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeExplicitPrecedenceList.html#getListForType(org.apache.calcite.rel.type.RelDataType)">getListForType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#getMaxByteSize(org.apache.calcite.rel.type.RelDataType)">getMaxByteSize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Computes the maximum number of bytes required to represent a value of a
type having user-defined precision.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static long</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#getMaxValue(org.apache.calcite.rel.type.RelDataType)">getMaxValue</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Determines the maximum unscaled value of a numeric type</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static long</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#getMinValue(org.apache.calcite.rel.type.RelDataType)">getMinValue</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Determines the minimum unscaled value of a numeric type</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#getNumericJavaClassName(org.apache.calcite.rel.type.RelDataType)">getNumericJavaClassName</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#getPrimitiveWrapperJavaClassName(org.apache.calcite.rel.type.RelDataType)">getPrimitiveWrapperJavaClassName</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#hasCharactor(org.apache.calcite.rel.type.RelDataType)">hasCharactor</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#hasScale(org.apache.calcite.rel.type.RelDataType)">hasScale</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns whether a type's scale is set.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#inBooleanFamily(org.apache.calcite.rel.type.RelDataType)">inBooleanFamily</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#inCharFamily(org.apache.calcite.rel.type.RelDataType)">inCharFamily</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#inCharOrBinaryFamilies(org.apache.calcite.rel.type.RelDataType)">inCharOrBinaryFamilies</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ExplicitOperandTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/ExplicitOperandTypeInference.html#inferOperandTypes(org.apache.calcite.sql.SqlCallBinding,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType%5B%5D)">inferOperandTypes</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;callBinding,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;returnType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>[]&nbsp;operandTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlOperandTypeInference.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlOperandTypeInference.html#inferOperandTypes(org.apache.calcite.sql.SqlCallBinding,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType%5B%5D)">inferOperandTypes</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;callBinding,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;returnType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>[]&nbsp;operandTypes)</code></th>
<td class="colLast">
<div class="block">Infers any unknown operand types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#inSameFamily(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">inSameFamily</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#inSameFamilyOrNull(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">inSameFamilyOrNull</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isAny(org.apache.calcite.rel.type.RelDataType)">isAny</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isApproximateNumeric(org.apache.calcite.rel.type.RelDataType)">isApproximateNumeric</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isArray(org.apache.calcite.rel.type.RelDataType)">isArray</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isAtomic(org.apache.calcite.rel.type.RelDataType)">isAtomic</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isBigint(org.apache.calcite.rel.type.RelDataType)">isBigint</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isBinary(org.apache.calcite.rel.type.RelDataType)">isBinary</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isBoolean(org.apache.calcite.rel.type.RelDataType)">isBoolean</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isBoundedVariableWidth(org.apache.calcite.rel.type.RelDataType)">isBoundedVariableWidth</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isCharacter(org.apache.calcite.rel.type.RelDataType)">isCharacter</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isComparable(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">isComparable</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Returns whether two types are comparable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isDate(org.apache.calcite.rel.type.RelDataType)">isDate</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isDatetime(org.apache.calcite.rel.type.RelDataType)">isDatetime</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isDecimal(org.apache.calcite.rel.type.RelDataType)">isDecimal</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isDouble(org.apache.calcite.rel.type.RelDataType)">isDouble</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isExactNumeric(org.apache.calcite.rel.type.RelDataType)">isExactNumeric</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isFlat(org.apache.calcite.rel.type.RelDataType)">isFlat</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns whether a type is flat.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isInterval(org.apache.calcite.rel.type.RelDataType)">isInterval</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isIntType(org.apache.calcite.rel.type.RelDataType)">isIntType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isJavaPrimitive(org.apache.calcite.rel.type.RelDataType)">isJavaPrimitive</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isLob(org.apache.calcite.rel.type.RelDataType)">isLob</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isMap(org.apache.calcite.rel.type.RelDataType)">isMap</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isNull(org.apache.calcite.rel.type.RelDataType)">isNull</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isNumeric(org.apache.calcite.rel.type.RelDataType)">isNumeric</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isOfSameTypeName(java.util.Collection,org.apache.calcite.rel.type.RelDataType)">isOfSameTypeName</a></span>&#8203;(java.util.Collection&lt;<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&gt;&nbsp;typeNames,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns true if any element in <code>typeNames</code> matches
type.getSqlTypeName().</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isOfSameTypeName(org.apache.calcite.sql.type.SqlTypeName,org.apache.calcite.rel.type.RelDataType)">isOfSameTypeName</a></span>&#8203;(<a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&nbsp;typeName,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns typeName.equals(type.getSqlTypeName()).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isSameFamily(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">isSameFamily</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Returns whether two types are scalar types of the same family, or struct types whose fields
are pairwise of the same family.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isString(org.apache.calcite.rel.type.RelDataType)">isString</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isTimestamp(org.apache.calcite.rel.type.RelDataType)">isTimestamp</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isUnicode(org.apache.calcite.rel.type.RelDataType)">isUnicode</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Checks whether a type represents Unicode character data.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#leastRestrictiveForComparison(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">leastRestrictiveForComparison</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Returns the least restrictive type T, such that a value of type T can be
compared with values of type <code>type0</code> and <code>type1</code> using
<code>=</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#makeNullableIfOperandsAre(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,org.apache.calcite.rel.type.RelDataType)">makeNullableIfOperandsAre</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Recreates a given RelDataType with nullability iff any of the param
argTypes are nullable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#makeNullableIfOperandsAre(org.apache.calcite.sql.validate.SqlValidator,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">makeNullableIfOperandsAre</a></span>&#8203;(<a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a>&nbsp;validator,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Recreates a given RelDataType with nullability iff any of the operands
of a call are nullable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static long</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#maxValue(org.apache.calcite.rel.type.RelDataType)">maxValue</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns the maximum value of an integral type, as a long value</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#needsNullIndicator(org.apache.calcite.rel.type.RelDataType)">needsNullIndicator</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;recordType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#projectTypes(org.apache.calcite.rel.type.RelDataType,java.util.List)">projectTypes</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.util.List&lt;? extends java.lang.Number&gt;&nbsp;requiredFields)</code></th>
<td class="colLast">
<div class="block">Selects data types of the specified fields from an input row type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#promoteToRowType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,java.lang.String)">promoteToRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.lang.String&nbsp;fieldName)</code></th>
<td class="colLast">
<div class="block">Promotes a type to a row type (does nothing if it already is one).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#sameNamedType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">sameNamedType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;t2)</code></th>
<td class="colLast">
<div class="block">Tests whether two types have the same name and structure, possibly with
differing modifiers.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeTransform.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeTransform.html#transformType(org.apache.calcite.sql.SqlOperatorBinding,org.apache.calcite.rel.type.RelDataType)">transformType</a></span>&#8203;(<a href="../../../sql/SqlOperatorBinding.html" title="class in org.apache.calcite.sql">SqlOperatorBinding</a>&nbsp;opBinding,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;typeToTransform)</code></th>
<td class="colLast">
<div class="block">Transforms a type.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#allNullable(java.util.List)">allNullable</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Returns whether all of array of types are nullable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#areSameFamily(java.lang.Iterable)">areSameFamily</a></span>&#8203;(java.lang.Iterable&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Returns whether all types in a collection have the same family, as
determined by <a href="../../../sql/type/SqlTypeUtil.html#isSameFamily(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)"><code>SqlTypeUtil.isSameFamily(RelDataType, RelDataType)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#containsNullable(java.util.List)">containsNullable</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Returns whether one or more of an array of types is nullable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">InferTypes.</span><code><span class="memberNameLink"><a href="../../../sql/type/InferTypes.html#explicit(java.util.List)">explicit</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">
<div class="block">Returns an <a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type"><code>SqlOperandTypeInference</code></a> that returns a given list of
types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#isCharTypeComparable(java.util.List)">isCharTypeComparable</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">
<div class="block">Checks whether two types or more are char comparable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#leastRestrictive(java.util.List)">leastRestrictive</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#leastRestrictiveByCast(java.util.List)">leastRestrictiveByCast</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeFactoryImpl.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeFactoryImpl.html#leastRestrictiveSqlType(java.util.List)">leastRestrictiveSqlType</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlTypeUtil.</span><code><span class="memberNameLink"><a href="../../../sql/type/SqlTypeUtil.html#makeNullableIfOperandsAre(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,org.apache.calcite.rel.type.RelDataType)">makeNullableIfOperandsAre</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Recreates a given RelDataType with nullability iff any of the param
argTypes are nullable.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/type/ArraySqlType.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,boolean)">ArraySqlType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
boolean&nbsp;isNullable)</code></th>
<td class="colLast">
<div class="block">Creates an ArraySqlType.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/type/MapSqlType.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">MapSqlType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;keyType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;valueType,
boolean&nbsp;isNullable)</code></th>
<td class="colLast">
<div class="block">Creates a MapSqlType.</div>
</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/type/MultisetSqlType.html#%3Cinit%3E(org.apache.calcite.rel.type.RelDataType,boolean)">MultisetSqlType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;elementType,
boolean&nbsp;isNullable)</code></th>
<td class="colLast">
<div class="block">Constructs a new MultisetSqlType.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../../../sql/type/package-summary.html">org.apache.calcite.sql.type</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/type/AssignableOperandTypeChecker.html#%3Cinit%3E(java.util.List,java.util.List)">AssignableOperandTypeChecker</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes,
java.util.List&lt;java.lang.String&gt;&nbsp;paramNames)</code></th>
<td class="colLast">
<div class="block">Instantiates this strategy with a specific set of parameter types.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/type/ExplicitOperandTypeInference.html#%3Cinit%3E(com.google.common.collect.ImmutableList)">ExplicitOperandTypeInference</a></span>&#8203;(com.google.common.collect.ImmutableList&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;paramTypes)</code></th>
<td class="colLast">
<div class="block">Use
<a href="../../../sql/type/InferTypes.html#explicit(java.util.List)"><code>InferTypes.explicit(java.util.List)</code></a>.</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#booleanType">booleanType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#rowType">rowType</a></span></code></th>
<td class="colLast">
<div class="block">Type of the output row, which comprises the name and type of each output
column.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.Permute.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.Permute.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorScope.Step.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorScope.Step.html#rowType">rowType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#type">type</a></span></code></th>
<td class="colLast">
<div class="block">As <a href="../../../sql/validate/AbstractNamespace.html#rowType"><code>AbstractNamespace.rowType</code></a>, but not necessarily a struct.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ParameterNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/ParameterNamespace.html#type">type</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#unknownType">unknownType</a></span></code></th>
<td class="colLast">
<div class="block">The type of dynamic parameters until a type is imposed on them.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a> with type parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ParameterScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/ParameterScope.html#nameToTypeMap">nameToTypeMap</a></span></code></th>
<td class="colLast">
<div class="block">Map from the simple names of the parameters to types of the parameters
(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.Map&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#nodeToTypeMap">nodeToTypeMap</a></span></code></th>
<td class="colLast">
<div class="block">Map of derived RelDataType for each node.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#convertToStruct(org.apache.calcite.rel.type.RelDataType)">convertToStruct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#createJoinType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List)">createJoinType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;systemFieldList)</code></th>
<td class="colLast">
<div class="block">Returns the type the row which results when two relations are joined.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#createTargetRowType(org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.sql.SqlNodeList,boolean)">createTargetRowType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a>&nbsp;table,
<a href="../../../sql/SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a>&nbsp;targetColumnList,
boolean&nbsp;append)</code></th>
<td class="colLast">
<div class="block">Derives a row-type for INSERT and UPDATE operations.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorCatalogReader.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorCatalogReader.html#createTypeFromProjection(org.apache.calcite.rel.type.RelDataType,java.util.List)">createTypeFromProjection</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;java.lang.String&gt;&nbsp;columnNameList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#createTypeFromProjection(org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.rel.type.RelDataTypeFactory,boolean)">createTypeFromProjection</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;java.lang.String&gt;&nbsp;columnNameList,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
boolean&nbsp;caseSensitive)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#deriveConstructorType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,org.apache.calcite.sql.SqlFunction,java.util.List)">deriveConstructorType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;unresolvedConstructor,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;resolvedConstructor,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">
<div class="block">Derives the type of a constructor.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#deriveConstructorType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,org.apache.calcite.sql.SqlFunction,java.util.List)">deriveConstructorType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;unresolvedConstructor,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;resolvedConstructor,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#deriveJoinRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.JoinRelType,org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,java.util.List)">deriveJoinRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType,
<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;systemFieldList)</code></th>
<td class="colLast">
<div class="block">Derives the type of a join relational expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;operand)</code></th>
<td class="colLast">
<div class="block">Derives the type of a node in a given scope.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">deriveType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;expr)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#deriveTypeImpl(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">deriveTypeImpl</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;operand)</code></th>
<td class="colLast">
<div class="block">Derives the type of a node, never null.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/TableNamespace.html#getBaseRowType()">getBaseRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the data-type of all columns in a table (for a view table: including
columns of the underlying table)</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalSourceRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceRowType,
<a href="../../../sql/SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a>&nbsp;insert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalTargetRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../../../sql/SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a>&nbsp;insert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingSqlValidatorCatalogReader.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingSqlValidatorCatalogReader.html#getNamedType(org.apache.calcite.sql.SqlIdentifier)">getNamedType</a></span>&#8203;(<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;typeName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorCatalogReader.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorCatalogReader.html#getNamedType(org.apache.calcite.sql.SqlIdentifier)">getNamedType</a></span>&#8203;(<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;typeName)</code></th>
<td class="colLast">
<div class="block">Finds a user-defined type with the given name, possibly qualified.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#getParameterRowType(org.apache.calcite.sql.SqlNode)">getParameterRowType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;sqlQuery)</code></th>
<td class="colLast">
<div class="block">Returns a record type that contains the name and type of each parameter.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getParameterRowType(org.apache.calcite.sql.SqlNode)">getParameterRowType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;sqlQuery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedAggFunction.html#getReturnType(org.apache.calcite.rel.type.RelDataTypeFactory)">getReturnType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingNamespace.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingSqlValidatorTable.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingSqlValidatorTable.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ParameterNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/ParameterNamespace.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedTableFunction.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedTableFunction.html#getRowType(org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List)">getRowType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;operandList)</code></th>
<td class="colLast">
<div class="block">Returns the record type of the table yielded by this function when
applied to given arguments.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorNamespace.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the row type of this namespace, which comprises a list of names
and types of the output columns.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorTable.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorTable.html#getRowType()">getRowType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#getRowTypeSansSystemColumns()">getRowTypeSansSystemColumns</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingNamespace.html#getRowTypeSansSystemColumns()">getRowTypeSansSystemColumns</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorNamespace.html#getRowTypeSansSystemColumns()">getRowTypeSansSystemColumns</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the row type of this namespace, sans any system columns.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getTableConstructorRowType(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)">getTableConstructorRowType</a></span>&#8203;(<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;values,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope)</code></th>
<td class="colLast">
<div class="block">Returns null if there is no common type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingNamespace.html#getType()">getType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorNamespace.html#getType()">getType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the type of this namespace.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#getUnknownType()">getUnknownType</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an object representing the "unknown" type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getUnknownType()">getUnknownType</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#getValidatedNodeType(org.apache.calcite.sql.SqlNode)">getValidatedNodeType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node)</code></th>
<td class="colLast">
<div class="block">Returns the type assigned to a node by validation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getValidatedNodeType(org.apache.calcite.sql.SqlNode)">getValidatedNodeType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)">getValidatedNodeTypeIfKnown</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node)</code></th>
<td class="colLast">
<div class="block">Returns the type assigned to a node by validation, or null if unknown.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)">getValidatedNodeTypeIfKnown</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregatingSelectScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AggregatingSelectScope.html#nullifyType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">nullifyType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingScope.html#nullifyType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">nullifyType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EmptyScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/EmptyScope.html#nullifyType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">nullifyType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorScope.html#nullifyType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">nullifyType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Converts the type of an expression to nullable, if the context
warrants it.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingScope.html#resolveColumn(java.lang.String,org.apache.calcite.sql.SqlNode)">resolveColumn</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;ctx)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EmptyScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/EmptyScope.html#resolveColumn(java.lang.String,org.apache.calcite.sql.SqlNode)">resolveColumn</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;ctx)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ListScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/ListScope.html#resolveColumn(java.lang.String,org.apache.calcite.sql.SqlNode)">resolveColumn</a></span>&#8203;(java.lang.String&nbsp;columnName,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;ctx)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">OrderByScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/OrderByScope.html#resolveColumn(java.lang.String,org.apache.calcite.sql.SqlNode)">resolveColumn</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;ctx)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorScope.html#resolveColumn(java.lang.String,org.apache.calcite.sql.SqlNode)">resolveColumn</a></span>&#8203;(java.lang.String&nbsp;name,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;ctx)</code></th>
<td class="colLast">
<div class="block">Resolves a single identifier to a column, and returns the datatype of
that column.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorScope.Resolve.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorScope.Resolve.html#rowType()">rowType</a></span>()</code></th>
<td class="colLast">
<div class="block">The row type of the found namespace, nullable if the lookup has
looked into outer joins.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedAggFunction.html#toSql(org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#toStruct(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlNode)">toStruct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;unnest)</code></th>
<td class="colLast">
<div class="block">Converts a type to a struct if it is not already.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected abstract <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Validates this scope and returns the type of the records it returns.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AliasNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AliasNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CollectNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/CollectNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FieldNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/FieldNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">IdentifierNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/IdentifierNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JoinNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/JoinNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MatchRecognizeNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/MatchRecognizeNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ParameterNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/ParameterNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ProcedureNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/ProcedureNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SchemaNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SchemaNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SelectNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SelectNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SetopNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SetopNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableConstructorNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/TableConstructorNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/TableNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">UnnestNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/UnnestNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">WithItemNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/WithItemNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">WithNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/WithNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateSelectList(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)">validateSelectList</a></span>&#8203;(<a href="../../../sql/SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a>&nbsp;selectItems,
<a href="../../../sql/SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a>&nbsp;select,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateUsingCol(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.SqlNode)">validateUsingCol</a></span>&#8203;(<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;id,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;leftOrRight)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.DeriveTypeVisitor.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.DeriveTypeVisitor.html#visit(org.apache.calcite.sql.SqlCall)">visit</a></span>&#8203;(<a href="../../../sql/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><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.DeriveTypeVisitor.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.DeriveTypeVisitor.html#visit(org.apache.calcite.sql.SqlDataTypeSpec)">visit</a></span>&#8203;(<a href="../../../sql/SqlDataTypeSpec.html" title="class in org.apache.calcite.sql">SqlDataTypeSpec</a>&nbsp;dataType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.DeriveTypeVisitor.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.DeriveTypeVisitor.html#visit(org.apache.calcite.sql.SqlDynamicParam)">visit</a></span>&#8203;(<a href="../../../sql/SqlDynamicParam.html" title="class in org.apache.calcite.sql">SqlDynamicParam</a>&nbsp;param)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.DeriveTypeVisitor.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.DeriveTypeVisitor.html#visit(org.apache.calcite.sql.SqlIdentifier)">visit</a></span>&#8203;(<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;id)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.DeriveTypeVisitor.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.DeriveTypeVisitor.html#visit(org.apache.calcite.sql.SqlIntervalQualifier)">visit</a></span>&#8203;(<a href="../../../sql/SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a>&nbsp;intervalQualifier)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.DeriveTypeVisitor.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.DeriveTypeVisitor.html#visit(org.apache.calcite.sql.SqlLiteral)">visit</a></span>&#8203;(<a href="../../../sql/SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a>&nbsp;literal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.DeriveTypeVisitor.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.DeriveTypeVisitor.html#visit(org.apache.calcite.sql.SqlNodeList)">visit</a></span>&#8203;(<a href="../../../sql/SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a>&nbsp;nodeList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedAggFunction.html#getParameterTypes(org.apache.calcite.rel.type.RelDataTypeFactory)">getParameterTypes</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedAggFunction.html#getParamTypes()">getParamTypes</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedAggFunction.html#toSql(java.util.List)">toSql</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.List&lt;java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateMeasure(org.apache.calcite.sql.SqlMatchRecognize,org.apache.calcite.sql.validate.MatchRecognizeScope,boolean)">validateMeasure</a></span>&#8203;(<a href="../../../sql/SqlMatchRecognize.html" title="class in org.apache.calcite.sql">SqlMatchRecognize</a>&nbsp;mr,
<a href="../../../sql/validate/MatchRecognizeScope.html" title="class in org.apache.calcite.sql.validate">MatchRecognizeScope</a>&nbsp;scope,
boolean&nbsp;allRows)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#checkCharsetAndCollateConsistentIfCharType(org.apache.calcite.rel.type.RelDataType)">checkCharsetAndCollateConsistentIfCharType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#checkConstraint(org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">checkConstraint</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a>&nbsp;validatorTable,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;source,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Validates insert values against the constraint of a modifiable view.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#checkConstraint(org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.sql.SqlUpdate,org.apache.calcite.rel.type.RelDataType)">checkConstraint</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a>&nbsp;validatorTable,
<a href="../../../sql/SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a>&nbsp;update,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Validates updates against the constraint of a modifiable view.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#checkFieldCount(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorTable,java.util.List,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">checkFieldCount</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../../../sql/validate/SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a>&nbsp;table,
java.util.List&lt;<a href="../../../schema/ColumnStrategy.html" title="enum in org.apache.calcite.schema">ColumnStrategy</a>&gt;&nbsp;strategies,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowTypeToValidate,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;realTargetRowType,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;source,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;logicalSourceRowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;logicalTargetRowType)</code></th>
<td class="colLast">
<div class="block">Check the field count of sql insert source and target node row type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#checkTypeAssignment(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlNode)">checkTypeAssignment</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceRowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;query)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.lang.Object</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedTableMacro.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedTableMacro.html#coerce(java.lang.Object,org.apache.calcite.rel.type.RelDataType)">coerce</a></span>&#8203;(java.lang.Object&nbsp;o,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorTable.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorTable.html#columnHasDefaultValue(org.apache.calcite.rel.type.RelDataType,int,org.apache.calcite.sql2rel.InitializerContext)">columnHasDefaultValue</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;ordinal,
<a href="../../../sql2rel/InitializerContext.html" title="interface in org.apache.calcite.sql2rel">InitializerContext</a>&nbsp;initializerContext)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#convertToStruct(org.apache.calcite.rel.type.RelDataType)">convertToStruct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#createJoinType(org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.List)">createJoinType</a></span>&#8203;(<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;systemFieldList)</code></th>
<td class="colLast">
<div class="block">Returns the type the row which results when two relations are joined.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorCatalogReader.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorCatalogReader.html#createTypeFromProjection(org.apache.calcite.rel.type.RelDataType,java.util.List)">createTypeFromProjection</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;java.lang.String&gt;&nbsp;columnNameList)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#createTypeFromProjection(org.apache.calcite.rel.type.RelDataType,java.util.List,org.apache.calcite.rel.type.RelDataTypeFactory,boolean)">createTypeFromProjection</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;java.lang.String&gt;&nbsp;columnNameList,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
boolean&nbsp;caseSensitive)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#deriveJoinRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.core.JoinRelType,org.apache.calcite.rel.type.RelDataTypeFactory,java.util.List,java.util.List)">deriveJoinRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightType,
<a href="../../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
java.util.List&lt;java.lang.String&gt;&nbsp;fieldNameList,
java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;systemFieldList)</code></th>
<td class="colLast">
<div class="block">Derives the type of a join relational expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#deriveNaturalJoinColumnList(org.apache.calcite.sql.validate.SqlNameMatcher,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">deriveNaturalJoinColumnList</a></span>&#8203;(<a href="../../../sql/validate/SqlNameMatcher.html" title="interface in org.apache.calcite.sql.validate">SqlNameMatcher</a>&nbsp;nameMatcher,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;leftRowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rightRowType)</code></th>
<td class="colLast">
<div class="block">Derives the list of column names suitable for NATURAL JOIN.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#expandSelectItem(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType,java.util.List,java.util.Set,java.util.List,boolean)">expandSelectItem</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;selectItem,
<a href="../../../sql/SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a>&nbsp;select,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType,
java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;selectItems,
java.util.Set&lt;java.lang.String&gt;&nbsp;aliases,
java.util.List&lt;java.util.Map.Entry&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&gt;&nbsp;fields,
boolean&nbsp;includeSystemVars)</code></th>
<td class="colLast">
<div class="block">If <code>selectItem</code> is "*" or "TABLE.*", expands it and returns
true; otherwise writes the unexpanded item.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlNameMatcher.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlNameMatcher.html#field(org.apache.calcite.rel.type.RelDataType,java.lang.String)">field</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;fieldName)</code></th>
<td class="colLast">
<div class="block">Finds a field with a given name, using the current case-sensitivity,
returning null if not found.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlNameMatchers.BaseMatcher.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlNameMatchers.BaseMatcher.html#field(org.apache.calcite.rel.type.RelDataType,java.lang.String)">field</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;fieldName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorCatalogReader.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorCatalogReader.html#field(org.apache.calcite.rel.type.RelDataType,java.lang.String)">field</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;alias)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use
<a href="../../../sql/validate/SqlValidatorCatalogReader.html#nameMatcher()"><code>SqlValidatorCatalogReader.nameMatcher()</code></a>.<a href="../../../sql/validate/SqlNameMatcher.html#field(org.apache.calcite.rel.type.RelDataType,java.lang.String)"><code>SqlNameMatcher.field(RelDataType, String)</code></a></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static com.google.common.collect.ImmutableMap&lt;java.lang.Integer,&#8203;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#getIndexToFieldMap(java.util.List,org.apache.calcite.rel.type.RelDataType)">getIndexToFieldMap</a></span>&#8203;(java.util.List&lt;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;sourceFields,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetFields)</code></th>
<td class="colLast">
<div class="block">Gets a map of indexes from the source to fields in the target for the
intersecting set of source and target fields.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalSourceRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceRowType,
<a href="../../../sql/SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a>&nbsp;insert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalTargetRowType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../../../sql/SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a>&nbsp;insert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#getOrdinalBitSet(org.apache.calcite.rel.type.RelDataType,java.util.Map)">getOrdinalBitSet</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceRowType,
java.util.Map&lt;java.lang.Integer,&#8203;<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&gt;&nbsp;indexToField)</code></th>
<td class="colLast">
<div class="block">Gets the bit-set to the column ordinals in the source for columns that
intersect in the target.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#getOrdinalBitSet(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getOrdinalBitSet</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;sourceRowType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Gets the bit-set to the column ordinals in the source for columns that intersect in the target.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.lang.String</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AliasNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AliasNamespace.html#getString(org.apache.calcite.rel.type.RelDataType)">getString</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#getTargetField(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorCatalogReader,org.apache.calcite.plan.RelOptTable)">getTargetField</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;typeFactory,
<a href="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;id,
<a href="../../../sql/validate/SqlValidatorCatalogReader.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorCatalogReader</a>&nbsp;catalogReader,
<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;table)</code></th>
<td class="colLast">
<div class="block">Resolve a target column name in the target table.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingScope.html#hasAmbiguousField(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataTypeField,java.lang.String,org.apache.calcite.sql.validate.SqlNameMatcher)">hasAmbiguousField</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
<a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a>&nbsp;field,
java.lang.String&nbsp;columnName,
<a href="../../../sql/validate/SqlNameMatcher.html" title="interface in org.apache.calcite.sql.validate">SqlNameMatcher</a>&nbsp;nameMatcher)</code></th>
<td class="colLast">
<div class="block">Returns whether <code>rowType</code> contains more than one star column or
fields with the same name, which implies ambiguous column.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#inferUnknownTypes(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">inferUnknownTypes</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;inferredType,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorUtil.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorUtil.html#lookupField(boolean,org.apache.calcite.rel.type.RelDataType,java.lang.String)">lookupField</a></span>&#8203;(boolean&nbsp;caseSensitive,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;columnName)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../../../sql/validate/SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#lookupFieldNamespace(org.apache.calcite.rel.type.RelDataType,java.lang.String)">lookupFieldNamespace</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.String&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#maybeCast(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">maybeCast</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;currentType,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;desiredType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AggregatingSelectScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AggregatingSelectScope.html#nullifyType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">nullifyType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingScope.html#nullifyType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">nullifyType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">EmptyScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/EmptyScope.html#nullifyType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">nullifyType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorScope.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorScope.html#nullifyType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">nullifyType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Converts the type of an expression to nullable, if the context
warrants it.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../sql/validate/SqlValidatorScope.Step.html" title="class in org.apache.calcite.sql.validate">SqlValidatorScope.Step</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorScope.Path.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorScope.Path.html#plus(org.apache.calcite.rel.type.RelDataType,int,java.lang.String,org.apache.calcite.rel.type.StructKind)">plus</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;i,
java.lang.String&nbsp;name,
<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind)</code></th>
<td class="colLast">
<div class="block">Creates a path that consists of this path plus one additional step.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#setType(org.apache.calcite.rel.type.RelDataType)">setType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingNamespace.html#setType(org.apache.calcite.rel.type.RelDataType)">setType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FieldNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/FieldNamespace.html#setType(org.apache.calcite.rel.type.RelDataType)">setType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorNamespace.html#setType(org.apache.calcite.rel.type.RelDataType)">setType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Sets the type of this namespace.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#setValidatedNodeType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">setValidatedNodeType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">This method should not be in the <a href="../../../sql/validate/SqlValidator.html" title="interface in org.apache.calcite.sql.validate"><code>SqlValidator</code></a>
interface.</div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#setValidatedNodeType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">setValidatedNodeType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Saves the type of a <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql"><code>SqlNode</code></a>, now that it has been validated.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedAggFunction.html#toSql(org.apache.calcite.rel.type.RelDataType)">toSql</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#toStruct(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlNode)">toStruct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;unnest)</code></th>
<td class="colLast">
<div class="block">Converts a type to a struct if it is not already.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#validate(org.apache.calcite.rel.type.RelDataType)">validate</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">DelegatingNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/DelegatingNamespace.html#validate(org.apache.calcite.rel.type.RelDataType)">validate</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorNamespace.html#validate(org.apache.calcite.rel.type.RelDataType)">validate</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Validates this namespace.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateFrom(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)">validateFrom</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope)</code></th>
<td class="colLast">
<div class="block">Validates the FROM clause of a query, or (recursively) a child node of
the FROM clause: AS, OVER, JOIN, VALUES, or sub-query.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected abstract <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AbstractNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Validates this scope and returns the type of the records it returns.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AliasNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/AliasNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">CollectNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/CollectNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">FieldNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/FieldNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">IdentifierNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/IdentifierNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">JoinNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/JoinNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">MatchRecognizeNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/MatchRecognizeNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ParameterNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/ParameterNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">ProcedureNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/ProcedureNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SchemaNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SchemaNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SelectNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SelectNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SetopNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SetopNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableConstructorNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/TableConstructorNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TableNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/TableNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">UnnestNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/UnnestNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">WithItemNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/WithItemNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">WithNamespace.</span><code><span class="memberNameLink"><a href="../../../sql/validate/WithNamespace.html#validateImpl(org.apache.calcite.rel.type.RelDataType)">validateImpl</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</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">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateNamespace(org.apache.calcite.sql.validate.SqlValidatorNamespace,org.apache.calcite.rel.type.RelDataType)">validateNamespace</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a>&nbsp;namespace,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Validates a namespace.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">validateQuery</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Checks that a query is valid.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">validateQuery</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</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">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateSelect(org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)">validateSelect</a></span>&#8203;(<a href="../../../sql/SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a>&nbsp;select,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Validates a SELECT statement.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateSelectList(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)">validateSelectList</a></span>&#8203;(<a href="../../../sql/SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a>&nbsp;selectItems,
<a href="../../../sql/SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a>&nbsp;select,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</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">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateUnnest(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">validateUnnest</a></span>&#8203;(<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</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">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateValues(org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)">validateValues</a></span>&#8203;(<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType,
<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope)</code></th>
<td class="colLast">
<div class="block">Validates a VALUES clause.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#deriveConstructorType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,org.apache.calcite.sql.SqlFunction,java.util.List)">deriveConstructorType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;unresolvedConstructor,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;resolvedConstructor,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">
<div class="block">Derives the type of a constructor.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#deriveConstructorType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,org.apache.calcite.sql.SqlFunction,java.util.List)">deriveConstructorType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;unresolvedConstructor,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;resolvedConstructor,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../runtime/CalciteException.html" title="class in org.apache.calcite.runtime">CalciteException</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">handleUnresolvedFunction</a></span>&#8203;(<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;unresolvedFunction,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
java.util.List&lt;java.lang.String&gt;&nbsp;argNames)</code></th>
<td class="colLast">
<div class="block">Handles a call to a function which cannot be resolved.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../runtime/CalciteException.html" title="class in org.apache.calcite.runtime">CalciteException</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">handleUnresolvedFunction</a></span>&#8203;(<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;unresolvedFunction,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
java.util.List&lt;java.lang.String&gt;&nbsp;argNames)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlUserDefinedAggFunction.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlUserDefinedAggFunction.html#toSql(java.util.List)">toSql</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">validateColumnListParams</a></span>&#8203;(<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;function,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">
<div class="block">Validates a COLUMN_LIST parameter</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">validateColumnListParams</a></span>&#8203;(<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;function,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;argTypes,
java.util.List&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;operands)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidator.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidator.html#validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)">validateParameterizedExpression</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;topNode,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;nameToTypeMap)</code></th>
<td class="colLast">
<div class="block">Validates an expression tree.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlValidatorImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorImpl.html#validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)">validateParameterizedExpression</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;topNode,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;nameToTypeMap)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructors in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/validate/FieldNamespace.html#%3Cinit%3E(org.apache.calcite.sql.validate.SqlValidatorImpl,org.apache.calcite.rel.type.RelDataType)">FieldNamespace</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorImpl.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl</a>&nbsp;validator,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;dataType)</code></th>
<td class="colLast">
<div class="block">Creates a FieldNamespace.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/validate/ParameterNamespace.html#%3Cinit%3E(org.apache.calcite.sql.validate.SqlValidatorImpl,org.apache.calcite.rel.type.RelDataType)">ParameterNamespace</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorImpl.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl</a>&nbsp;validator,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/validate/SqlValidatorScope.Step.html#%3Cinit%3E(org.apache.calcite.sql.validate.SqlValidatorScope.Path,org.apache.calcite.rel.type.RelDataType,int,java.lang.String,org.apache.calcite.rel.type.StructKind)">Step</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.Path.html" title="class in org.apache.calcite.sql.validate">SqlValidatorScope.Path</a>&nbsp;parent,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;i,
java.lang.String&nbsp;name,
<a href="../StructKind.html" title="enum in org.apache.calcite.rel.type">StructKind</a>&nbsp;kind)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Constructor parameters in <a href="../../../sql/validate/package-summary.html">org.apache.calcite.sql.validate</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../sql/validate/ParameterScope.html#%3Cinit%3E(org.apache.calcite.sql.validate.SqlValidatorImpl,java.util.Map)">ParameterScope</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorImpl.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl</a>&nbsp;validator,
java.util.Map&lt;java.lang.String,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;nameToTypeMap)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../sql/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="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../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="../../../sql/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="../../../sql/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="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../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="../../../sql/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="../../../sql/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="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../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="../../../sql/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="../../../sql/SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a>&nbsp;opName,
<a href="../../../sql/type/SqlReturnTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlReturnTypeInference</a>&nbsp;returnTypeInference,
<a href="../../../sql/type/SqlOperandTypeInference.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeInference</a>&nbsp;operandTypeInference,
<a href="../../../sql/type/SqlOperandTypeChecker.html" title="interface in org.apache.calcite.sql.type">SqlOperandTypeChecker</a>&nbsp;operandTypeChecker,
java.util.List&lt;<a href="../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>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql.validate.implicit">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql/validate/implicit/package-summary.html">org.apache.calcite.sql.validate.implicit</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/validate/implicit/package-summary.html">org.apache.calcite.sql.validate.implicit</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#commonTypeForBinaryComparison(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">commonTypeForBinaryComparison</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Determines common type for a comparison operator when one operand is String type and the
other is not.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#commonTypeForBinaryComparison(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">commonTypeForBinaryComparison</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Determines common type for a comparison operator whose operands are String
type and the other (non String) type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getTightestCommonType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getTightestCommonType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Case1: type widening with no precision loss.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#getTightestCommonType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getTightestCommonType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Case1: type widening with no precision loss.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getWiderTypeFor(java.util.List,boolean)">getWiderTypeFor</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
boolean&nbsp;stringPromotion)</code></th>
<td class="colLast">
<div class="block">Similar to <a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)"><code>AbstractTypeCoercion.getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType, org.apache.calcite.rel.type.RelDataType, boolean)</code></a>, but can handle
sequence types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#getWiderTypeFor(java.util.List,boolean)">getWiderTypeFor</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
boolean&nbsp;stringPromotion)</code></th>
<td class="colLast">
<div class="block">Similar to <a href="../../../sql/validate/implicit/TypeCoercion.html#getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)"><code>TypeCoercion.getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType, org.apache.calcite.rel.type.RelDataType, boolean)</code></a>, but can handle
sequence types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getWiderTypeForDecimal(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getWiderTypeForDecimal</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Finds a wider type when one or both types are decimal type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#getWiderTypeForDecimal(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getWiderTypeForDecimal</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Finds a wider type when one or both types are decimal type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">getWiderTypeForTwo</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2,
boolean&nbsp;stringPromotion)</code></th>
<td class="colLast">
<div class="block">Case2: type widening.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">getWiderTypeForTwo</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2,
boolean&nbsp;stringPromotion)</code></th>
<td class="colLast">
<div class="block">Case2: type widening.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#implicitCast(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.type.SqlTypeFamily)">implicitCast</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;in,
<a href="../../../sql/type/SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&nbsp;expected)</code></th>
<td class="colLast">
<div class="block">Type coercion based on the inferred type from passed in operand
and the <a href="../../../sql/type/SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type"><code>SqlTypeFamily</code></a> defined in the checkers,
e.g.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#promoteToVarChar(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">promoteToVarChar</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Promote all the way to VARCHAR.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#syncAttributes(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">syncAttributes</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType)</code></th>
<td class="colLast">
<div class="block">Sync the data type additional attributes before casting,
i.e.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/validate/implicit/package-summary.html">org.apache.calcite.sql.validate.implicit</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#partitionByCharacter(java.util.List)">partitionByCharacter</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql/validate/implicit/package-summary.html">org.apache.calcite.sql.validate.implicit</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercionImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercionImpl.html#binaryArithmeticWithStrings(org.apache.calcite.sql.SqlCallBinding,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">binaryArithmeticWithStrings</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;binding,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;left,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;right)</code></th>
<td class="colLast">
<div class="block">For numeric and string operands, cast string to data type of the other operand.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercionImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercionImpl.html#booleanEquality(org.apache.calcite.sql.SqlCallBinding,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">booleanEquality</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;binding,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;left,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;right)</code></th>
<td class="colLast">
<div class="block">Cast "BOOLEAN = NUMERIC" to "NUMERIC = NUMERIC".</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#castTo(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">castTo</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">It should not be used directly, because some other work should be done
before cast operation, see <a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#coerceColumnType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNodeList,int,org.apache.calcite.rel.type.RelDataType)"><code>AbstractTypeCoercion.coerceColumnType(org.apache.calcite.sql.validate.SqlValidatorScope, org.apache.calcite.sql.SqlNodeList, int, org.apache.calcite.rel.type.RelDataType)</code></a>, <a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#coerceOperandType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,int,org.apache.calcite.rel.type.RelDataType)"><code>AbstractTypeCoercion.coerceOperandType(org.apache.calcite.sql.validate.SqlValidatorScope, org.apache.calcite.sql.SqlCall, int, org.apache.calcite.rel.type.RelDataType)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#coerceColumnType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNodeList,int,org.apache.calcite.rel.type.RelDataType)">coerceColumnType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a>&nbsp;nodeList,
int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType)</code></th>
<td class="colLast">
<div class="block">Cast column at index <code>index</code> to target type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#coerceOperandType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,int,org.apache.calcite.rel.type.RelDataType)">coerceOperandType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;call,
int&nbsp;index,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType)</code></th>
<td class="colLast">
<div class="block">Cast operand at index <code>index</code> to target type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#commonTypeForBinaryComparison(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">commonTypeForBinaryComparison</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Determines common type for a comparison operator when one operand is String type and the
other is not.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#commonTypeForBinaryComparison(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">commonTypeForBinaryComparison</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Determines common type for a comparison operator whose operands are String
type and the other (non String) type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercionImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercionImpl.html#dateTimeStringEquality(org.apache.calcite.sql.SqlCallBinding,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">dateTimeStringEquality</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;binding,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;left,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;right)</code></th>
<td class="colLast">
<div class="block">Datetime and string equality: cast string type to datetime type, SqlToRelConverter already
make the conversion but we still keep this interface overridable
so user can have their custom implementation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getTightestCommonType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getTightestCommonType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Case1: type widening with no precision loss.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#getTightestCommonType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getTightestCommonType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Case1: type widening with no precision loss.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getWiderTypeForDecimal(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getWiderTypeForDecimal</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Finds a wider type when one or both types are decimal type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#getWiderTypeForDecimal(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">getWiderTypeForDecimal</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Finds a wider type when one or both types are decimal type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">getWiderTypeForTwo</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2,
boolean&nbsp;stringPromotion)</code></th>
<td class="colLast">
<div class="block">Case2: type widening.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)">getWiderTypeForTwo</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2,
boolean&nbsp;stringPromotion)</code></th>
<td class="colLast">
<div class="block">Case2: type widening.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#implicitCast(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.type.SqlTypeFamily)">implicitCast</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;in,
<a href="../../../sql/type/SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&nbsp;expected)</code></th>
<td class="colLast">
<div class="block">Type coercion based on the inferred type from passed in operand
and the <a href="../../../sql/type/SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type"><code>SqlTypeFamily</code></a> defined in the checkers,
e.g.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#needToCast(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">needToCast</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType)</code></th>
<td class="colLast">
<div class="block">Decide if a SqlNode should be casted to target type, derived class
can override this strategy.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#promoteToVarChar(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">promoteToVarChar</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type2)</code></th>
<td class="colLast">
<div class="block">Promote all the way to VARCHAR.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#rowTypeCoercion(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,int,org.apache.calcite.rel.type.RelDataType)">rowTypeCoercion</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;query,
int&nbsp;columnIndex,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType)</code></th>
<td class="colLast">
<div class="block">Widen a SqlNode ith column type to target type, mainly used for set
operations like UNION, INTERSECT and EXCEPT.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercionImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercionImpl.html#rowTypeCoercion(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,int,org.apache.calcite.rel.type.RelDataType)">rowTypeCoercion</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;query,
int&nbsp;columnIndex,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType)</code></th>
<td class="colLast">
<div class="block">Widen a SqlNode's field type to target type,
mainly used for set operations like UNION, INTERSECT and EXCEPT.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>(package private) <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#syncAttributes(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">syncAttributes</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType)</code></th>
<td class="colLast">
<div class="block">Sync the data type additional attributes before casting,
i.e.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#updateInferredColumnType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,int,org.apache.calcite.rel.type.RelDataType)">updateInferredColumnType</a></span>&#8203;(<a href="../../../sql/validate/SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>&nbsp;scope,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;query,
int&nbsp;columnIndex,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetType1)</code></th>
<td class="colLast">
<div class="block">Update inferred row type for a query, i.e.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#updateInferredType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">updateInferredType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Update inferred type for a SqlNode.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../sql/validate/implicit/package-summary.html">org.apache.calcite.sql.validate.implicit</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#builtinFunctionCoercion(org.apache.calcite.sql.SqlCallBinding,java.util.List,java.util.List)">builtinFunctionCoercion</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;binding,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;operandTypes,
java.util.List&lt;<a href="../../../sql/type/SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&gt;&nbsp;expectedFamilies)</code></th>
<td class="colLast">
<div class="block">Type coercion with inferred type from passed in arguments and the
<a href="../../../sql/type/SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type"><code>SqlTypeFamily</code></a> defined in the checkers, e.g.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercionImpl.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercionImpl.html#builtinFunctionCoercion(org.apache.calcite.sql.SqlCallBinding,java.util.List,java.util.List)">builtinFunctionCoercion</a></span>&#8203;(<a href="../../../sql/SqlCallBinding.html" title="class in org.apache.calcite.sql">SqlCallBinding</a>&nbsp;binding,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;operandTypes,
java.util.List&lt;<a href="../../../sql/type/SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&gt;&nbsp;expectedFamilies)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#canImplicitTypeCast(java.util.List,java.util.List)">canImplicitTypeCast</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types,
java.util.List&lt;<a href="../../../sql/type/SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&gt;&nbsp;families)</code></th>
<td class="colLast">
<div class="block">Check if the types and families can have implicit type coercion.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getWiderTypeFor(java.util.List,boolean)">getWiderTypeFor</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
boolean&nbsp;stringPromotion)</code></th>
<td class="colLast">
<div class="block">Similar to <a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)"><code>AbstractTypeCoercion.getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType, org.apache.calcite.rel.type.RelDataType, boolean)</code></a>, but can handle
sequence types.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">TypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/TypeCoercion.html#getWiderTypeFor(java.util.List,boolean)">getWiderTypeFor</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;typeList,
boolean&nbsp;stringPromotion)</code></th>
<td class="colLast">
<div class="block">Similar to <a href="../../../sql/validate/implicit/TypeCoercion.html#getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,boolean)"><code>TypeCoercion.getWiderTypeForTwo(org.apache.calcite.rel.type.RelDataType, org.apache.calcite.rel.type.RelDataType, boolean)</code></a>, but can handle
sequence types.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">AbstractTypeCoercion.</span><code><span class="memberNameLink"><a href="../../../sql/validate/implicit/AbstractTypeCoercion.html#partitionByCharacter(java.util.List)">partitionByCharacter</a></span>&#8203;(java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.sql2rel">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../sql2rel/package-summary.html">org.apache.calcite.sql2rel</a></h3>
<table class="useSummary">
<caption><span>Fields in <a href="../../../sql2rel/package-summary.html">org.apache.calcite.sql2rel</a> declared as <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.html#flattenedRootType">flattenedRootType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql2rel/package-summary.html">org.apache.calcite.sql2rel</a> that return <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.HistogramShuttle.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.HistogramShuttle.html#computeHistogramType(org.apache.calcite.rel.type.RelDataType)">computeHistogramType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns the type for a histogram function.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.html#consistentType(org.apache.calcite.sql2rel.SqlRexContext,org.apache.calcite.sql.type.SqlOperandTypeChecker.Consistency,java.util.List)">consistentType</a></span>&#8203;(<a href="../../../sql2rel/SqlRexContext.html" title="interface in org.apache.calcite.sql2rel">SqlRexContext</a>&nbsp;cx,
<a href="../../../sql/type/SqlOperandTypeChecker.Consistency.html" title="enum in org.apache.calcite.sql.type">SqlOperandTypeChecker.Consistency</a>&nbsp;consistency,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#getDynamicParamType(int)">getDynamicParamType</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Returns the type inferred for a dynamic parameter.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.RewriteRexShuttle.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.RewriteRexShuttle.html#removeDistinct(org.apache.calcite.rel.type.RelDataType)">removeDistinct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql2rel/package-summary.html">org.apache.calcite.sql2rel</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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 <a href="../../../linq4j/Ord.html" title="class in org.apache.calcite.linq4j">Ord</a>&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.html#getNewFieldForOldInput(int)">getNewFieldForOldInput</a></span>&#8203;(int&nbsp;oldOrdinal)</code></th>
<td class="colLast">
<div class="block">Maps the ordinal of a field pre-flattening to the ordinal of the
corresponding field post-flattening, and also returns its type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../linq4j/Ord.html" title="class in org.apache.calcite.linq4j">Ord</a>&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.html#getNewFieldForOldInput(int,int)">getNewFieldForOldInput</a></span>&#8203;(int&nbsp;oldOrdinal,
int&nbsp;innerOrdinal)</code></th>
<td class="colLast">
<div class="block">Finds type and new ordinal relative to new inputs by oldOrdinal and
innerOrdinal indexes.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../sql2rel/package-summary.html">org.apache.calcite.sql2rel</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#castNullLiteralIfNeeded(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType)">castNullLiteralIfNeeded</a></span>&#8203;(<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.HistogramShuttle.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.HistogramShuttle.html#computeHistogramType(org.apache.calcite.rel.type.RelDataType)">computeHistogramType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">
<div class="block">Returns the type for a histogram function.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../plan/RelOptUtil.Exists.html" title="class in org.apache.calcite.plan">RelOptUtil.Exists</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#convertExists(org.apache.calcite.sql.SqlNode,org.apache.calcite.plan.RelOptUtil.SubQueryType,org.apache.calcite.plan.RelOptUtil.Logic,boolean,org.apache.calcite.rel.type.RelDataType)">convertExists</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;seek,
<a href="../../../plan/RelOptUtil.SubQueryType.html" title="enum in org.apache.calcite.plan">RelOptUtil.SubQueryType</a>&nbsp;subQueryType,
<a href="../../../plan/RelOptUtil.Logic.html" title="enum in org.apache.calcite.plan">RelOptUtil.Logic</a>&nbsp;logic,
boolean&nbsp;notIn,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetDataType)</code></th>
<td class="colLast">
<div class="block">Converts an EXISTS or IN predicate into a join.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#convertLiteralInValuesList(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql2rel.SqlToRelConverter.Blackboard,org.apache.calcite.rel.type.RelDataType,int)">convertLiteralInValuesList</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;sqlNode,
<a href="../../../sql2rel/SqlToRelConverter.Blackboard.html" title="class in org.apache.calcite.sql2rel">SqlToRelConverter.Blackboard</a>&nbsp;bb,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
int&nbsp;iField)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#convertQueryOrInList(org.apache.calcite.sql2rel.SqlToRelConverter.Blackboard,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">convertQueryOrInList</a></span>&#8203;(<a href="../../../sql2rel/SqlToRelConverter.Blackboard.html" title="class in org.apache.calcite.sql2rel">SqlToRelConverter.Blackboard</a>&nbsp;bb,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;seek,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../RelRoot.html" title="class in org.apache.calcite.rel">RelRoot</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#convertQueryRecursive(org.apache.calcite.sql.SqlNode,boolean,org.apache.calcite.rel.type.RelDataType)">convertQueryRecursive</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;query,
boolean&nbsp;top,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Recursively converts a query to a relational expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#convertRowValues(org.apache.calcite.sql2rel.SqlToRelConverter.Blackboard,org.apache.calcite.sql.SqlNode,java.util.Collection,boolean,org.apache.calcite.rel.type.RelDataType)">convertRowValues</a></span>&#8203;(<a href="../../../sql2rel/SqlToRelConverter.Blackboard.html" title="class in org.apache.calcite.sql2rel">SqlToRelConverter.Blackboard</a>&nbsp;bb,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;rowList,
java.util.Collection&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&gt;&nbsp;rows,
boolean&nbsp;allowLiteralsOnly,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#convertValues(org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">convertValues</a></span>&#8203;(<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;values,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Converts a SELECT statement's parse tree into a relational expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#convertValuesImpl(org.apache.calcite.sql2rel.SqlToRelConverter.Blackboard,org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType)">convertValuesImpl</a></span>&#8203;(<a href="../../../sql2rel/SqlToRelConverter.Blackboard.html" title="class in org.apache.calcite.sql2rel">SqlToRelConverter.Blackboard</a>&nbsp;bb,
<a href="../../../sql/SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>&nbsp;values,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;targetRowType)</code></th>
<td class="colLast">
<div class="block">Converts a values clause (as in "INSERT INTO T(x,y) VALUES (1,2)") into a
relational expression.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#createSource(org.apache.calcite.plan.RelOptTable,org.apache.calcite.rel.RelNode,org.apache.calcite.schema.ModifiableView,org.apache.calcite.rel.type.RelDataType)">createSource</a></span>&#8203;(<a href="../../../plan/RelOptTable.html" title="interface in org.apache.calcite.plan">RelOptTable</a>&nbsp;targetTable,
<a href="../../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;source,
<a href="../../../schema/ModifiableView.html" title="interface in org.apache.calcite.schema">ModifiableView</a>&nbsp;modifiableView,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;delegateRowType)</code></th>
<td class="colLast">
<div class="block">Wraps a relational expression in the projects and filters implied by
a <a href="../../../schema/ModifiableView.html" title="interface in org.apache.calcite.schema"><code>ModifiableView</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">SqlToRelConverter.</span><code><span class="memberNameLink"><a href="../../../sql2rel/SqlToRelConverter.html#ensureSqlType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode)">ensureSqlType</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;node)</code></th>
<td class="colLast">
<div class="block">Ensures that an expression has a given <a href="../../../sql/type/SqlTypeName.html" title="enum in org.apache.calcite.sql.type"><code>SqlTypeName</code></a>, applying a
cast if necessary.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.AvgVarianceConvertlet.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.AvgVarianceConvertlet.html#expandAvg(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql2rel.SqlRexContext)">expandAvg</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;arg,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;avgType,
<a href="../../../sql2rel/SqlRexContext.html" title="interface in org.apache.calcite.sql2rel">SqlRexContext</a>&nbsp;cx)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.RegrCovarianceConvertlet.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.RegrCovarianceConvertlet.html#expandCovariance(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql2rel.SqlRexContext,boolean)">expandCovariance</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;arg0Input,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;arg1Input,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;dependent,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;varType,
<a href="../../../sql2rel/SqlRexContext.html" title="interface in org.apache.calcite.sql2rel">SqlRexContext</a>&nbsp;cx,
boolean&nbsp;biased)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.RegrCovarianceConvertlet.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.RegrCovarianceConvertlet.html#expandRegrSzz(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql2rel.SqlRexContext,boolean)">expandRegrSzz</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;arg1,
<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;arg2,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;avgType,
<a href="../../../sql2rel/SqlRexContext.html" title="interface in org.apache.calcite.sql2rel">SqlRexContext</a>&nbsp;cx,
boolean&nbsp;variance)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.AvgVarianceConvertlet.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.AvgVarianceConvertlet.html#expandVariance(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql2rel.SqlRexContext,boolean,boolean)">expandVariance</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;argInput,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;varType,
<a href="../../../sql2rel/SqlRexContext.html" title="interface in org.apache.calcite.sql2rel">SqlRexContext</a>&nbsp;cx,
boolean&nbsp;biased,
boolean&nbsp;sqrt)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private void</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.html#flattenNullLiteral(org.apache.calcite.rel.type.RelDataType,java.util.List)">flattenNullLiteral</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
java.util.List&lt;<a href="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>,&#8203;java.lang.String&gt;&gt;&nbsp;flattenedExps)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.AvgVarianceConvertlet.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.AvgVarianceConvertlet.html#getCastedSqlNode(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.parser.SqlParserPos,org.apache.calcite.rex.RexNode)">getCastedSqlNode</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;argInput,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;varType,
<a href="../../../sql/parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a>&nbsp;pos,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;argRex)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.RegrCovarianceConvertlet.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.RegrCovarianceConvertlet.html#getCastedSqlNode(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.parser.SqlParserPos,org.apache.calcite.rex.RexNode)">getCastedSqlNode</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;argInput,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;varType,
<a href="../../../sql/parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a>&nbsp;pos,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;argRex)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.html#getPostFlatteningOrdinal(org.apache.calcite.rel.type.RelDataType,int)">getPostFlatteningOrdinal</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;preFlattenRowType,
int&nbsp;preFlattenOrdinal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelDecorrelator.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelDecorrelator.html#isWidening(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType)">isWidening</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type1)</code></th>
<td class="colLast">
<div class="block">Returns whether one type is just a widening of another.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.html#mod(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rex.RexNode,java.math.BigDecimal)">mod</a></span>&#8203;(<a href="../../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;resType,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;res,
java.math.BigDecimal&nbsp;val)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">InitializerExpressionFactory.</span><code><span class="memberNameLink"><a href="../../../sql2rel/InitializerExpressionFactory.html#newAttributeInitializer(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlFunction,int,java.util.List,org.apache.calcite.sql2rel.InitializerContext)">newAttributeInitializer</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;constructor,
int&nbsp;iAttribute,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;constructorArgs,
<a href="../../../sql2rel/InitializerContext.html" title="interface in org.apache.calcite.sql2rel">InitializerContext</a>&nbsp;context)</code></th>
<td class="colLast">
<div class="block">Creates an expression which evaluates to the initializer expression for a
particular attribute of a structured type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">NullInitializerExpressionFactory.</span><code><span class="memberNameLink"><a href="../../../sql2rel/NullInitializerExpressionFactory.html#newAttributeInitializer(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlFunction,int,java.util.List,org.apache.calcite.sql2rel.InitializerContext)">newAttributeInitializer</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
<a href="../../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a>&nbsp;constructor,
int&nbsp;iAttribute,
java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;constructorArgs,
<a href="../../../sql2rel/InitializerContext.html" title="interface in org.apache.calcite.sql2rel">InitializerContext</a>&nbsp;context)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private int</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.html#postFlattenSize(org.apache.calcite.rel.type.RelDataType)">postFlattenSize</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.RewriteRexShuttle.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.RewriteRexShuttle.html#removeDistinct(org.apache.calcite.rel.type.RelDataType)">removeDistinct</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.html#restructure(org.apache.calcite.rel.type.RelDataType)">restructure</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;structuredType)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private java.util.List&lt;<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelStructuredTypeFlattener.</span><code><span class="memberNameLink"><a href="../../../sql2rel/RelStructuredTypeFlattener.html#restructureFields(org.apache.calcite.rel.type.RelDataType)">restructureFields</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;structuredType)</code></th>
<td class="colLast">
<div class="block">When called with old root rowType it's known that flattened root (which may become input)
returns flat fields, so it simply refers flat fields by increasing index and collects them
back into struct constructor expressions if necessary.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Method parameters in <a href="../../../sql2rel/package-summary.html">org.apache.calcite.sql2rel</a> with type arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">StandardConvertletTable.</span><code><span class="memberNameLink"><a href="../../../sql2rel/StandardConvertletTable.html#consistentType(org.apache.calcite.sql2rel.SqlRexContext,org.apache.calcite.sql.type.SqlOperandTypeChecker.Consistency,java.util.List)">consistentType</a></span>&#8203;(<a href="../../../sql2rel/SqlRexContext.html" title="interface in org.apache.calcite.sql2rel">SqlRexContext</a>&nbsp;cx,
<a href="../../../sql/type/SqlOperandTypeChecker.Consistency.html" title="enum in org.apache.calcite.sql.type">SqlOperandTypeChecker.Consistency</a>&nbsp;consistency,
java.util.List&lt;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;&nbsp;types)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</section>
</li>
<li class="blockList">
<section role="region"><a id="org.apache.calcite.tools">
<!-- -->
</a>
<h3>Uses of <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> in <a href="../../../tools/package-summary.html">org.apache.calcite.tools</a></h3>
<table class="useSummary">
<caption><span>Methods in <a href="../../../tools/package-summary.html">org.apache.calcite.tools</a> that return types with arguments of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../util/Pair.html" title="class in org.apache.calcite.util">Pair</a>&lt;<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,&#8203;<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&gt;</code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">Planner.</span><code><span class="memberNameLink"><a href="../../../tools/Planner.html#validateAndGetType(org.apache.calcite.sql.SqlNode)">validateAndGetType</a></span>&#8203;(<a href="../../../sql/SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>&nbsp;sqlNode)</code></th>
<td class="colLast">
<div class="block">Validates a SQL statement.</div>
</td>
</tr>
</tbody>
</table>
<table class="useSummary">
<caption><span>Methods in <a href="../../../tools/package-summary.html">org.apache.calcite.tools</a> with parameters of type <a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</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="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelBuilder.</span><code><span class="memberNameLink"><a href="../../../tools/RelBuilder.html#convert(org.apache.calcite.rel.type.RelDataType,boolean)">convert</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;castRowType,
boolean&nbsp;rename)</code></th>
<td class="colLast">
<div class="block">Creates a projection that converts the current relational expression's
output to a desired row type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../tools/PigRelBuilder.html" title="class in org.apache.calcite.tools">PigRelBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">PigRelBuilder.</span><code><span class="memberNameLink"><a href="../../../tools/PigRelBuilder.html#load(java.lang.String,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType)">load</a></span>&#8203;(java.lang.String&nbsp;path,
<a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;loadFunction,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Loads a data set.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelBuilder.</span><code><span class="memberNameLink"><a href="../../../tools/RelBuilder.html#patternField(java.lang.String,org.apache.calcite.rel.type.RelDataType,int)">patternField</a></span>&#8203;(java.lang.String&nbsp;alpha,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type,
int&nbsp;i)</code></th>
<td class="colLast">
<div class="block">Creates a reference to a given field of the pattern.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelBuilder.</span><code><span class="memberNameLink"><a href="../../../tools/RelBuilder.html#transientScan(java.lang.String,org.apache.calcite.rel.type.RelDataType)">transientScan</a></span>&#8203;(java.lang.String&nbsp;tableName,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a <a href="../../core/TableScan.html" title="class in org.apache.calcite.rel.core"><code>TableScan</code></a> on a <a href="../../../schema/TransientTable.html" title="interface in org.apache.calcite.schema"><code>TransientTable</code></a> with the given name and type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelBuilder.</span><code><span class="memberNameLink"><a href="../../../tools/RelBuilder.html#values(java.lang.Iterable,org.apache.calcite.rel.type.RelDataType)">values</a></span>&#8203;(java.lang.Iterable&lt;? extends java.util.List&lt;<a href="../../../rex/RexLiteral.html" title="class in org.apache.calcite.rex">RexLiteral</a>&gt;&gt;&nbsp;tupleList,
<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a <a href="../../core/Values.html" title="class in org.apache.calcite.rel.core"><code>Values</code></a> with a specified row type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelBuilder.</span><code><span class="memberNameLink"><a href="../../../tools/RelBuilder.html#values(org.apache.calcite.rel.type.RelDataType)">values</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType)</code></th>
<td class="colLast">
<div class="block">Creates a <a href="../../core/Values.html" title="class in org.apache.calcite.rel.core"><code>Values</code></a> with a specified row type and
zero rows.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../tools/RelBuilder.html" title="class in org.apache.calcite.tools">RelBuilder</a></code></td>
<th class="colSecond" scope="row"><span class="typeNameLabel">RelBuilder.</span><code><span class="memberNameLink"><a href="../../../tools/RelBuilder.html#values(org.apache.calcite.rel.type.RelDataType,java.lang.Object...)">values</a></span>&#8203;(<a href="../RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;rowType,
java.lang.Object...&nbsp;columnValues)</code></th>
<td class="colLast">
<div class="block">Creates a <a href="../../core/Values.html" title="class in org.apache.calcite.rel.core"><code>Values</code></a> with a specified row type.</div>
</td>
</tr>
</tbody>
</table>
</section>
</li>
</ul>
</li>
</ul>
</div>
</main>
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../RelDataType.html" title="interface in org.apache.calcite.rel.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>