blob: 78f846ed4b303a14ef2a7873eb87e5fc0400b780 [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>SqlTypeFamily (Apache Calcite API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.calcite.sql.type, enum: SqlTypeFamily">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<div class="about-language"><b>Apache Calcite</b></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li><a href="#nested-class-summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#enum-constant-summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#enum-constant-detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.calcite.sql.type</a></div>
<h1 title="Enum SqlTypeFamily" class="title">Enum SqlTypeFamily</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">java.lang.Enum</a>&lt;<a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&gt;
<div class="inheritance">org.apache.calcite.sql.type.SqlTypeFamily</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code>, <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a>&lt;<a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&gt;</code>, <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/constant/Constable.html" title="class or interface in java.lang.constant" class="external-link">Constable</a></code>, <code><a href="../../rel/type/RelDataTypeFamily.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFamily</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public enum </span><span class="element-name type-name-label">SqlTypeFamily</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a>&lt;<a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&gt;
implements <a href="../../rel/type/RelDataTypeFamily.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFamily</a></span></div>
<div class="block">SqlTypeFamily provides SQL type categorization.
<p>The <em>primary</em> family categorization is a complete disjoint
partitioning of SQL types into families, where two types are members of the
same primary family iff instances of the two types can be the operands of an
SQL equality predicate such as <code>WHERE v1 = v2</code>. Primary families
are returned by RelDataType.getFamily().
<p>There is also a <em>secondary</em> family categorization which overlaps
with the primary categorization. It is used in type strategies for more
specific or more general categorization than the primary families. Secondary
families are never returned by RelDataType.getFamily().</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<li>
<section class="nested-class-summary" id="nested-class-summary">
<h2>Nested Class Summary</h2>
<div class="inherited-list">
<h2 id="nested-classes-inherited-from-class-java.lang.Enum">Nested classes/interfaces inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a></h2>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">Enum.EnumDesc</a>&lt;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">E</a> extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a>&lt;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">E</a>&gt;&gt;</code></div>
</section>
</li>
<!-- =========== ENUM CONSTANT SUMMARY =========== -->
<li>
<section class="constants-summary" id="enum-constant-summary">
<h2>Enum Constant Summary</h2>
<div class="caption"><span>Enum Constants</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Enum Constant</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code><a href="#ANY" class="member-name-link">ANY</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#APPROXIMATE_NUMERIC" class="member-name-link">APPROXIMATE_NUMERIC</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#ARRAY" class="member-name-link">ARRAY</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#BINARY" class="member-name-link">BINARY</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#BOOLEAN" class="member-name-link">BOOLEAN</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#CHARACTER" class="member-name-link">CHARACTER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#COLUMN_LIST" class="member-name-link">COLUMN_LIST</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#CURSOR" class="member-name-link">CURSOR</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#DATE" class="member-name-link">DATE</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#DATETIME" class="member-name-link">DATETIME</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#DATETIME_INTERVAL" class="member-name-link">DATETIME_INTERVAL</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#DECIMAL" class="member-name-link">DECIMAL</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#EXACT_NUMERIC" class="member-name-link">EXACT_NUMERIC</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#GEO" class="member-name-link">GEO</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#IGNORE" class="member-name-link">IGNORE</a></code></div>
<div class="col-last even-row-color">
<div class="block">Like ANY, but do not even validate the operand.</div>
</div>
<div class="col-first odd-row-color"><code><a href="#INTEGER" class="member-name-link">INTEGER</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#INTERVAL_DAY_TIME" class="member-name-link">INTERVAL_DAY_TIME</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#INTERVAL_YEAR_MONTH" class="member-name-link">INTERVAL_YEAR_MONTH</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#MAP" class="member-name-link">MAP</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#MULTISET" class="member-name-link">MULTISET</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#NULL" class="member-name-link">NULL</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#NUMERIC" class="member-name-link">NUMERIC</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#STRING" class="member-name-link">STRING</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code><a href="#TIME" class="member-name-link">TIME</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code><a href="#TIMESTAMP" class="member-name-link">TIMESTAMP</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#allowableDifferenceTypes()" class="member-name-link">allowableDifferenceTypes</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">For this type family, returns the allow types of the difference between
two values of this family.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#contains(org.apache.calcite.rel.type.RelDataType)" class="member-name-link">contains</a><wbr>(<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDefaultConcreteType(org.apache.calcite.rel.type.RelDataTypeFactory)" class="member-name-link">getDefaultConcreteType</a><wbr>(<a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;factory)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Return the default <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a> that belongs to this family.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static @Nullable <a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getFamilyForJdbcType(int)" class="member-name-link">getFamilyForJdbcType</a><wbr>(int&nbsp;jdbcType)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Gets the primary family containing a JDBC type.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Collection.html" title="class or interface in java.util" class="external-link">Collection</a>&lt;<a href="SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTypeNames()" class="member-name-link">getTypeNames</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the collection of <a href="SqlTypeName.html" title="enum in org.apache.calcite.sql.type"><code>SqlTypeName</code></a>s included in this family.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#valueOf(java.lang.String)" class="member-name-link">valueOf</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns the enum constant of this type with the specified name.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>[]</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#values()" class="member-name-link">values</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Enum">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#compareTo(E)" title="class or interface in java.lang" class="external-link">compareTo</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#describeConstable()" title="class or interface in java.lang" class="external-link">describeConstable</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#getDeclaringClass()" title="class or interface in java.lang" class="external-link">getDeclaringClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#name()" title="class or interface in java.lang" class="external-link">name</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#ordinal()" title="class or interface in java.lang" class="external-link">ordinal</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Enum.html#valueOf(java.lang.Class,java.lang.String)" title="class or interface in java.lang" class="external-link">valueOf</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ ENUM CONSTANT DETAIL =========== -->
<li>
<section class="constant-details" id="enum-constant-detail">
<h2>Enum Constant Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="CHARACTER">
<h3>CHARACTER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">CHARACTER</span></div>
</section>
</li>
<li>
<section class="detail" id="BINARY">
<h3>BINARY</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">BINARY</span></div>
</section>
</li>
<li>
<section class="detail" id="NUMERIC">
<h3>NUMERIC</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">NUMERIC</span></div>
</section>
</li>
<li>
<section class="detail" id="DATE">
<h3>DATE</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">DATE</span></div>
</section>
</li>
<li>
<section class="detail" id="TIME">
<h3>TIME</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">TIME</span></div>
</section>
</li>
<li>
<section class="detail" id="TIMESTAMP">
<h3>TIMESTAMP</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">TIMESTAMP</span></div>
</section>
</li>
<li>
<section class="detail" id="BOOLEAN">
<h3>BOOLEAN</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">BOOLEAN</span></div>
</section>
</li>
<li>
<section class="detail" id="INTERVAL_YEAR_MONTH">
<h3>INTERVAL_YEAR_MONTH</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">INTERVAL_YEAR_MONTH</span></div>
</section>
</li>
<li>
<section class="detail" id="INTERVAL_DAY_TIME">
<h3>INTERVAL_DAY_TIME</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">INTERVAL_DAY_TIME</span></div>
</section>
</li>
<li>
<section class="detail" id="STRING">
<h3>STRING</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">STRING</span></div>
</section>
</li>
<li>
<section class="detail" id="APPROXIMATE_NUMERIC">
<h3>APPROXIMATE_NUMERIC</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">APPROXIMATE_NUMERIC</span></div>
</section>
</li>
<li>
<section class="detail" id="EXACT_NUMERIC">
<h3>EXACT_NUMERIC</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">EXACT_NUMERIC</span></div>
</section>
</li>
<li>
<section class="detail" id="DECIMAL">
<h3>DECIMAL</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">DECIMAL</span></div>
</section>
</li>
<li>
<section class="detail" id="INTEGER">
<h3>INTEGER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">INTEGER</span></div>
</section>
</li>
<li>
<section class="detail" id="DATETIME">
<h3>DATETIME</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">DATETIME</span></div>
</section>
</li>
<li>
<section class="detail" id="DATETIME_INTERVAL">
<h3>DATETIME_INTERVAL</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">DATETIME_INTERVAL</span></div>
</section>
</li>
<li>
<section class="detail" id="MULTISET">
<h3>MULTISET</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">MULTISET</span></div>
</section>
</li>
<li>
<section class="detail" id="ARRAY">
<h3>ARRAY</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">ARRAY</span></div>
</section>
</li>
<li>
<section class="detail" id="MAP">
<h3>MAP</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">MAP</span></div>
</section>
</li>
<li>
<section class="detail" id="NULL">
<h3>NULL</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">NULL</span></div>
</section>
</li>
<li>
<section class="detail" id="ANY">
<h3>ANY</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">ANY</span></div>
</section>
</li>
<li>
<section class="detail" id="CURSOR">
<h3>CURSOR</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">CURSOR</span></div>
</section>
</li>
<li>
<section class="detail" id="COLUMN_LIST">
<h3>COLUMN_LIST</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">COLUMN_LIST</span></div>
</section>
</li>
<li>
<section class="detail" id="GEO">
<h3>GEO</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">GEO</span></div>
</section>
</li>
<li>
<section class="detail" id="IGNORE">
<h3>IGNORE</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">IGNORE</span></div>
<div class="block">Like ANY, but do not even validate the operand. It may not be an
expression.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="values()">
<h3>values</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>[]</span>&nbsp;<span class="element-name">values</span>()</div>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>an array containing the constants of this enum type, in the order they are declared</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="valueOf(java.lang.String)">
<h3>valueOf</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">valueOf</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</span></div>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt>Returns:</dt>
<dd>the enum constant with the specified name</dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a></code> - if the argument is null</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFamilyForJdbcType(int)">
<h3>getFamilyForJdbcType</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">@Nullable <a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a></span>&nbsp;<span class="element-name">getFamilyForJdbcType</span><wbr><span class="parameters">(int&nbsp;jdbcType)</span></div>
<div class="block">Gets the primary family containing a JDBC type.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>jdbcType</code> - the JDBC type of interest</dd>
<dt>Returns:</dt>
<dd>containing family</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="allowableDifferenceTypes()">
<h3>allowableDifferenceTypes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="SqlTypeFamily.html" title="enum in org.apache.calcite.sql.type">SqlTypeFamily</a>&gt;</span>&nbsp;<span class="element-name">allowableDifferenceTypes</span>()</div>
<div class="block">For this type family, returns the allow types of the difference between
two values of this family.
<p>Equivalently, given an <code>ORDER BY</code> expression with one key,
returns the allowable type families of the difference between two keys.
<p>Example 1. For <code>ORDER BY empno</code>, a NUMERIC, the difference
between two <code>empno</code> values is also NUMERIC.
<p>Example 2. For <code>ORDER BY hireDate</code>, a DATE, the difference
between two <code>hireDate</code> values might be an INTERVAL_DAY_TIME
or INTERVAL_YEAR_MONTH.
<p>The result determines whether a <a href="../SqlWindow.html" title="class in org.apache.calcite.sql"><code>SqlWindow</code></a> with a <code>RANGE</code>
is valid (for example, <code>OVER (ORDER BY empno RANGE 10</code> is valid
because <code>10</code> is numeric);
and whether a call to
<a href="../fun/SqlStdOperatorTable.html#PERCENTILE_CONT"><code>PERCENTILE_CONT</code></a>
is valid (for example, <code>PERCENTILE_CONT(0.25)</code> ORDER BY (hireDate)}
is valid because <code>hireDate</code> values may be interpolated by adding
values of type <code>INTERVAL_DAY_TIME</code>.</div>
</section>
</li>
<li>
<section class="detail" id="getTypeNames()">
<h3>getTypeNames</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Collection.html" title="class or interface in java.util" class="external-link">Collection</a>&lt;<a href="SqlTypeName.html" title="enum in org.apache.calcite.sql.type">SqlTypeName</a>&gt;</span>&nbsp;<span class="element-name">getTypeNames</span>()</div>
<div class="block">Returns the collection of <a href="SqlTypeName.html" title="enum in org.apache.calcite.sql.type"><code>SqlTypeName</code></a>s included in this family.</div>
</section>
</li>
<li>
<section class="detail" id="getDefaultConcreteType(org.apache.calcite.rel.type.RelDataTypeFactory)">
<h3>getDefaultConcreteType</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">@Nullable <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span>&nbsp;<span class="element-name">getDefaultConcreteType</span><wbr><span class="parameters">(<a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a>&nbsp;factory)</span></div>
<div class="block">Return the default <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a> that belongs to this family.</div>
</section>
</li>
<li>
<section class="detail" id="contains(org.apache.calcite.rel.type.RelDataType)">
<h3>contains</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">contains</span><wbr><span class="parameters">(<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>&nbsp;type)</span></div>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &copy; 2012-2023 Apache Software Foundation. All Rights Reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>