blob: 07ddcd468a999972640ed69534c1f815c76ec78d [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>SqlCastFunction (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="SqlCastFunction (Apache Calcite calcite API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":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/fun/SqlCaseOperator.html" title="org.apache.calcite.sql.fun中的类"><span class="typeNameLink">上一个类</span></a></li>
<li><a href="../../../../../org/apache/calcite/sql/fun/SqlCoalesceFunction.html" title="org.apache.calcite.sql.fun中的类"><span class="typeNameLink">下一个类</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/calcite/sql/fun/SqlCastFunction.html" target="_top">框架</a></li>
<li><a href="SqlCastFunction.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><a href="#fields.inherited.from.class.org.apache.calcite.sql.SqlOperator">字段</a>&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.fun</div>
<h2 title="类 SqlCastFunction" class="title">类 SqlCastFunction</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/SqlOperator.html" title="org.apache.calcite.sql中的类">org.apache.calcite.sql.SqlOperator</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/calcite/sql/SqlFunction.html" title="org.apache.calcite.sql中的类">org.apache.calcite.sql.SqlFunction</a></li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.sql.fun.SqlCastFunction</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">SqlCastFunction</span>
extends <a href="../../../../../org/apache/calcite/sql/SqlFunction.html" title="org.apache.calcite.sql中的类">SqlFunction</a></pre>
<div class="block">SqlCastFunction. Note that the std functions are really singleton objects,
because they always get fetched via the StdOperatorTable. So you can't store
any local info in the class and hence the return type data is maintained in
operand[1] through the validation phase.
<p>Can be used for both <a href="../../../../../org/apache/calcite/sql/SqlCall.html" title="org.apache.calcite.sql中的类"><code>SqlCall</code></a> and
<a href="../../../../../org/apache/calcite/rex/RexCall.html" title="org.apache.calcite.rex中的类"><code>RexCall</code></a>.
Note that the <code>SqlCall</code> has two operands (expression and type),
while the <code>RexCall</code> has one operand (expression) and the type is
obtained from <a href="../../../../../org/apache/calcite/rex/RexNode.html#getType--"><code>RexNode.getType()</code></a>.</div>
<dl>
<dt><span class="seeLabel">另请参阅:</span></dt>
<dd><code>SqlCastOperator</code></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>字段概要</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.calcite.sql.SqlOperator">
<!-- -->
</a>
<h3>从类继承的字段&nbsp;org.apache.calcite.sql.<a href="../../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a></h3>
<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#kind">kind</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#MDX_PRECEDENCE">MDX_PRECEDENCE</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#NL">NL</a></code></li>
</ul>
</li>
</ul>
<!-- ======== 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/fun/SqlCastFunction.html#SqlCastFunction--">SqlCastFunction</a></span>()</code>&nbsp;</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>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/sql/fun/SqlCastFunction.html#checkOperandTypes-org.apache.calcite.sql.SqlCallBinding-boolean-">checkOperandTypes</a></span>(<a href="../../../../../org/apache/calcite/sql/SqlCallBinding.html" title="org.apache.calcite.sql中的类">SqlCallBinding</a>&nbsp;callBinding,
boolean&nbsp;throwOnFailure)</code>
<div class="block">Makes sure that the number and types of arguments are allowable.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/sql/validate/SqlMonotonicity.html" title="org.apache.calcite.sql.validate中的枚举">SqlMonotonicity</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/sql/fun/SqlCastFunction.html#getMonotonicity-org.apache.calcite.sql.SqlOperatorBinding-">getMonotonicity</a></span>(<a href="../../../../../org/apache/calcite/sql/SqlOperatorBinding.html" title="org.apache.calcite.sql中的类">SqlOperatorBinding</a>&nbsp;call)</code>
<div class="block">Returns whether a call to this operator is monotonic.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/sql/SqlOperandCountRange.html" title="org.apache.calcite.sql中的接口">SqlOperandCountRange</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/sql/fun/SqlCastFunction.html#getOperandCountRange--">getOperandCountRange</a></span>()</code>
<div class="block">Returns a constraint on the number of operands expected by this operator.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/sql/fun/SqlCastFunction.html#getSignatureTemplate-int-">getSignatureTemplate</a></span>(int&nbsp;operandsCount)</code>
<div class="block">Returns a template describing how the operator signature is to be built.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/sql/SqlSyntax.html" title="org.apache.calcite.sql中的枚举">SqlSyntax</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/sql/fun/SqlCastFunction.html#getSyntax--">getSyntax</a></span>()</code>
<div class="block">Returns the syntactic type of this operator, never null.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<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/fun/SqlCastFunction.html#inferReturnType-org.apache.calcite.sql.SqlOperatorBinding-">inferReturnType</a></span>(<a href="../../../../../org/apache/calcite/sql/SqlOperatorBinding.html" title="org.apache.calcite.sql中的类">SqlOperatorBinding</a>&nbsp;opBinding)</code>
<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 id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/sql/fun/SqlCastFunction.html#unparse-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlCall-int-int-">unparse</a></span>(<a href="../../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../../org/apache/calcite/sql/SqlCall.html" title="org.apache.calcite.sql中的类">SqlCall</a>&nbsp;call,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</code>
<div class="block">Writes a SQL representation of a call to this operator to a writer,
including parentheses if the operators on either side are of greater
precedence.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.calcite.sql.SqlFunction">
<!-- -->
</a>
<h3>从类继承的方法&nbsp;org.apache.calcite.sql.<a href="../../../../../org/apache/calcite/sql/SqlFunction.html" title="org.apache.calcite.sql中的类">SqlFunction</a></h3>
<code><a href="../../../../../org/apache/calcite/sql/SqlFunction.html#deriveType-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.validate.SqlValidatorScope-org.apache.calcite.sql.SqlCall-">deriveType</a>, <a href="../../../../../org/apache/calcite/sql/SqlFunction.html#getFunctionType--">getFunctionType</a>, <a href="../../../../../org/apache/calcite/sql/SqlFunction.html#getNameAsId--">getNameAsId</a>, <a href="../../../../../org/apache/calcite/sql/SqlFunction.html#getParamNames--">getParamNames</a>, <a href="../../../../../org/apache/calcite/sql/SqlFunction.html#getParamTypes--">getParamTypes</a>, <a href="../../../../../org/apache/calcite/sql/SqlFunction.html#getSqlIdentifier--">getSqlIdentifier</a>, <a href="../../../../../org/apache/calcite/sql/SqlFunction.html#isQuantifierAllowed--">isQuantifierAllowed</a>, <a href="../../../../../org/apache/calcite/sql/SqlFunction.html#validateCall-org.apache.calcite.sql.SqlCall-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.validate.SqlValidatorScope-org.apache.calcite.sql.validate.SqlValidatorScope-">validateCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlFunction.html#validateQuantifier-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.SqlCall-">validateQuantifier</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.calcite.sql.SqlOperator">
<!-- -->
</a>
<h3>从类继承的方法&nbsp;org.apache.calcite.sql.<a href="../../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a></h3>
<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#acceptCall-org.apache.calcite.sql.util.SqlVisitor-org.apache.calcite.sql.SqlCall-">acceptCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#acceptCall-org.apache.calcite.sql.util.SqlVisitor-org.apache.calcite.sql.SqlCall-boolean-org.apache.calcite.sql.util.SqlBasicVisitor.ArgHandler-">acceptCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#adjustType-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.SqlCall-org.apache.calcite.rel.type.RelDataType-">adjustType</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#allowsFraming--">allowsFraming</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#argumentMustBeScalar-int-">argumentMustBeScalar</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#checkOperandCount-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.type.SqlOperandTypeChecker-org.apache.calcite.sql.SqlCall-">checkOperandCount</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#constructArgNameList-org.apache.calcite.sql.SqlCall-">constructArgNameList</a>, <a href="../../../../../org/apache/calcite/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>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#constructOperandList-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.SqlCall-java.util.List-">constructOperandList</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#createCall-org.apache.calcite.sql.SqlLiteral-org.apache.calcite.sql.parser.SqlParserPos-org.apache.calcite.sql.SqlNode...-">createCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#createCall-org.apache.calcite.sql.SqlNodeList-">createCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#createCall-org.apache.calcite.sql.parser.SqlParserPos-java.util.List-">createCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#createCall-org.apache.calcite.sql.parser.SqlParserPos-org.apache.calcite.sql.SqlNode...-">createCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#equals-java.lang.Object-">equals</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getAllowedSignatures--">getAllowedSignatures</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getAllowedSignatures-java.lang.String-">getAllowedSignatures</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getKind--">getKind</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getLeftPrec--">getLeftPrec</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getMonotonicity-org.apache.calcite.sql.SqlCall-org.apache.calcite.sql.validate.SqlValidatorScope-">getMonotonicity</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getName--">getName</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getOperandTypeChecker--">getOperandTypeChecker</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getOperandTypeInference--">getOperandTypeInference</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getReturnTypeInference--">getReturnTypeInference</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getRightPrec--">getRightPrec</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#hashCode--">hashCode</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#inferReturnType-org.apache.calcite.rel.type.RelDataTypeFactory-java.util.List-">inferReturnType</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#isAggregator--">isAggregator</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#isDeterministic--">isDeterministic</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#isDynamicFunction--">isDynamicFunction</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#isGroup--">isGroup</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#isGroupAuxiliary--">isGroupAuxiliary</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#isName-java.lang.String-boolean-">isName</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#leftPrec-int-boolean-">leftPrec</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#preValidateCall-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.validate.SqlValidatorScope-org.apache.calcite.sql.SqlCall-">preValidateCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#requiresDecimalExpansion--">requiresDecimalExpansion</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#requiresOrder--">requiresOrder</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#requiresOver--">requiresOver</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#rewriteCall-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.SqlCall-">rewriteCall</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#rightPrec-int-boolean-">rightPrec</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#toString--">toString</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#unparseListClause-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-">unparseListClause</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#unparseListClause-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlKind-">unparseListClause</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#validateOperands-org.apache.calcite.sql.validate.SqlValidator-org.apache.calcite.sql.validate.SqlValidatorScope-org.apache.calcite.sql.SqlCall-">validateOperands</a>, <a href="../../../../../org/apache/calcite/sql/SqlOperator.html#validRexOperands-int-org.apache.calcite.util.Litmus-">validRexOperands</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#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#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#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="SqlCastFunction--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>SqlCastFunction</h4>
<pre>public&nbsp;SqlCastFunction()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>方法详细资料</h3>
<a name="inferReturnType-org.apache.calcite.sql.SqlOperatorBinding-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>inferReturnType</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&nbsp;inferReturnType(<a href="../../../../../org/apache/calcite/sql/SqlOperatorBinding.html" title="org.apache.calcite.sql中的类">SqlOperatorBinding</a>&nbsp;opBinding)</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#inferReturnType-org.apache.calcite.sql.SqlOperatorBinding-">SqlOperator</a></code></span></div>
<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.
Subclasses must either override this method or supply an instance of
<a href="../../../../../org/apache/calcite/sql/type/SqlReturnTypeInference.html" title="org.apache.calcite.sql.type中的接口"><code>SqlReturnTypeInference</code></a> to the constructor.</div>
<dl>
<dt><span class="overrideSpecifyLabel">覆盖:</span></dt>
<dd><code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#inferReturnType-org.apache.calcite.sql.SqlOperatorBinding-">inferReturnType</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a></code></dd>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>opBinding</code> - description of invocation (not necessarily a
<a href="../../../../../org/apache/calcite/sql/SqlCall.html" title="org.apache.calcite.sql中的类"><code>SqlCall</code></a>)</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>inferred return type</dd>
</dl>
</li>
</ul>
<a name="getSignatureTemplate-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSignatureTemplate</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;getSignatureTemplate(int&nbsp;operandsCount)</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getSignatureTemplate-int-">SqlOperator</a></code></span></div>
<div class="block">Returns a template describing how the operator signature is to be built.
E.g for the binary + operator the template looks like "{1} {0} {2}" {0}
is the operator, subsequent numbers are operands.</div>
<dl>
<dt><span class="overrideSpecifyLabel">覆盖:</span></dt>
<dd><code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getSignatureTemplate-int-">getSignatureTemplate</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a></code></dd>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>operandsCount</code> - is used with functions that can take a variable
number of operands</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>signature template, or null to indicate that a default template
will suffice</dd>
</dl>
</li>
</ul>
<a name="getOperandCountRange--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOperandCountRange</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/sql/SqlOperandCountRange.html" title="org.apache.calcite.sql中的接口">SqlOperandCountRange</a>&nbsp;getOperandCountRange()</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getOperandCountRange--">SqlOperator</a></code></span></div>
<div class="block">Returns a constraint on the number of operands expected by this operator.
Subclasses may override this method; when they don't, the range is
derived from the <a href="../../../../../org/apache/calcite/sql/type/SqlOperandTypeChecker.html" title="org.apache.calcite.sql.type中的接口"><code>SqlOperandTypeChecker</code></a> associated with this
operator.</div>
<dl>
<dt><span class="overrideSpecifyLabel">覆盖:</span></dt>
<dd><code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getOperandCountRange--">getOperandCountRange</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a></code></dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>acceptable range</dd>
</dl>
</li>
</ul>
<a name="checkOperandTypes-org.apache.calcite.sql.SqlCallBinding-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkOperandTypes</h4>
<pre>public&nbsp;boolean&nbsp;checkOperandTypes(<a href="../../../../../org/apache/calcite/sql/SqlCallBinding.html" title="org.apache.calcite.sql中的类">SqlCallBinding</a>&nbsp;callBinding,
boolean&nbsp;throwOnFailure)</pre>
<div class="block">Makes sure that the number and types of arguments are allowable.
Operators (such as "ROW" and "AS") which do not check their arguments can
override this method.</div>
<dl>
<dt><span class="overrideSpecifyLabel">覆盖:</span></dt>
<dd><code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#checkOperandTypes-org.apache.calcite.sql.SqlCallBinding-boolean-">checkOperandTypes</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a></code></dd>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>callBinding</code> - description of call</dd>
<dd><code>throwOnFailure</code> - whether to throw an exception if check fails
(otherwise returns false in that case)</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>whether check succeeded</dd>
</dl>
</li>
</ul>
<a name="getSyntax--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSyntax</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/sql/SqlSyntax.html" title="org.apache.calcite.sql中的枚举">SqlSyntax</a>&nbsp;getSyntax()</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getSyntax--">SqlOperator</a></code></span></div>
<div class="block">Returns the syntactic type of this operator, never null.</div>
<dl>
<dt><span class="overrideSpecifyLabel">覆盖:</span></dt>
<dd><code><a href="../../../../../org/apache/calcite/sql/SqlFunction.html#getSyntax--">getSyntax</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlFunction.html" title="org.apache.calcite.sql中的类">SqlFunction</a></code></dd>
</dl>
</li>
</ul>
<a name="unparse-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlCall-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,
<a href="../../../../../org/apache/calcite/sql/SqlCall.html" title="org.apache.calcite.sql中的类">SqlCall</a>&nbsp;call,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#unparse-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlCall-int-int-">SqlOperator</a></code></span></div>
<div class="block">Writes a SQL representation of a call to this operator to a writer,
including parentheses if the operators on either side are of greater
precedence.
<p>The default implementation of this method delegates to
<a href="../../../../../org/apache/calcite/sql/SqlSyntax.html#unparse-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlOperator-org.apache.calcite.sql.SqlCall-int-int-"><code>SqlSyntax.unparse(org.apache.calcite.sql.SqlWriter, org.apache.calcite.sql.SqlOperator, org.apache.calcite.sql.SqlCall, int, int)</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">覆盖:</span></dt>
<dd><code><a href="../../../../../org/apache/calcite/sql/SqlFunction.html#unparse-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlCall-int-int-">unparse</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlFunction.html" title="org.apache.calcite.sql中的类">SqlFunction</a></code></dd>
</dl>
</li>
</ul>
<a name="getMonotonicity-org.apache.calcite.sql.SqlOperatorBinding-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getMonotonicity</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/sql/validate/SqlMonotonicity.html" title="org.apache.calcite.sql.validate中的枚举">SqlMonotonicity</a>&nbsp;getMonotonicity(<a href="../../../../../org/apache/calcite/sql/SqlOperatorBinding.html" title="org.apache.calcite.sql中的类">SqlOperatorBinding</a>&nbsp;call)</pre>
<div class="block"><span class="descfrmTypeLabel">从类复制的说明:&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getMonotonicity-org.apache.calcite.sql.SqlOperatorBinding-">SqlOperator</a></code></span></div>
<div class="block">Returns whether a call to this operator is monotonic.
<p>Default implementation returns <a href="../../../../../org/apache/calcite/sql/validate/SqlMonotonicity.html#NOT_MONOTONIC"><code>SqlMonotonicity.NOT_MONOTONIC</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">覆盖:</span></dt>
<dd><code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html#getMonotonicity-org.apache.calcite.sql.SqlOperatorBinding-">getMonotonicity</a></code>&nbsp;在类中&nbsp;<code><a href="../../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a></code></dd>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>call</code> - Call to this operator with particular arguments and information
about the monotonicity of the arguments</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/fun/SqlCaseOperator.html" title="org.apache.calcite.sql.fun中的类"><span class="typeNameLink">上一个类</span></a></li>
<li><a href="../../../../../org/apache/calcite/sql/fun/SqlCoalesceFunction.html" title="org.apache.calcite.sql.fun中的类"><span class="typeNameLink">下一个类</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/calcite/sql/fun/SqlCastFunction.html" target="_top">框架</a></li>
<li><a href="SqlCastFunction.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><a href="#fields.inherited.from.class.org.apache.calcite.sql.SqlOperator">字段</a>&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>