blob: 60f954a532a3b48126f595f0aaba75ab2f15b8dc [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="zh">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>SqlCollectionTypeNameSpec (Apache Calcite calcite API)</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="SqlCollectionTypeNameSpec (Apache Calcite calcite API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
var tabs = {65535:["t0","所有方法"],2:["t2","实例方法"],8:["t4","具体方法"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>您的浏览器已禁用 JavaScript。</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="跳过导航链接">跳过导航链接</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="导航">
<li><a href="../../../../overview-summary.html">概览</a></li>
<li><a href="package-summary.html">程序包</a></li>
<li class="navBarCell1Rev"></li>
<li><a href="package-tree.html"></a></li>
<li><a href="../../../../deprecated-list.html">已过时</a></li>
<li><a href="../../../../index-all.html">索引</a></li>
<li><a href="../../../../help-doc.html">帮助</a></li>
</ul>
<div class="aboutLanguage"><b>Apache Calcite</b></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/calcite/sql/SqlCollation.Coercibility.html" title="org.apache.calcite.sql中的枚举"><span class="typeNameLink">上一个类</span></a></li>
<li><a href="../../../../org/apache/calcite/sql/SqlCreate.html" title="org.apache.calcite.sql中的类"><span class="typeNameLink">下一个类</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/calcite/sql/SqlCollectionTypeNameSpec.html" target="_top">框架</a></li>
<li><a href="SqlCollectionTypeNameSpec.html" target="_top">无框架</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">所有类</a></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>
</div>
<div>
<ul class="subNavList">
<li>概要:&nbsp;</li>
<li>嵌套&nbsp;|&nbsp;</li>
<li>字段&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">构造器</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">方法</a></li>
</ul>
<ul class="subNavList">
<li>详细资料:&nbsp;</li>
<li>字段&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">构造器</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">方法</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.calcite.sql</div>
<h2 title="类 SqlCollectionTypeNameSpec" class="title">类 SqlCollectionTypeNameSpec</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="java.lang中的类或接口">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">org.apache.calcite.sql.SqlTypeNameSpec</a></li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.sql.SqlCollectionTypeNameSpec</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">SqlCollectionTypeNameSpec</span>
extends <a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a></pre>
<div class="block">A sql type name specification of collection type.
<p>The grammar definition in SQL-2011 IWD 9075-2:201?(E)
6.1 &lt;collection type&gt; is as following:
<blockquote><pre>
&lt;collection type&gt; ::=
&lt;array type&gt;
| &lt;multiset type&gt;
&lt;array type&gt; ::=
&lt;data type&gt; ARRAY
[ &lt;left bracket or trigraph&gt;
&lt;maximum cardinality&gt;
&lt;right bracket or trigraph&gt; ]
&lt;maximum cardinality&gt; ::=
&lt;unsigned integer&gt;
&lt;multiset type&gt; ::=
&lt;data type&gt; MULTISET
</pre></blockquote>
<p>This class is intended to describe SQL collection type. It can describe
either simple collection type like "int array" or nested collection type like
"int array array" or "int array multiset". For nested collection type, the element type
name of this <code>SqlCollectionTypeNameSpec</code> is also a <code>SqlCollectionTypeNameSpec</code>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>构造器概要</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="构造器概要表, 列表构造器和解释">
<caption><span>构造器</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">构造器和说明</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlCollectionTypeNameSpec.html#SqlCollectionTypeNameSpec-org.apache.calcite.sql.SqlTypeNameSpec-org.apache.calcite.sql.type.SqlTypeName-org.apache.calcite.sql.parser.SqlParserPos-">SqlCollectionTypeNameSpec</a></span>(<a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a>&nbsp;elementTypeName,
<a href="../../../../org/apache/calcite/sql/type/SqlTypeName.html" title="org.apache.calcite.sql.type中的枚举">SqlTypeName</a>&nbsp;collectionTypeName,
<a href="../../../../org/apache/calcite/sql/parser/SqlParserPos.html" title="org.apache.calcite.sql.parser中的类">SqlParserPos</a>&nbsp;pos)</code>
<div class="block">Creates a <code>SqlCollectionTypeNameSpec</code>.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>方法概要</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="方法概要表, 列表方法和解释">
<caption><span id="t0" class="activeTableTab"><span>所有方法</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">实例方法</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">具体方法</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">限定符和类型</th>
<th class="colLast" scope="col">方法和说明</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlCollectionTypeNameSpec.html#deriveType-org.apache.calcite.sql.validate.SqlValidator-">deriveType</a></span>(<a href="../../../../org/apache/calcite/sql/validate/SqlValidator.html" title="org.apache.calcite.sql.validate中的接口">SqlValidator</a>&nbsp;validator)</code>
<div class="block">Derive type from this SqlTypeNameSpec.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlCollectionTypeNameSpec.html#equalsDeep-org.apache.calcite.sql.SqlTypeNameSpec-org.apache.calcite.util.Litmus-">equalsDeep</a></span>(<a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a>&nbsp;spec,
<a href="../../../../org/apache/calcite/util/Litmus.html" title="org.apache.calcite.util中的接口">Litmus</a>&nbsp;litmus)</code>
<div class="block">Returns whether this spec is structurally equivalent to another spec.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlCollectionTypeNameSpec.html#getElementTypeName--">getElementTypeName</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlCollectionTypeNameSpec.html#unparse-org.apache.calcite.sql.SqlWriter-int-int-">unparse</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</code>
<div class="block">Writes a SQL representation of this spec to a writer.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.calcite.sql.SqlTypeNameSpec">
<!-- -->
</a>
<h3>从类继承的方法&nbsp;org.apache.calcite.sql.<a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a></h3>
<code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html#getParserPos--">getParserPos</a>, <a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html#getTypeName--">getTypeName</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>从类继承的方法&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="java.lang中的类或接口">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="java.lang中的类或接口">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="java.lang中的类或接口">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="java.lang中的类或接口">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="java.lang中的类或接口">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="java.lang中的类或接口">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="java.lang中的类或接口">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="java.lang中的类或接口">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="java.lang中的类或接口">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="java.lang中的类或接口">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="java.lang中的类或接口">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="java.lang中的类或接口">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>构造器详细资料</h3>
<a name="SqlCollectionTypeNameSpec-org.apache.calcite.sql.SqlTypeNameSpec-org.apache.calcite.sql.type.SqlTypeName-org.apache.calcite.sql.parser.SqlParserPos-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>SqlCollectionTypeNameSpec</h4>
<pre>public&nbsp;SqlCollectionTypeNameSpec(<a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a>&nbsp;elementTypeName,
<a href="../../../../org/apache/calcite/sql/type/SqlTypeName.html" title="org.apache.calcite.sql.type中的枚举">SqlTypeName</a>&nbsp;collectionTypeName,
<a href="../../../../org/apache/calcite/sql/parser/SqlParserPos.html" title="org.apache.calcite.sql.parser中的类">SqlParserPos</a>&nbsp;pos)</pre>
<div class="block">Creates a <code>SqlCollectionTypeNameSpec</code>.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>elementTypeName</code> - Type of the collection element</dd>
<dd><code>collectionTypeName</code> - Collection type name</dd>
<dd><code>pos</code> - Parser position, must not be null</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>方法详细资料</h3>
<a name="getElementTypeName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getElementTypeName</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a>&nbsp;getElementTypeName()</pre>
</li>
</ul>
<a name="deriveType-org.apache.calcite.sql.validate.SqlValidator-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deriveType</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&nbsp;deriveType(<a href="../../../../org/apache/calcite/sql/validate/SqlValidator.html" title="org.apache.calcite.sql.validate中的接口">SqlValidator</a>&nbsp;validator)</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html#deriveType-org.apache.calcite.sql.validate.SqlValidator-">SqlTypeNameSpec</a></code></span></div>
<div class="block">Derive type from this SqlTypeNameSpec.</div>
<dl>
<dt><span class="overrideSpecifyLabel">指定者:</span></dt>
<dd><code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html#deriveType-org.apache.calcite.sql.validate.SqlValidator-">deriveType</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a></code></dd>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>validator</code> - The sql validator</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>the <code>RelDataType</code> instance, throws exception if we could not
deduce the type</dd>
</dl>
</li>
</ul>
<a name="unparse-org.apache.calcite.sql.SqlWriter-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparse</h4>
<pre>public&nbsp;void&nbsp;unparse(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html#unparse-org.apache.calcite.sql.SqlWriter-int-int-">SqlTypeNameSpec</a></code></span></div>
<div class="block">Writes a SQL representation of this spec to a writer.</div>
<dl>
<dt><span class="overrideSpecifyLabel">指定者:</span></dt>
<dd><code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html#unparse-org.apache.calcite.sql.SqlWriter-int-int-">unparse</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a></code></dd>
</dl>
</li>
</ul>
<a name="equalsDeep-org.apache.calcite.sql.SqlTypeNameSpec-org.apache.calcite.util.Litmus-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>equalsDeep</h4>
<pre>public&nbsp;boolean&nbsp;equalsDeep(<a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a>&nbsp;spec,
<a href="../../../../org/apache/calcite/util/Litmus.html" title="org.apache.calcite.util中的接口">Litmus</a>&nbsp;litmus)</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html#equalsDeep-org.apache.calcite.sql.SqlTypeNameSpec-org.apache.calcite.util.Litmus-">SqlTypeNameSpec</a></code></span></div>
<div class="block">Returns whether this spec is structurally equivalent to another spec.</div>
<dl>
<dt><span class="overrideSpecifyLabel">指定者:</span></dt>
<dd><code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html#equalsDeep-org.apache.calcite.sql.SqlTypeNameSpec-org.apache.calcite.util.Litmus-">equalsDeep</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../org/apache/calcite/sql/SqlTypeNameSpec.html" title="org.apache.calcite.sql中的类">SqlTypeNameSpec</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="跳过导航链接">跳过导航链接</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="导航">
<li><a href="../../../../overview-summary.html">概览</a></li>
<li><a href="package-summary.html">程序包</a></li>
<li class="navBarCell1Rev"></li>
<li><a href="package-tree.html"></a></li>
<li><a href="../../../../deprecated-list.html">已过时</a></li>
<li><a href="../../../../index-all.html">索引</a></li>
<li><a href="../../../../help-doc.html">帮助</a></li>
</ul>
<div class="aboutLanguage"><b>Apache Calcite</b></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/calcite/sql/SqlCollation.Coercibility.html" title="org.apache.calcite.sql中的枚举"><span class="typeNameLink">上一个类</span></a></li>
<li><a href="../../../../org/apache/calcite/sql/SqlCreate.html" title="org.apache.calcite.sql中的类"><span class="typeNameLink">下一个类</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/calcite/sql/SqlCollectionTypeNameSpec.html" target="_top">框架</a></li>
<li><a href="SqlCollectionTypeNameSpec.html" target="_top">无框架</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">所有类</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>
</div>
<div>
<ul class="subNavList">
<li>概要:&nbsp;</li>
<li>嵌套&nbsp;|&nbsp;</li>
<li>字段&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">构造器</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">方法</a></li>
</ul>
<ul class="subNavList">
<li>详细资料:&nbsp;</li>
<li>字段&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">构造器</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">方法</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &copy; 2012-2020 Apache Software Foundation. All Rights Reserved.</small></p>
</body>
</html>